Создать ВМ со вторым диском из снапшота/имиджа
Это заключительная статья по взаимодействию между пятью компонентами: ВМ, имиджем, снапшотом, диском и зоной доступности.
Создание ВМ со вторым диском из снапшота:
export SG=$(yc vpc sg get cam-default --format=json | jq -r '.id') export FOLDER_ID=$(yc config get folder-id) export ZONE=ru-central1-a export SUBNET_ID=$(yc vpc subnet get subnet-a --format json | jq -r '.id') export SA=$(yc iam service-account get cam-instance-sa --format json | jq -r '.id') export SNAP_ID=$(yc compute snapshot get first-snapshot --format=json | jq -r ".id") export IMAGE_ID=$(yc compute image get first-image --format=json | jq -r ".id") yc compute instance create \ --folder-id $FOLDER_ID \ --name cam-disk2 \ --description "Machine from snapshot" \ --hostname cam-disk2 \ --zone $ZONE \ --platform standard-v3 \ --create-boot-disk image-family=ubuntu-2004-lts,size=30,type=network-ssd,block-size=8K,auto-delete \ --create-disk snapshot-id=$SNAP_ID,size=60,type=network-ssd,block-size=4K,auto-delete \ --image-folder-id standard-images \ --memory 8 \ --cores 4 \ --core-fraction 100 \ --preemptible \ --network-settings type=standard \ --network-interface subnet-id=$SUBNET_ID,nat-ip-version=ipv4,security-group-ids=$SG \ --metadata serial-port-enable=1 \ --ssh-key ~/.ssh/id_rsa.pub \ --service-account-id $SA \ --async
Создание ВМ со вторым диском из имиджа:
export SG=$(yc vpc sg get cam-default --format=json | jq -r '.id') export FOLDER_ID=$(yc config get folder-id) export ZONE=ru-central1-a export SUBNET_ID=$(yc vpc subnet get subnet-a --format json | jq -r '.id') export SA=$(yc iam service-account get cam-instance-sa --format json | jq -r '.id') export SNAP_ID=$(yc compute snapshot get first-snapshot --format=json | jq -r ".id") export IMAGE_ID=$(yc compute image get first-image --format=json | jq -r ".id") yc compute instance create \ --folder-id $FOLDER_ID \ --name cam-disk2 \ --description "Machine from image" \ --hostname cam-disk2 \ --zone $ZONE \ --platform standard-v3 \ --create-boot-disk image-family=ubuntu-2004-lts,size=30,type=network-ssd,block-size=8K,auto-delete \ --create-disk image-id=$IMAGE_ID,size=60,type=network-ssd,block-size=8K \ --image-folder-id standard-images \ --memory 8 \ --cores 4 \ --core-fraction 100 \ --preemptible \ --network-settings type=standard \ --network-interface subnet-id=$SUBNET_ID,nat-ip-version=ipv4,security-group-ids=$SG \ --metadata serial-port-enable=1 \ --ssh-key ~/.ssh/id_rsa.pub \ --service-account-id $SA \ --async
Подведём итоги!
1. Снапшоты и имиджи снимаются с диска.
2. Из снапшота/имиджа можно заново создать диск.
3. Из снапшота/имиджа можно создать новую ВМ.
4. Снапшоты и имиджи не привязаны к зоне доступности.
5. Снапшоты и имиджи можно прикреплять к ВМ в виде дополнительных дисков.
6. Имиджи не конвертируются в снапшоты, а снапшоты в имиджи.
7. Имиджи быстрее раскатываются, но дольше создаются и имеют больший размер.
8. При восстановлении ВМ из снапшота или имиджа можно указать:
8.1. Новый размер диска.
8.2. SSH ключ.
8.3. Новые значения CPU/RAM
8.4. ВМ можно сделать непрерываемой, если она была прерываемая. И наоборот.
9. Снапшоты и имиджи удобно использовать для анализа сбоя оригинальной ВМ. Для этого их подключают к другим, работающим ВМ.
10. Уменьшить размер диска, даже используя снапшоты/имиджи не получится.
11. ВМ и диск привязаны к одной из трёх зон доступности.