Я создал виртуальную машину в проекте 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
Сначала вы должны создать образ в своем старом проекте
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
, используя это изображение
.