Я создал виртуальную машину в проекте A в GCE. Я хочу создать новый экземпляр на основе этой виртуальной машины в другом проекте B.
Думаю, я могу создать новый экземпляр на основе снимка диска. Однако я не могу найти никакой возможности передать такой снимок по проекту.
Мои вопросы:
1) как передать снимок диска между проектами в проектах Google Cloud Platform?
2) Есть ли лучший способ добиться этого, кроме использования образа докера?
Поскольку я не могу выключить исходную виртуальную машину, поскольку она в настоящее время используется в производственной среде, я должен использовать следующие шаги для создания зеркальной виртуальной машины в другом проекте:
1) Создайте снимок загрузочного диска исходной ВМ.
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
gcloud compute instances create vm-prod-duplicate \
--project target-project --disk name=vm-prod-disk,boot=yes
Сначала вам нужно создать изображение в своем 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"
Это также другие решения.
создать образ в своем старом проекте
gcloud compute images create "my-image" --source-disk "my-disk"
скопировать изображение в новый проект
gcloud compute --project=newprojectid images create image-2 --source-image=image-1 --source-image-project=oldprojectid
создать экземпляр, используя это изображение