AWS CLI を使用してスナップショットからより大きな Amazon Lightsail インスタンス、ブロックストレージディスク、またはデータベースを作成する

最終更新日: 2017 年 10 月 16 日

これは、お客様のクラウドプロジェクトが増大して、より多くの処理能力がすぐに必要になった場合に必要です。 その場合に、当社ではお客様を支援できます。すべての操作は、Lightsail コンソール内で行うか、AWS Command Line Interface (AWS CLI) を使用して行うことができます。

現在の Lightsail インスタンスのスナップショットを作成し、このスナップショットから、お客様が必要とする処理能力に応じたより大きいサイズの新規インスタンスを作成する方法について説明します。

注意

現時点では、スナップショットより小さいサイズ (またはバンドル) のインスタンスの作成はサポートされていません。作成できるのは、同じサイズまたはより大きいサイズのインスタンスのみです。

前提条件

  1. まず、まだ AWS CLI をインストールしていない場合はインストールする必要があります。詳細については、「AWS Command Line Interface のインストール」を参照してください。AWS CLI を設定する必要があります。

  2. 作業するインスタンスのスナップショットも必要です。詳細については、「Amazon Lightsail で Linux または Unix インスタンスのスナップショットを作成する」を参照してください 。

ステップ 1: スナップショット名を取得する

明らかだと思われるかもしれませんが、この 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"
     }
     }
     ]
    }
  2. [name] の値を、後で見つけやすい場所にコピーします。この名前は、AWS CLI コマンドで --instance-snapshot-name の値として使用します。

ステップ 2: 新規 Lightsail バンドルを選択する

バンドルは、実際にはインスタンスの料金プランおよび設定です。たとえば、Linux ベースの Medium バンドルは、1 か月あたり 20 USD の料金で、4.0 GB の RAM、80 GB の SSD ストレージなどが設定されています。

小さいバンドルから始めて、処理能力の追加が必要になった場合は、より大きなバンドルにアップグレードできます。詳細については、「Amazon Lightsail でスナップショットからより大きなインスタンス、ブロックストレージディスク、またはデータベースを作成する」を参照してください。

重要

スナップショットからより小さいサイズのバンドルに変更することはできません。より小さいバンドルを作成する場合は、最初からやり直す必要があります。

  1. 次の AWS CLI コマンドを入力します。

    aws lightsail get-bundles

    出力は次のようになります。

    {
     "bundles": [
     {
     "name": "Nano",
     "power": 300,
     "price": 5.0,
     "ramSizeInGb": 0.5,
     "diskSizeInGb": 20,
     "transferPerMonthInGb": 1024,
     "cpuCount": 1,
     "instanceType": "t2.nano",
     "isActive": true,
     "bundleId": "nano_1_0"
     },
     {
     "name": "Micro",
     "power": 500,
     "price": 10.0,
     "ramSizeInGb": 1.0,
     "diskSizeInGb": 30,
     "transferPerMonthInGb": 2048,
     "cpuCount": 1,
     "instanceType": "t2.micro",
     "isActive": true,
     "bundleId": "micro_1_0"
     },
     {
     "name": "Small",
     "power": 1000,
     "price": 20.0,
     "ramSizeInGb": 2.0,
     "diskSizeInGb": 40,
     "transferPerMonthInGb": 3072,
     "cpuCount": 1,
     "instanceType": "t2.small",
     "isActive": true,
     "bundleId": "small_1_0"
     },
     {
     "name": "Medium",
     "power": 2000,
     "price": 40.0,
     "ramSizeInGb": 4.0,
     "diskSizeInGb": 60,
     "transferPerMonthInGb": 4096,
     "cpuCount": 2,
     "instanceType": "t2.medium",
     "isActive": true,
     "bundleId": "medium_1_0"
     },
     {
     "name": "Large",
     "power": 3000,
     "price": 80.0,
     "ramSizeInGb": 8.0,
     "diskSizeInGb": 80,
     "transferPerMonthInGb": 5120,
     "cpuCount": 2,
     "instanceType": "t2.large",
     "isActive": true,
     "bundleId": "large_1_0"
     }
     ]
    }
  2. 目的のバンドルの [bundleId] の値を見つけます。詳細については、「Lightsail の料金」を参照してください。

ステップ 3: AWS CLI コマンドを記述して新規インスタンスを作成する

これで、パラメーター値が取得済みであるため、インスタンスを作成するためのコマンドを記述して実行する準備ができました。

  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 と入力します。

  2. Lightsail コンソールで新しいインスタンスを開き、インスタンスの変更を開始します。

次のステップ

スナップショットから新しいインスタンスを作成した後に、次のことを行うことができます。

  • 以前のインスタンスを使用しない場合は削除できます。これを行うには、Lightsail コンソールまたは CLI コマンド delete-instance を使用します。

  • 以前のスナップショットが必要ない場合は削除できます。これを行うには、Lightsail コンソールまたは CLI コマンド delete-instance-snapshot を使用します。

  • 以前のインスタンスに静的 IP アドレスがアタッチされていた場合は、そのまま新しいインスタンスにアタッチできます。これを行うには、コンソールを使用します。「静的 IP を作成してインスタンスにアタッチする」を参照してください。