Шаблоны ОС c cloud-init

Образы берем отсюда https://docs.openstack.org/image-guide/obtain-images.html

Далее все манипуляции производим на примере CentOS 7:

wget https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
modprobe nbd max_part=8
qemu-nbd --connect=/dev/nbd0  CentOS-7-x86_64-GenericCloud.qcow2
mount /dev/nbd0p1 /mnt/temp/

Редактируем /mnt/temp/etc/cloud/cloud.cfg по вкусу. Например опция ниже включает авторизацию по паролю для пользователя root. Кстати о пользователях. Нужно смотреть внимательно на то, какой пользователь зашит в шаблон по умолчанию.

ssh_pwauth: true

В /etc/cloud/cloud.cfg есть 2 параметра, относящиеся к ssh. Один блокирует ssh как root, а другой блокирует ssh с использованием пароля. По умолчанию cloud.cfg блокирует как прямой вход в систему как root, так и всю аутентификацию на основе пароля ssh. Это значения по умолчанию:

disable_root: 1 ssh_pwauth: 0 1 для отключения root включает отключение входа в систему root, а 0 для ssh pwauth отключает возможность ssh с использованием пароля. Итак, если вы ХОТИТЕ иметь возможность войти в систему как root и сделать это с паролем, это необходимые настройки:

disable_root: 0 ssh_pwauth: 1 Имейте в виду, что установка ssh_pwauth в 1 разрешает аутентификацию на основе пароля глобально, а НЕ только для root.

Продолжаем настройку шаблона:

umount /mnt/temp/
qemu-nbd --disconnect /dev/nbd0
qm create 9001 --memory 2048 --net0 virtio,bridge=vmbr0
qm importdisk 9001 CentOS-7-x86_64-GenericCloud.qcow2 local-lvm
qm set 9001 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-9001-disk-1
qm set 9001 --ide2 local-lvm:cloudinit
qm set 9001 --boot c --bootdisk scsi0
qm set 9001 --serial0 socket --vga serial0
qm template 9001

Обратить внимание на хранилище. В случае с zfs хранилище называется local-zfs. Ну и собственно другие хранилища именуются по аналогии

На выходе получаем шаблон ОС ID 9001, который необходимо указывать в качестве шаблона ОС в биллинге или прочей внешней системе.

Данная инструкция протестирована в связке с WHMCS.

Last updated