

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 Lightsail 快照创建更大的实例、块存储磁盘或数据库 AWS CLI
<a name="lightsail-how-to-create-larger-instance-from-snapshot-using-aws-cli"></a>

发生了此情况。您的云项目不断增长，您现在需要更多计算能力！我们可以帮助您做到这一点。你可以在 Lightsail 控制台中执行所有操作，也可以使用 AWS Command Line Interface (AWS CLI) 来完成。

我们将向您展示如何拍摄当前 Lightsail 实例的*快照*，并根据该快照创建具有所需计算能力的新的、更大的实例。

**注意**  
目前，我们不支持通过快照创建小型实例（或包）。您只能创建相同大小的实例或更大的实例。

## 先决条件
<a name="create-larger-instance-from-snapshot-prerequisites"></a>

1. 首先，如果您还没有，则需要安装 AWS CLI。要了解更多信息，请参阅[安装 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)。务必[配置 AWS CLI](lightsail-how-to-set-up-and-configure-aws-cli.md)。

1. 您还需要使用在其中工作的实例的快照。要了解更多信息，请参阅[创建 Linux 或 Unix 实例的快照](lightsail-how-to-create-a-snapshot-of-your-instance.md)。

## 步骤 1：获取您的快照名称
<a name="create-larger-instance-from-snapshot-get-your-snapshot-name"></a>

这看似显而易见，但您需要先获取您的快照名称，然后再执行此 AWS CLI 命令以创建大型实例。好消息是可轻松获取快照名称。

1. 在中 AWS CLI，键入以下内容。

   ```
   aws lightsail get-instance-snapshots
   ```

   您应该可以看到类似于如下所示的输出内容。

   ```
   {
       "instanceSnapshots": [
           {
               "fromInstanceName": "WordPress-512MB-EXAMPLE",
               "name": "WordPress-512MB-EXAMPLE-system-1234567891011",
               "sizeInGb": 20,
               "resourceType": "InstanceSnapshot",
               "fromInstanceArn":
               "arn:aws:lightsail:us-east-1:123456789101:Instance/86f49ee4-26cc-4802-9b0d-12345EXAMPLE",
               "state": "available",
               "arn": "arn:aws:lightsail:us-east-1:123456789101:InstanceSnapshot/c87acb5f-851e-4fbc-94f1-12345EXAMPLE",
               "fromBundleId": "nano_1_0",
               "fromBlueprintId": "wordpress_4_6_1",
               "createdAt": 1480898073.653,
               "location": {
                   "availabilityZone": "all",
                   "regionName": "us-east-2"
               }
           }
       ]
   }
   ```

1. 将**名称**值复制到您可在稍后获取该值的某个位置。这是您将在 AWS CLI 命令中使用的 `--instance-snapshot-name` 值。

## 步骤 2：选择套装
<a name="create-larger-instance-from-snapshot-get-your-snapshot-name"></a>

*包*实际上只是您的实例的定价计划和配置。例如，基于 Linux 的**中型**包的每月费用为 24 USD，并拥有 4.0GB RAM、80GB SSD 存储等。

如果您开始时使用的是较小的包，并且需要更多计算能力，则您可能需要升级到较大的包。有关更多信息，请参阅[从快照创建更大的实例、数据块存储磁盘或数据库](how-to-create-larger-instance-from-snapshot-using-console.md)。

**重要**  
您无法从快照调整为小型包。如果您要创建小型包，则必须重新开始。

1. 键入以下 AWS CLI 命令。

   ```
   aws lightsail get-bundles
   ```

   您的输出应类似于以下内容。

   ```
   {
       "bundles": [
           {
               "price": 5.0,
               "cpuCount": 2,
               "diskSizeInGb": 20,
               "bundleId": "nano_3_0",
               "instanceType": "nano",
               "isActive": true,
               "name": "Nano",
               "power": 298,
               "ramSizeInGb": 0.5,
               "transferPerMonthInGb": 1024,
               "supportedPlatforms": [
                   "LINUX_UNIX"
               ],
               },
           {
               "price": 7.0,
               "cpuCount": 2,
               "diskSizeInGb": 40,
               "bundleId": "micro_3_0",
               "instanceType": "micro",
               "isActive": true,
               "name": "Micro",
               "power": 500,
               "ramSizeInGb": 1.0,
               "transferPerMonthInGb": 2048,
               "supportedPlatforms": [
                   "LINUX_UNIX"
               ],
               },
           {
               "price": 12.0,
               "cpuCount": 2,
               "diskSizeInGb": 60,
               "bundleId": "small_3_0",
               "instanceType": "small",
               "isActive": true,
               "name": "Small",
               "power": 1000,
               "ramSizeInGb": 2.0,
               "transferPerMonthInGb": 3072,
               "supportedPlatforms": [
                   "LINUX_UNIX"
               ],
               },
           {
               "price": 24.0,
               "cpuCount": 2,
               "diskSizeInGb": 80,
               "bundleId": "medium_3_0",
               "instanceType": "medium",
               "isActive": true,
               "name": "Medium",
               "power": 2000,
               "ramSizeInGb": 4.0,
               "transferPerMonthInGb": 4096,
               "supportedPlatforms": [
                   "LINUX_UNIX"
               ],
               },
           {
               "price": 44.0,
               "cpuCount": 2,
               "diskSizeInGb": 160,
               "bundleId": "large_3_0",
               "instanceType": "large",
               "isActive": true,
               "name": "Large",
               "power": 3000,
               "ramSizeInGb": 8.0,
               "transferPerMonthInGb": 5120,
               "supportedPlatforms": [
                   "LINUX_UNIX"
               ],
               },
       ]
   }
   ```

1. 找到所需包的 **bundleId** 值。有关更多信息，请参阅 [Lightsail](https://amazonlightsail.com/pricing/) 定价。

## 第 3 步：编写 AWS CLI 命令并创建新实例
<a name="create-larger-instance-from-snapshot-create-your-cli-command"></a>

现在，您已有参数值，已准备好编写和执行您的命令来创建实例！

1. 键入以下内容。

   ```
   aws lightsail create-instances-from-snapshot --instance-names MyNewInstanceFromSnapshot --availability-zone us-east-1a --instance-snapshot-name WordPress-512MB-EXAMPLE-system-1234567891011 --bundle-id medium_1_0
   ```

   您的输出应类似于以下内容。

   ```
   {
       "operations": [
           {
               "status": "Started",
               "resourceType": "Instance",
               "isTerminal": false,
               "statusChangedAt": 1486863990.961,
               "location": {
                   "availabilityZone": "us-east-2a",
                   "regionName": "us-east-2"
               },
               "operationType": "CreateInstance",
               "resourceName": "MyNewInstanceFromSnapshot",
               "id": "30fec45e-e7d7-4e18-96c8-12345EXAMPLE",
               "createdAt": 1486863989.784
           }
       ]
   }
   ```
**注意**  
您也可以使用返回区域和可用区的列表 AWS CLI。只需键入 `aws lightsail get-regions --include-availability-zones` 以利用您的 `get-regions` 请求返回可用区的列表。

1. 现在，在 Lightsail 控制台中打开您的新实例并开始对其进行修改。

## 后续步骤
<a name="create-larger-instance-from-snapshot-next-steps"></a>

通过快照创建新实例后，以下是您接下来可执行的一些操作：
+ 如果您不再使用旧实例，则可能需要将其删除。您可以使用 Lightsail 控制台或删除[实例 CLI 命令来执行](https://docs.aws.amazon.com/cli/latest/reference/lightsail/delete-instance.html)此操作。
+ 如果您不需要旧快照，则可能需要将其删除。你可以使用 Lightsail 控制台或 CL [delete-instance-snapshot I](https://docs.aws.amazon.com/cli/latest/reference/lightsail/delete-instance-snapshot.html) 命令来执行此操作。
+ 如果您已将一个静态 IP 地址附加到旧实例，则可能需要保留该地址并将其附加到新实例。可使用控制台执行此操作。请参阅[创建静态 IP 并将其附加到实例](lightsail-create-static-ip.md)。