web-dev-qa-db-ja.com

あるプロジェクトから別のプロジェクトのGoogle Compute Engine VMを再作成するにはどうすればよいですか?

GCEのプロジェクトAにVMを作成しました。これに基づいて新しいインスタンスを作成したいVM別のプロジェクトBに.

ディスクスナップショットに基づいて新しいインスタンスを生成できると思います。ただし、プロジェクト間でそのようなスナップショットを転送するオプションはありません。

私の質問は:

1)Google Cloud Platformプロジェクトのプロジェクト間でディスクスナップショットを転送するにはどうすればよいですか?

2)Dockerイメージを使用する以外にこれを達成するためのより良い方法はありますか?

7
Anthony Kong

ソースVMは現在運用環境で使用されているため、オフにすることはできないため、次の手順を使用してミラーを作成する必要がありますVM別のプロジェクト:

1)ソースVMのブートディスクのスナップショットを作成します

2)ターゲットプロジェクトでこのスナップショットに基づいてディスクを作成します

 gcloud compute disks create vm-prod-disk --source-snapshot \
 https://www.googleapis.com/compute/v1/projects/<source-\
 project>/global/snapshots/<source-vm-snapshot> --project target-project

3)手順2の新しいディスクに基づいてVMを作成します

gcloud compute instances create vm-prod-duplicate \
--project target-project --disk name=vm-prod-disk,boot=yes
10
Anthony Kong

まず、old-projectに画像を作成する必要があります

gcloud compute images create "my-image" --source-disk "my-disk"

これで、イメージはグローバルリソースであるため、別のプロジェクトでマシンを作成できます。

gcloud compute instances create "my-instance" \
    --image "my-image" \
    --image-project "new-project"

その他のソリューション もあります。

4
Alex Palcuie