如何在运行时更改实例类型

yan*_*ael 5 amazon-ec2 ansible

如何在运行时更改实例类型

我已经运行了t2.small实例,我使用t2.medium实例调用实例并运行它,但运行t2.small的实例

ec2:
 key_name: "{{key_name}}"
 region: "{{aws_region}}"
 state: running
 instance_type: t2.medium
 instance_ids: "{{ item.id }}"
 aws_access_key: "{{aws_access_key_id}}"
 aws_secret_key: "{{aws_secret_access_key}}"
Run Code Online (Sandbox Code Playgroud)

似乎ansible忽略了instance_type

0xc*_*urb 1

您不能只是使用新的大小来运行实例,您应该先修改实例大小,然后停止实例,然后再运行它。

修改您的实例大小> [参考]

ec2-modify-instance-attribute <instance id> --instance-type <new type>
Run Code Online (Sandbox Code Playgroud)

您还应该注意这一点,特别是>

仅当实例的当前实例类型和您想要的新实例类型通过以下方式兼容时,您才可以调整实例的大小:

  • 虚拟化类型。Linux AMI 使用两种虚拟化类型之一:半虚拟 (PV) 或硬件虚拟机 (HVM)。您无法将从 PV AMI 启动的实例大小调整为仅 HVM 的实例类型。有关更多信息,请参阅Linux AMI 虚拟化类型。
  • 网络。某些实例类型在 EC2-Classic 中不受支持,必须在 VPC 中启动。因此,除非您拥有非默认 VPC,否则您无法将 EC2-Classic 中的实例大小调整为仅在 VPC 中可用的实例类型。有关更多信息,请参阅仅在 VPC 中可用的实例类型。
  • 平台。所有 Amazon EC2 实例类型都支持 64 位 AMI,但只有以下实例类型支持 32 位 AMI:t2.nano、t2.micro、t2.small、t2.medium、c3.large、t1.micro、m1.small 、m1.medium 和 c1.medium。如果您要调整 32 位实例的大小,则仅限于这些实例类型。