Yandex Cloud
August 31, 2022

Добавление пустого диска к ВМ

Процесс был подробно описан здесь: https://teletype.in/@cameda/s-Pb-HfwrTi
Делаю отдельный мануал чтобы не потерять.

Подготовка!

SA у нас уже готов: https://teletype.in/@cameda/w93lPMPQWS4
Выберем зону доступности А: https://teletype.in/@cameda/S34zdiTcbUM
Сеть и подсети создали ранее: https://teletype.in/@cameda/ZbTkF70KWK9
SG будем использовать стандартную: https://teletype.in/@cameda/WIoqKmpMNLM

Поехали!

Создание ВМ:

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')
yc compute instance create \
--folder-id $FOLDER_ID \
--name cam-disk2 \
--description "Machine with 2 disks" \
--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 \
--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

Создадим ещё один диск и примонтируем его к ВМ на постоянной основе:

yc compute disk create \
   --folder-id $FOLDER_ID \
   --zone $ZONE \
   --name second-disk \
   --type network-ssd \
   --block-size 4K \
   --size 12 \
   --description "second disk to vm cam-disk2" \
   --async
yc compute instance attach-disk cam-disk2 \
  --disk-name second-disk \
  --auto-delete \
  --mode rw \
  --async
ssh yc-user@IP
sudo -i
lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    252:0    0  30G  0 disk
├─vda1 252:1    0   1M  0 part
└─vda2 252:2    0  30G  0 part /
vdb    252:16   0  10G  0 disk
├─vdb1 252:17   0   1M  0 part
└─vdb2 252:18   0   5G  0 part /mnt/data
vdc    252:32   0  12G  0 disk

sudo fdisk /dev/vdc
g-->n-->w

lsblk
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    252:0    0  30G  0 disk
├─vda1 252:1    0   1M  0 part
└─vda2 252:2    0  30G  0 part /
vdb    252:16   0  10G  0 disk
├─vdb1 252:17   0   1M  0 part
└─vdb2 252:18   0   5G  0 part /mnt/data
vdc    252:32   0  12G  0 disk
└─vdc1 252:33   0  12G  0 part
sudo mkfs.ext4 /dev/vdc1
blkid
/dev/vda2: UUID="82afb880-9c95-44d6-8df9-84129f3f2cd1" TYPE="ext4" PARTUUID="5aa474f9-767f-4ae4-bf42-d1b1ca657053"
/dev/vdb2: UUID="e00e2349-b4ea-42e1-a7a3-beed120435e0" TYPE="ext4" PARTUUID="5aa474f9-767f-4ae4-bf42-d1b1ca657053"
/dev/vda1: PARTUUID="ec0944f8-90a5-4e74-9453-d4d8d03bd53d"
/dev/vdb1: PARTUUID="ec0944f8-90a5-4e74-9453-d4d8d03bd53d"
/dev/vdc1: UUID="5907abd4-21f9-444a-bf7e-2db9336d85fa" TYPE="ext4" PARTUUID="63a5d345-b9c2-f04f-916f-1324e6455677"
mkdir /mnt/data2
vi etc/fstab
UUID=82afb880-9c95-44d6-8df9-84129f3f2cd1 /               ext4    errors=remount-ro 0       1
UUID=5907abd4-21f9-444a-bf7e-2db9336d85fa /mnt/data2      ext4    errors=remount-ro 0       1
mount -a
touch /mnt/data/file && echo "Hello, world!" > file
cat file

Готово!