Mprdb
Подготовка PVE ноды после клонирования из базового образа
Автоматический скрипт для запуска из pmagic
MACHINE_NAME='pve-prdb-01' DISK='/dev/nvme0n1' DISKDIR='/mnt/d' # fix gdisk $DISK <<EOF x e w Y EOF # resize lvm partition gdisk $DISK <<EOF d 3 n 3 w Y EOF # refresh partitions partprobe # resize pv pvresize "${DISK}p3" # rescan volume groups vgchange -ay # create lvm and zfs pool in this lvcreate pve-vg --name vmstorage -L 400g zpool create zfspool /dev/mapper/pve--vg-vmstorage -f zfs set compression=off zfspool zfs set sync=disabled zfspool # check rootfs and mount fsck.ext4 -y /dev/mapper/pve--vg-root mkdir $DISKDIR mount /dev/mapper/pve--vg-root $DISKDIR # detect ip IP=$(ip a | grep eth0 | tail -1 | awk {'print $2'} | awk -F '/' {'print $1'}) # replace template config cd $DISKDIR/opt/node_template_config mv $DISKDIR/var/lib/rrdcached/db/pve2-node/pve-analise-xx $DISKDIR/var/lib/rrdcached/db/pve2-node/$MACHINE_NAME mv $DISKDIR/var/lib/rrdcached/db/pve2-storage/pve-analise-xx $DISKDIR/var/lib/rrdcached/db/pve2-storage/$MACHINE_NAME cd $DISKDIR/ tar -xzpf $DISKDIR/opt/node_template_config/etc.tgz sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" $DISKDIR/etc/hosts sed -i "s/TEMPLATEIPADDR/$IP/g" $DISKDIR/etc/hosts sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" $DISKDIR/etc/hostname sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" $DISKDIR/etc/mailname sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" $DISKDIR/etc/postfix/main.cf cd / umount $DISKDIR reboot
Доустановить и настроить SAMBA
apt-get install samba adduser storage smbpasswd -a storage smbpasswd -e storage
mkdir /mnt/pve/pveshare/storage chown storage:storage /mnt/pve/pveshare/storage -R
положить это в
/etc/samba/smb.conf
# Global parameters [global] log file = /var/log/samba/log.%m logging = file map to guest = Bad User max log size = 1000 obey pam restrictions = Yes pam password change = Yes panic action = /usr/share/samba/panic-action %d passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . passwd program = /usr/bin/passwd %u server role = standalone server server string = %h server (Samba, Ubuntu) unix password sync = Yes usershare allow guests = Yes idmap config * : backend = tdb [storage] browseable = Yes comment = storage valid users = storage create mask = 0755 directory mask = 0755 path = /mnt/pve/pveshare/storage read only = No veto files = /._*/.DS_Store/.T*/Thumbs.db/Network Trash Folder/Temporary Items/*.exe/*.bat/*.msi delete veto files = yes <pre> =Где лежит базовый образ?= apve3: /mnt/samba/fdisk3/pve-node-template-image.dd =Набор действий (вручную) для настройки одного узла= Всё из-под пользователя root ==Переименовать машину== export NEWNAME='pve-prdb-xx' hostnamectl set-hostname $NEWNAME , где: xx это порядковый номер машины ==Подвинуть раздел lvm до конца физического диска== ############# # Внимание! # ############# Операции из этого раздела лучше сразу выполнить из partedmagic, чтобы не перезагружаться ===Вручную=== Запустить gparted и подвинуть раздел с lvm до конца физического диска ===Командой=== <pre>fdisk /dev/nvme0n1 <<EOF d 3 n 3 N w EOF
Далее из под рута дать команды:
lvcreate pve-vg --name vmstorage -L 400g zpool create zfspool /dev/mapper/pve--vg-vmstorage -f zfs set compression=off zfspool zfs set sync=disabled zfspool
/opt/node_template_config/apply_rename.sh ИМЯ_УЗЛА
Пример
/opt/node_template_config/apply_rename.sh pve-analise-01
Или
/opt/node_template_config/apply_rename.sh pve-ml-01
Далее нужно запустить один костыль (костыль №1). Это команда:
systemctl stop pve-cluster systemctl stop corosync pmxcfs -l cp -rp /etc/pve/nodes/pve-analise-xx /etc/pve/nodes/ИМЯ_УЗЛА killall pmxcfs reboot
Внимание! Имя узла должно быть такое же, как в команде переименования!