How to Create Auto Scaling in AWS

AWS Auto Scaling Group, How to create and configure it?

The creation of an AWS AutoScaling Group is just the final step to accomplish the creation and configuration of a High-Performance WordPress with AutoScaling. This blog post will help you create Auto Scaling in AWS, a collection of Amazon Ec2 instances with similar characteristics among them in just a group. These instances are treated as a logical group for purposes of scaling and management.

Keep in mind that this is the 6th, and final, Part of the sequence How to create a High-Performance WordPress with Autoscaling on AWS.

Requirements:

  • Account in AWS

Step by step on How to Create Auto Scaling in AWS

  1. Log in to the AWS account, it is recommended with a user with certain permissions, not with root user. Use the user’s access link (for example, https://xxxxxxxxxxxx.signin.aws.amazon.com/console).
step 1 of create auto scaling in aws: aws account

*Note: The account should be self-completed with a 12-digit number, change your username and password.

  1. Verify the region in which the infrastructure will be created. In the upper right corner, click on the button with the city name and choose the region, in this case, it will be Virginia.
step 2 of create auto scaling in aws: choose city and region

3. Select the EC2 service.

step 3 of create auto scaling in aws: :EC2 service

4. First, you must create an image of the instance (AMI), select “Instances”.

step 4 of create auto scaling in aws: instances

5. Select the instance.

step 5:of create auto scaling in aws: select the instance

6. Press “Actions”> “Image”> “Create Image”.

step 6 of create auto scaling in aws: create images

7. Assign a name to the AMI, description and activate the option “No reboot”, the latter to prevent the instance from restarting when creating the AMI.

step 7 of create auto scaling in aws: AMI name

8. Verify that the AMI has been created successfully, select “AMIs” from the side menu.

step 8 of create auto scaling in aws: AMIs

9. Check that the “Status” is “available”.

step 9 of create auto scaling in aws: status available

10. The next step is to create the Auto Scaling Group; select “Launch Configurations” from the side menu.

step 10 of create auto scaling in aws: launch configurations

11. Click on “Create AWS Auto Scaling Group”.

step 11 of create auto scaling in aws: create aws auto scaling group

12. Press “Create Launch Configuration”.

step 12 of create auto scaling in aws: create launch configuration

13. Select “My AMIs” and the previously created AMI.

step 13 of create auto scaling in aws: my AMIs

14. Select the type of instance desired for the slave instances (slaves) created by the Auto Scaling Group and press “Next: Configure details”.

step 14 of create auto scaling in aws: configure details

15. Assign a name to the launch configuration (Launch configuration).

step 15 of create auto scaling in aws: launch configuration

16. In advanced details, in the “User data” section write the commands to mount the EFS and select the option where no public IP is assigned to any instance. Finally press “Next: Add Storage”.

step 16 of create auto scaling in aws: add storage

*Note: The MOUNT command is the same that AWS provided when mounting the EFS on the master instance, be sure to mount the desired one.

  1. The volume (disk) that will be assigned to the instances created by the Auto Scaling group will have a copy of the volume of the master instance. Press “Next: Configure Security group”.
step 17 of create auto scaling in aws: Configure Security group

18. Select the option “Select an existing security group” to assign the same Security Group of the master instance, in this case, it will be sg-78920606.

Select an existing security group

19. Check that the settings are correct and create the launch configuration by pressing “Create launch configuration”.

Create launch configuration

*Note: The warning is caused by the Security Groups because it can ensure even more to the instances and infrastructure in general, but taking this tutorial as a basic one can be advanced in this way.

  1. Choose an existing key and accept that you have access to it; create the launch configuration.
create the launch configuration

The next thing is to configure the AWS Auto Scaling group; Name the group of instances, determine the number of instances with which it will start, select the VPC and the private subnet, you must also specify that the traffic will come from a Load Balancer so that the “slave” instances are automatically added to it. Press “Next: Configure scaling policies.”

Configure scaling policies

22. Adjust group policies.

  1. Determine the maximum number of possible instances in the group.
Adjust group policies

2. Add a new alarm for the increase of instances:

Create a topic (topic) to which name is assigned and emails to which they will be notified (if they are two or more, separate them with commas), establish the maximum percentage in a period of time, name the alarm and create it.

create alarm

3. In “Take the action” we establish that it increases the number of instances by 1 in 1.

Take the action

4. Add a new alarm for the decrement of instances:

Create a topic (topic) to which name is assigned and emails to which they will be notified (if they are two or more, separate them with commas), establish the minimum percentage in a period of time, name the alarm and create it.

create alarm 1

*Note: Change the “> =” (greater or equal) by a “<=” (less or equal) in the alarm to decrease the number of instances.

5. In “Take the action” we establish that the number of instances should decrease from 1 to 1; press “Next: Configure Notifications”.

Configure Notifications

23. If you want to receive notifications when an instance is created or deleted, add a notification. On this occasion, you will not configure an extra alarm. Press “Next: Configure Tags”.

Configure Tags

24. Optionally you can add a name to the Auto Scaling group, as shown in the following screenshot.

Auto Scaling group name

25. Review the configuration and create the Auto Scaling group.

create the Auto Scaling group

26. In a few minutes, you can see in “Instances” the instance that is created automatically.

Instances

*Note: Wait until your state is “running”.

Conclusion

Those are all the steps that you need to follow to create an AWS AutoScaling Group. The creation of an AutoScaling Group was the final step to accomplish a High-Performance and Auto scalable WordPress. Do not forget to see the complete process of How to create a high-performance and Auto-scalable WordPress, and the other previous tutorials we have prepared for you (IIIIIIIVV).

Hire AWS services at ClickIT

Create Auto Scaling in AWS FAQs

What is an AWS Auto Scaling group?

An AWS Auto Scaling group is a feature of Amazon Web Services (AWS) that automatically adjusts the number of instances in a group based on conditions you define. It helps maintain application availability and performance by dynamically scaling capacity to meet demand, while also optimizing costs by scaling down during low-demand periods.

What is the difference between AWS Auto Scaling group and ELB?

AWS Auto Scaling Group automatically adjusts the number of EC2 instances based on predefined policies or metrics to handle demand fluctuations. Elastic Load Balancing (ELB) distributes incoming traffic across multiple targets for improved availability and fault tolerance.

How does AWS Auto Scaling work?

AWS Auto Scaling automatically adjusts the number of EC2 instances in a group based on predefined policies or metrics. It monitors resource utilization and scales instances in or out to maintain performance and handle changes in demand effectively.

How to Create Auto Scaling in AWS?

To create Auto Scaling in AWS, you typically follow these steps:
1. Define a launch configuration or template specifying the instance type, AMI, and other details.
2. Create an Auto Scaling group, setting parameters such as minimum, maximum, and desired capacity and scaling policies based on metrics.
3. Configure scaling policies to define when and how the Auto Scaling group should scale in or out based on metrics like CPU utilization or custom metrics.
4. Optionally, configure notifications to receive alerts on scaling events.
5. Launch the Auto Scaling group, which will manage the EC2 instances according to your configurations and scaling policies.

Subscribe

to our newsletter

Table of Contents

We Make DevOps Easier

Weekly DevOps Newsletter

Subscribe to our DevOps News

Subscribe to a monthly newsletter to receive the IT best practices, startup-related insights & emerging technologies.

Join hundreds of business leaders and entrepreneurs, who are part of our growing tech community.

We guarantee 100% privacy. Your information will not be shared.