This pattern describes how to migrate a Java application running on an on-premises Oracle GlassFish server to AWS Elastic Beanstalk in the AWS Cloud.
On AWS, the Java application is deployed on a Docker GlassFish server with AWS Elastic Beanstalk, which runs in an Amazon Elastic Compute Cloud (Amazon EC2) Auto Scaling group.
Additional features:
Amazon Elastic Beanstalk acts as a wrapper for several underlying resources. It sets up Elastic Load Balancing (which handles incoming traffic from Amazon Route 53), disperses the traffic to one or more EC2 instances, and also serves as a deployment tool.
To migrate an on-premises database to Amazon Relational Database Service (Amazon RDS), update the database connection details. In the backend database, you can configure Amazon RDS Multi-AZ deployments and choose the database engine type.
You can use Multi-AZ deployment for high availability along with the Auto Scaling group and scaling policy to improve resiliency.
You can set up a scaling policy based on Amazon CloudWatch metrics.
In AWS Elastic Beanstalk, you can configure the underlying Elastic Load Balancing settings and Amazon EC2 Auto Scaling.