Amazon的可突发实例(burstable instances)在不同实例类型下的CPU保证都不同。例如,对于T3实例,CPU保证为基线性能(baseline performance)的10%。这意味着如果您选择一个2 vCPU的T3实例,您将获得基于1 vCPU的10%保证,即0.1 vCPU(也就是1/10 vCPU)。这种CPU保证方式旨在让用户在需要更高计算能力时可以暂时使用更大的CPU容量,而不需要一直承担高额费用。
以下是可以输出CPU保证的Python代码示例:
import boto3
ec2 = boto3.resource('ec2')
instances = ec2.instances.filter(Filters=[{'Name': 'instance-state-name', 'Values': ['running']}])
for instance in instances:
instance_type = instance.instance_type
cpu_credits = instance.cpu_options['cpu_credits']
if cpu_credits is not None:
print(f"Instance type: {instance_type}, CPU credits earned per hour: {cpu_credits}")
该代码可以输出所有正在运行的EC2实例的类型和每小时所获得的CPU credits数量。对于可突发实例,每个CPU credit表示可以连续使用1 vCPU 1分钟的时间。因此,您可以使用此代码来检查并计算实例的CPU保证。