如何在到期时从 t2.micro 升级到 t2.small?

How do I upgrade from t2.micro to t2.small at the moment of expiration?

我的 AWS 预留实例 t2.micro 即将过期。我决定升级到t2.small,刚买了一个新的预留实例t2.small,如下图

现在,如何从 t2.micro 切换到 t2.small?

一种策略是拍摄 micro 实例的图像快照并将其用于 small 实例。

首先,做好备份。

  1. 在“实例”窗格中打开 运行 实例的上下文菜单(右键单击)。
  2. 选择图像 -> 创建图像。
  3. 您最终将在 AMI 窗格中拥有一个新的 AMI。
  4. 进行切换时,使用这个新的 AMI 启动实例(select AMI 和 Launch)。

您需要停止一个实例并在适当的时候启动另一个实例。要么以您选择的语言编写使用 AWS 开发工具包的脚本,要么手动执行。

不要忘记与进行切换有关的 DNS 和 IP 地址,除非有一些重叠,否则您将有停机时间。我建议您离开 micro 运行,同时启动 small 并更改路由等

因为我没有更改实例类型 (T2),所以这是我所做的。

  • 购买新的预留实例,t2.small
  • 停止实例(t2.micro):Instances --> Actions --> Instance State --> Stop
  • 更改实例类型:Instances --> Instance Settings --> Change Instance Type --> t2.small
  • 启动实例(t2.small):Actions --> Instance State --> Start

请注意,预留实例是价格折扣。它不适用于特定实例。

通过购买t1.micro个预留实例(RI),一个实例符合规格(实例类型+操作系统+可选AZ)可以运行在RI期间每小时期间免费(因为您已经预先支付了费用,每年或每月)。

唯一 'danger' 超过您的 RI 到期时间的是实例将按标准的每小时按需费率收费(Linux 个实例大约 1.2c/小时)。同样,唯一使用 t2.small 先验的 'danger' 每小时收费 3.2c/小时。

因此,如果您可以在实例离线几分钟后存活下来,只需:

  • 停止实例
  • 更改实例类型
  • 重新开始

如果你没有在最佳时间做也没关系......你只会被收取几美分。

此外,如果您的新预留实例是区域(意味着没有选择可用区),那么您可以利用Instance Size Flexibility。通过示例可以最好地理解这一点:

  • 您有 t1.micro
  • 的 RI
  • 您正在 运行宁 t1.small
  • 微型尺寸是小型尺寸的一半(就 CPU 和 RAM 而言)
  • 因此实例的费用由注册机承担一半,您只需支付另一半

因此,如果您的新 RI 是 地区性,即使您晚点更改实例大小也没关系。您的 t2.small RI 实际上会支付 t2.micro 实例的费用(并且实际上可以支付 2 x t2.micro 实例的费用)。

底线: 随时更改您的实例类型。时间错误的代价可以忽略不计。

此解决方案可行,但会重置 Public IP。然后需要在 Route 53 上更新,以使站点再次运行。以及 public IP 已被使用的任何其他地方。

  1. 停止实例:实例 --> 操作 --> 实例状态 --> 停止
  2. 更改实例类型:实例 --> 实例设置 --> 更改实例类型
  3. 再次启动实例:Actions --> Instance State --> Start