Amazon Elastic Compute Cloud
用户指南(适用于 Linux 实例)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

更改实例类型

随着您的需求变化,您可能会发现您的实例过度使用 (实例类型过小) 或利用不足 (实例类型过大)。如果出现这种情况,您可更改您的实例大小。例如,如果您的 t2.micro 实例对于其工作负载过小,您可将其更改为适合工作负载的其他实例类型。

您可能还想从上一代实例类型迁移到最新一代实例类型以利用某些功能,例如 IPv6 支持。

如果实例的根设备是 EBS 卷,您可以通过更改其实例类型来更改实例的大小,这称为调整大小。如果实例的根设备是实例存储卷,则必须将应用程序迁移到实例类型为您所需的新实例。有关根设备卷的更多信息,请参阅 根设备存储

在调整实例大小时,您必须选择与实例的配置兼容的实例类型。如果您所需的实例类型与您具有的实例配置不兼容,则必须将应用程序迁移到实例类型为您所需的新实例。

重要

在调整实例大小时,已调整大小的实例通常具有您在启动原始实例时指定的相同实例存储卷数。对于支持 NVMe 实例存储卷(默认情况下可用)的实例类型,调整大小的实例可能具有其他实例存储卷,具体取决于 AMI。否则,您可以手动将应用程序迁移到具有新实例类型的实例,并指定启动新实例时所需的实例存储卷数。

调整大小的实例的兼容性

仅当实例的当前实例类型和您所需的新实例类型在下列方面兼容时,才能调整实例的大小:

  • 虚拟化类型:Linux AMI 使用两种虚拟化之一:半虚拟化 (PV) 或硬件虚拟机 (HVM)。您不能调整实例大小从 PV AMI 启动的实例类型到 HVM 的实例类型。有关更多信息,请参阅Linux AMI 虚拟化类型。要查看实例的虚拟化类型,请在 Amazon EC2 控制台中查看 Instances (实例) 屏幕的详细信息窗格中的 Virtualization (虚拟化) 字段。

  • Architecture (架构):AMI 特定于处理器的架构,因此您必须选择与当前实例类型具有相同处理器架构的实例类型。例如:

    • A1 实例是支持基于 Arm 架构的处理器的唯一实例。如果您要调整其处理器基于 Arm 架构的实例类型的大小,将限于支持基于 Arm 架构的处理器的实例类型。

    • 只有以下实例类型支持 32 位 AMIs:t2.nanot2.microt2.smallt2.mediumc3.larget1.microm1.smallm1.mediumc1.medium。如果您要调整 32 位实例的大小,将限于这些实例类型。

  • Network (网络):较新的实例类型只能在 VPC 中启动。因此,您不能将 EC2-Classic 平台中的实例的大小调整为仅在 VPC 中可用的实例类型,除非您有非默认 VPC。要查看您的实例是否在 VPC 中,请在 Amazon EC2 控制台中查看 Instances (实例) 屏幕的详细信息窗格中的 VPC ID 值。有关更多信息,请参阅 从 EC2-Classic 中的 Linux 实例迁移到 VPC 中的 Linux 实例

  • 增强联网:支持增强联网的实例类型需要安装必要的驱动程序。例如,A1、C5、C5d、C5n、M5、M5a、M5ad、M5d、p3dn.24xlarge、R5、R5a、R5ad、R5d、T3、T3a 和 z1d 实例类型需要由 EBS 提供支持且安装有 Elastic Network Adapter (ENA) 驱动程序的 AMI。要将现有实例大小调整为支持增强联网的实例类型,则必须先相应地在实例上安装 ENA 驱动程序ixgbevf 驱动程序

  • NVMe:在基于 Nitro 的实例上,EBS 卷显示为 NVMe 块储存设备。如果将实例类型不支持 NVMe 的实例的大小调整为支持 NVMe 的实例类型,您必须先在实例上安装 NVMe 驱动程序。此外,您在块储存设备映射中指定的设备的设备名称将使用 NVMe 设备名称 (/dev/nvme[0-26]n1) 进行重命名。 因此,要使用 /etc/fstab 在启动时挂载文件系统,必须使用 UUID/标签而非设备名称。

  • AMI:有关支持增强联网和 NVMe 的实例类型所需的 AMI 的信息,请参阅以下文档中的发行说明:

调整由 Amazon EBS 支持的实例的大小

您必须先停止由 Amazon EBS 支持的实例,然后才能更改其实例类型。当您停止和启动实例时,需要注意以下事项:

  • 我们将实例迁移到新硬件;但是,实例 ID 不会更改。

  • 如果您的实例具有公有 IPv4 地址,则我们会释放该地址并向实例提供一个新的公有 IPv4 地址。实例会保留其私有 IPv4 地址、任何弹性 IP 地址以及任何 IPv6 地址。

  • 如果您的实例处于 Auto Scaling 组中,则 Amazon EC2 Auto Scaling 服务会将已停止的实例标记为运行状况不佳,可能会终止它并启动替换实例。为防止出现此情况,您可以在调整实例大小时,为组暂停扩展流程。有关更多信息,请参阅Amazon EC2 Auto Scaling 用户指南中的暂停和恢复扩展流程

  • 如果您的实例位于集群置放群组中,并且在更改实例类型后,实例启动失败,请尝试以下操作:停止集群置放群组中的所有实例,更改受影响实例的实例类型,然后重启集群置放群组中的所有实例。

  • 当实例停止时,请确保您已计划停机时间。停止实例并调整其大小可能需要几分钟时间,重新启动实例所用的时间则由应用程序的启动脚本决定。

有关更多信息,请参阅停止和启动您的实例

按照以下过程使用 AWS 管理控制台 调整由 Amazon EBS 支持的实例的大小。

调整由 Amazon EBS 支持的实例的大小

  1. (可选)如果新实例类型需要现有实例上未安装的驱动程序,您必须先连接到您的实例并安装驱动程序。有关更多信息,请参阅 调整大小的实例的兼容性

  2. 打开 Amazon EC2 控制台。

  3. 在导航窗格中,选择 Instances

  4. 选择所需实例,然后依次选择 ActionsInstance StateStop

  5. 在确认对话框中,选择 Yes, Stop。停止实例可能需要几分钟时间。

  6. 在实例处于选中状态时,依次选择 ActionsInstance SettingsChange Instance Type。如果实例状态不是 stopped,则禁用此操作。

  7. Change Instance Type 对话框中,执行以下操作:

    1. Instance Type 中,选择您所需的实例类型。如果列表中未显示您所需的实例类型,则说明它与您的实例配置不兼容 (例如,由于虚拟化类型)。有关更多信息,请参阅 调整大小的实例的兼容性

    2. (可选)如果您选择的实例类型支持 EBS 优化,则选择 EBS-optimized (EBS 优化) 以启用 EBS 优化,或者取消选择 EBS-optimized (EBS 优化) 以禁用 EBS 优化。如果您选择的实例类型默认情况下已经过 EBS 优化,则 EBS 优化已选中,您无法取消选择。

    3. 选择 Apply 以接受新设置。

  8. 要重启已停止的实例,请选择该实例,然后依次选择 ActionsInstance StateStart

  9. 在确认对话框中,选择 Yes, Start。实例进入 running 状态可能需要几分钟时间。

  10. (问题排查)如果您的实例未启动,则可能是新实例类型的某一要求未满足。有关更多信息,请参阅为什么我的 Linux 实例在更改其类型后无法启动?

迁移实例存储支持的实例

如果您要将应用程序从一个实例存储支持的实例移至另一个不同实例类型的实例存储支持的实例,则必须通过从您的实例创建映像来迁移它,然后从此映像启动实例类型为您所需的新实例。要确保您的用户可不间断地继续使用托管在您的实例上的应用程序,您必须使用已与您的原始实例关联的任何弹性 IP 地址,并将其与新实例关联。之后您可以终止原始实例。

迁移实例存储支持的实例

  1. 备份实例存储卷上所有您需要保留在持久性存储中的数据。要迁移 EBS 卷上您需要保留的数据,请拍摄这些卷的快照 (请参阅 创建 Amazon EBS 快照) 或从实例中分离卷,以便您之后可以将其附加到新的实例 (请参阅 将 Amazon EBS 卷与实例分离)。

  2. 通过满足先决条件并按照创建由实例存储支持的 Linux AMI中的过程执行,从实例存储支持的实例创建 AMI。当您通过您的实例创建完 AMI 后,请返回到此过程。

  3. 打开 Amazon EC2 控制台并在导航窗格中选择 AMI。从筛选条件列表中,选择我拥有的,然后选择您在上一步中创建的映像。请注意,AMI Name (AMI 名称) 是您在注册映像时指定的名称,而 Source (源) 是您的 Amazon S3 存储桶。

    注意

    如果没有看到上一步创建的 AMI,请确保您已选择在其中创建了 AMI 的区域。

  4. 选择 Launch。在您为实例指定选项时,务必选择您所需的新实例类型。如果无法选择您所需的实例类型,则说明它与您创建的 AMI 的配置不兼容 (例如,由于虚拟化类型)。您还可以指定从原始实例中分离的任何 EBS 卷。

    实例进入 running 状态可能需要几分钟时间。

  5. (可选) 如果不再需要用以创建映像的原有实例,则您可将其终止。选择实例并确认您将要终止原始实例而不是新实例 (例如,查看名称或启动时间)。依次选择 Actions (操作)Instance State (实例状态)Terminate (终止)

迁移到新的实例配置

如果您的实例的当前配置与您所需的新实例类型不兼容,则不能将该实例的大小调整为新实例类型的大小。您可以将应用程序迁移到其配置与您所需的新实例类型兼容的新实例。

如果您要将从 PV AMI 启动的实例变为仅限 HVM 的实例类型,一般过程如下:

将您的应用程序迁移到兼容实例

  1. 备份实例存储卷上所有您需要保留在持久性存储中的数据。要迁移 EBS 卷上您需要保留的数据,请创建这些卷的快照 (请参阅 创建 Amazon EBS 快照) 或从实例中分离卷,以便您之后可以将其附加到新实例 (请参阅 将 Amazon EBS 卷与实例分离)。

  2. 启动新实例,选择下列内容:

    • HVM AMI。

    • 仅限 HVM 的实例类型。

    • 如果您正在使用弹性 IP 地址,请选择原始实例当前正在其中运行的 VPC。

    • 您从原始实例中分离并且要附加到新实例的任何 EBS 卷,或者基于您创建的快照的新的 EBS 卷。

    • 如果您要允许相同的流量到达新实例,请选择与原始实例关联的安全组。

  3. 在实例上安装应用程序和所有必需软件。

  4. 还原您在原始实例的实例存储卷中备份的所有数据。

  5. 如果您正在使用弹性 IP 地址,请按如下所示将其分配给新启动的实例:

    1. 在导航窗格中,选择 Elastic IPs

    2. 选择与原始实例关联的弹性 IP 地址,然后依次选择操作取消关联地址。当系统提示进行确认时,选择 Disassociate address

    3. 在弹性 IP 地址仍处于选中状态的情况下,依次选择操作关联地址

    4. Instance 中,选择新实例,然后选择 Associate

  6. (可选) 如果不再需要原始实例,您可以将其终止。选择实例并确认您将要终止原始实例而不是新实例 (例如,查看名称或启动时间)。依次选择 Actions (操作)Instance State (实例状态)Terminate (终止)