Work with burstable performance instances
The steps for launching, monitoring, and modifying these instances are similar. The key difference is the default credit specification when they launch. If you do not change the default credit specification, the default is that:
-
T3 instances launch as
unlimited
-
T2 instances launch as
standard
Contents
- Launch a burstable performance instance as Unlimited or Standard
- Use an Auto Scaling group to launch a burstable performance instance as Unlimited
- View the credit specification of a burstable performance instance
- Modify the credit specification of a burstable performance instance
- Set the default credit specification for the account
- View the default credit specification
Launch a burstable performance instance as Unlimited or Standard
You can launch your instances as unlimited
or
standard
using the Amazon EC2 console, an AWS SDK, a command line tool, or
with an Auto Scaling group. For more information, see Use an Auto Scaling group
to launch a burstable performance instance as Unlimited.
To launch a burstable performance instance as Unlimited or Standard (console)
-
Follow the Launch an instance using the Launch Instance Wizard procedure.
-
On the Choose an Instance Type page, select an instance type, and choose Next: Configure Instance Details.
-
Choose a credit specification.
-
To launch a T3 instance as
standard
, clear Unlimited. -
To launch a T2 instance as
unlimited
, select Unlimited.
-
-
Continue as prompted by the wizard. When you've finished reviewing your options on the Review Instance Launch page, choose Launch. For more information, see Launch an instance using the Launch Instance Wizard.
To launch a burstable performance instance as Unlimited or Standard (AWS CLI)
Use the run-instances command to launch your instances. Specify the
credit specification using the --credit-specification CpuCredits=
parameter. Valid credit specifications are unlimited
and
standard
.
-
For T3, if you do not include the
--credit-specification
parameter, the instance launches asunlimited
by default. -
For T2, if you do not include the
--credit-specification
parameter, the instance launches asstandard
by default.
aws ec2 run-instances --image-id
ami-abc12345
--count1
--instance-typet3.micro
--key-nameMyKeyPair
--credit-specification "CpuCredits=unlimited
"
Use an Auto Scaling group to launch a burstable performance instance as Unlimited
When burstable performance instances are launched or started, they require CPU credits
for a
good bootstrapping experience. If you use an Auto Scaling group to launch your instances,
we recommend
that you configure your instances as unlimited
. If you do, the instances use surplus
credits when they are automatically launched or restarted by the Auto Scaling group.
Using surplus credits
prevents performance restrictions.
Create a launch template
You must use a launch template for launching
instances as unlimited
in an Auto Scaling group. A launch configuration
does not support launching instances as unlimited
.
To create a launch template that launches instances as Unlimited (console)
-
Follow the Creating a Launch Template for an Auto Scaling Group procedure.
-
In Launch template contents, for Instance type, choose an instance size.
-
To launch instances as
unlimited
in an Auto Scaling group, under Advanced details, for Credit specification, choose Unlimited. -
When you've finished defining the launch template parameters, choose Create launch template. For more information, see Creating a Launch Template for an Auto Scaling Group in the Amazon EC2 Auto Scaling User Guide.
To create a launch template that launches instances as Unlimited (AWS CLI)
Use the create-launch-template command and specify unlimited
as the credit specification.
-
For T3, if you do not include the
CreditSpecification={CpuCredits=unlimited}
value, the instance launches asunlimited
by default. -
For T2, if you do not include the
CreditSpecification={CpuCredits=unlimited}
value, the instance launches asstandard
by default.
aws ec2 create-launch-template --launch-template-name
MyLaunchTemplate
--version-descriptionFirstVersion
--launch-template-data ImageId=ami-8c1be5f6
,InstanceType=t3.medium
,CreditSpecification={CpuCredits=unlimited
}
Associate an Auto Scaling group with a launch template
To associate the launch template with an Auto Scaling group, create the Auto Scaling group using the launch template, or add the launch template to an existing Auto Scaling group.
To create an Auto Scaling group using a launch template (console)
-
Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/
. -
On the navigation bar at the top of the screen, select the same Region that you used when you created the launch template.
-
In the navigation pane, choose Auto Scaling Groups, Create Auto Scaling group.
-
Choose Launch Template, select your launch template, and then choose Next Step.
-
Complete the fields for the Auto Scaling group. When you've finished reviewing your configuration settings on the Review page, choose Create Auto Scaling group. For more information, see Creating an Auto Scaling Group Using a Launch Template in the Amazon EC2 Auto Scaling User Guide.
To create an Auto Scaling group using a launch template (AWS CLI)
Use the create-auto-scaling-group AWS CLI command and specify the
--launch-template
parameter.
To add a launch template to an existing Auto Scaling group (console)
-
Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/
. -
On the navigation bar at the top of the screen, select the same Region that you used when you created the launch template.
-
In the navigation pane, choose Auto Scaling Groups.
-
From the Auto Scaling group list, select an Auto Scaling group, and choose Actions, Edit.
-
On the Details tab, for Launch Template, choose a launch template, and then choose Save.
To add a launch template to an existing Auto Scaling group (AWS CLI)
Use the update-auto-scaling-group AWS CLI command and specify the
--launch-template
parameter.
View the credit specification of a burstable performance instance
You can view the credit specification (unlimited
or
standard
) of a running or stopped instance.
To describe the credit specification of a burstable performance instance (AWS CLI)
Use the describe-instance-credit-specifications command. If you do not specify
one or more instance IDs, all instances with the credit specification of
unlimited
are returned, as well as instances that were previously
configured with the unlimited
credit specification. For
example, if you resize a T3 instance to an M4 instance, while it is configured as
unlimited
, Amazon EC2 returns the M4 instance.
aws ec2 describe-instance-credit-specifications --instance-id
i-1234567890abcdef0
The following is example output:
{
"InstanceCreditSpecifications": [
{
"InstanceId": "i-1234567890abcdef0",
"CpuCredits": "unlimited"
}
]
}
Modify the credit specification of a burstable performance instance
You can switch the credit specification of a running or stopped instance
at any time between unlimited
and standard
.
To modify the credit specification of a burstable performance instance (AWS CLI)
Use the modify-instance-credit-specification command. Specify the instance and
its credit specification using the --instance-credit-specification
parameter. Valid credit specifications are unlimited
and
standard
.
aws ec2 modify-instance-credit-specification --region
us-east-1
--instance-credit-specification "InstanceId=i-1234567890abcdef0
,CpuCredits=unlimited
"
The following is example output:
{
"SuccessfulInstanceCreditSpecifications": [
{
"InstanceId": "i- 1234567890abcdef0"
}
],
"UnsuccessfulInstanceCreditSpecifications": []
}
Set the default credit specification for the account
You can set the default credit specification for each burstable performance instance family at the account level per AWS Region.
When you set the default credit specification, all Availability Zones in the Region are updated within five minutes. If instances are launched during this time, they might not get the new credit specification until the zone is updated. You can verify whether the update has occurred. For more information, see View the default credit specification.
If you use the Launch Instance Wizard in the EC2 console to launch instances, the value you select for the credit specification overrides the account-level default credit specification. If you use the AWS CLI to launch instances, all new burstable performance instances in the account launch using the default credit specification. The credit specification for existing running or stopped instances is not affected.
Consideration
The default credit specification for an instance family can be modified only once in a rolling 5-minute period, and up to four times in a rolling 24-hour period.
To set the default credit specification at the account level (console)
-
Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/
. -
On the left navigation pane, choose EC2 Dashboard.
-
From Account attributes, choose Default credit specification.
-
Choose Manage.
-
For each instance family, choose Unlimited or Standard, and then choose Update.
To set the default credit specification at the account level (AWS CLI)
Use the modify-default-credit-specification command. Specify the AWS Region,
instance family, and the default credit specification using the
--cpu-credits
parameter. Valid default credit specifications are
unlimited
and standard
.
aws ec2 modify-default-credit-specification --region
us-east-1
--instance-familyt2
--cpu-creditsunlimited
View the default credit specification
You can view the default credit specification of a burstable performance instance family at the account level per AWS Region.
To view the default credit specification at the account level (console)
-
Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/
. -
On the left navigation pane, choose EC2 Dashboard.
-
From Account attributes, choose Default credit specification.
To view the default credit specification at the account level (AWS CLI)
Use the get-default-credit-specification command. Specify the AWS Region and instance family.
aws ec2 get-default-credit-specification --region
us-east-1
--instance-familyt2