Mprdb
Содержание
Подготовка PVE ноды после клонирования из базового образа
Скрипты переименования машин
Выполнить из pmagic
MACHINE_NAME='pve-prdb-01' DISK='/dev/nvme0n1' # 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 # reboot to debian reboot
Выполнить из pve
MACHINE_NAME='pve-prdb-01' zpool create zfspool /dev/mapper/pve--vg-vmstorage -f zfs set compression=off zfspool zfs set sync=disabled zfspool mkdir /zfspool/storage chown storage:storage /zfspool/storage -R # detect ip IP=$(ip a | grep eth0 | tail -1 | awk {'print $2'} | awk -F '/' {'print $1'}) # replace template config cd /opt/node_template_config mv /var/lib/rrdcached/db/pve2-node/pve-analise-xx /var/lib/rrdcached/db/pve2-node/$MACHINE_NAME mv /var/lib/rrdcached/db/pve2-storage/pve-analise-xx /var/lib/rrdcached/db/pve2-storage/$MACHINE_NAME systemctl stop pve-cluster systemctl stop corosync pmxcfs -l mv /etc/pve/nodes/pve-analise-xx /etc/pve/nodes/$MACHINE_NAME killall pmxcfs cd / tar -xzpf /opt/node_template_config/etc.tgz sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" /etc/hosts sed -i "s/TEMPLATEIPADDR/$IP/g" $DISKDIR/etc/hosts sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" /etc/hostname sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" /etc/mailname sed -i "s/TEMPLATENAME/$MACHINE_NAME/g" /etc/postfix/main.cf reboot
Доустановить и настроить SAMBA
apt-get install samba adduser storage smbpasswd -a storage smbpasswd -e storage
mkdir /zfspool/storage chown storage:storage /zfspool/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 = /zfspool/storage read only = No veto files = /._*/.DS_Store/.T*/Thumbs.db/Network Trash Folder/Temporary Items/*.exe/*.bat/*.msi delete veto files = yes
Набор действий (вручную) для настройки одного узла
Всё из-под пользователя
root
Переименовать машину
export NEWNAME='pve-prdb-xx' hostnamectl set-hostname $NEWNAME
, где:
xx
это порядковый номер машины
Подвинуть раздел lvm до конца физического диска
############# # Внимание! # ############# Операции из этого раздела лучше сразу выполнить из partedmagic, чтобы не перезагружаться
Вручную
Запустить gparted и подвинуть раздел с lvm до конца физического диска
Командой
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
Внимание! Имя узла должно быть такое же, как в команде переименования!