Mprdb: различия между версиями
Перейти к навигации
Перейти к поиску
Vovan (обсуждение | вклад) (→Автоматический скрипт для запуска из pmagic) |
Vovan (обсуждение | вклад) (→Очистка pve ноды от кластерных настроек) |
||
(не показано 48 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
=Подготовка PVE ноды после клонирования из базового образа= | =Подготовка PVE ноды после клонирования из базового образа= | ||
− | + | Где лежит базовый образ? | |
− | + | apve3: /mnt/samba/fdisk3/pve-template-xx-15gb.dd | |
− | |||
− | |||
− | + | =Скрипт переименования машин= | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Выполнить из pve== | |
− | |||
− | |||
− | |||
− | |||
− | |||
+ | Сначала нужно войти в рута. Для этого нужно открыть терминал и набрать | ||
− | + | su - | |
− | |||
− | |||
− | + | затем ввести пароль от пользователя root | |
− | |||
+ | Далее в рутовой консоли выполнить сначала команду | ||
+ | MACHINE_NAME='pve-prdb-XX' | ||
+ | , где XX -- это реальный номер машины из диапазона 01-14 | ||
− | + | Далее выделить весь набор команд ниже и бросить их в тот же терминал, в котором выполнялась предыдущая команда | |
− | |||
− | + | <pre> | |
− | + | DISK='/dev/nvme0n1' | |
− | |||
− | |||
− | / | ||
− | |||
− | + | # resize lvm partition | |
− | + | fdisk $DISK <<EOF | |
+ | d | ||
+ | 2 | ||
+ | n | ||
+ | p | ||
+ | 2 | ||
− | |||
− | |||
− | + | N | |
− | + | w | |
+ | EOF | ||
− | + | # refresh partitions | |
− | + | partprobe | |
− | + | # resize pv | |
− | + | pvresize "${DISK}p2" | |
− | |||
− | |||
− | |||
− | + | # rescan volume groups | |
+ | vgchange -ay | ||
+ | # create lvm and zfs pool in this | ||
+ | lvcreate -y debian-vg --name vmstorage -L 400g | ||
+ | zpool create zfspool /dev/mapper/debian--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 vmbr0 | tail -1 | awk {'print $2'} | awk -F '/' {'print $1'}) | ||
− | + | systemctl stop pve-cluster | |
− | + | mv /var/lib/rrdcached/db/pve2-node/pve-template-xx /var/lib/rrdcached/db/pve2-node/$MACHINE_NAME | |
+ | mv /var/lib/rrdcached/db/pve2-storage/pve-template-xx /var/lib/rrdcached/db/pve2-storage/$MACHINE_NAME | ||
− | + | sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/hosts | |
+ | sed -i "s/172.16.224.227/$IP/g" $DISKDIR/etc/hosts | ||
+ | sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/hostname | ||
+ | sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/mailname | ||
+ | sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/postfix/main.cf | ||
− | + | reboot | |
− | + | </pre> | |
− | + | =Доустановить и настроить SAMBA= | |
− | + | Это если вдруг самба не была установлена в базовый образ. В образе | |
− | |||
− | |||
− | |||
− | + | apve3: /mnt/samba/fdisk3/pve-template-xx-15gb.dd | |
− | + | она уже установлена и настроена на каталог | |
− | + | /zfspool/storage | |
− | + | поэтому каталог этот нужно создать после создания пула zfs (см. в скрипте создание этого каталога -- это для этого) | |
− | |||
− | |||
− | |||
− | |||
− | + | apt-get install samba | |
+ | adduser storage | ||
+ | smbpasswd -a storage | ||
+ | smbpasswd -e storage | ||
− | + | mkdir /zfspool/storage | |
+ | chown storage:storage /zfspool/storage -R | ||
− | + | положить это в | |
− | <pre> | + | /etc/samba/smb.conf |
− | d | + | |
− | + | <pre> | |
− | + | # 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 | ||
− | |||
− | |||
− | |||
</pre> | </pre> | ||
− | + | =Очистка pve ноды от кластерных настроек= | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Актуально только когда на ноде нет виртуальных машин. Если есть, то чуть сложнее. Описано здесь: https://pve.proxmox.com/wiki/Cluster_Manager | |
systemctl stop pve-cluster | systemctl stop pve-cluster | ||
systemctl stop corosync | systemctl stop corosync | ||
pmxcfs -l | pmxcfs -l | ||
− | + | rm /etc/pve/corosync.conf | |
+ | rm -r /etc/corosync/* | ||
killall pmxcfs | killall pmxcfs | ||
− | + | systemctl start pve-cluster | |
− | |||
− |
Текущая версия на 18:41, 1 июня 2021
Содержание
Подготовка PVE ноды после клонирования из базового образа
Где лежит базовый образ?
apve3: /mnt/samba/fdisk3/pve-template-xx-15gb.dd
Скрипт переименования машин
Выполнить из pve
Сначала нужно войти в рута. Для этого нужно открыть терминал и набрать
su -
затем ввести пароль от пользователя root
Далее в рутовой консоли выполнить сначала команду
MACHINE_NAME='pve-prdb-XX'
, где XX -- это реальный номер машины из диапазона 01-14
Далее выделить весь набор команд ниже и бросить их в тот же терминал, в котором выполнялась предыдущая команда
DISK='/dev/nvme0n1' # resize lvm partition fdisk $DISK <<EOF d 2 n p 2 N w EOF # refresh partitions partprobe # resize pv pvresize "${DISK}p2" # rescan volume groups vgchange -ay # create lvm and zfs pool in this lvcreate -y debian-vg --name vmstorage -L 400g zpool create zfspool /dev/mapper/debian--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 vmbr0 | tail -1 | awk {'print $2'} | awk -F '/' {'print $1'}) systemctl stop pve-cluster mv /var/lib/rrdcached/db/pve2-node/pve-template-xx /var/lib/rrdcached/db/pve2-node/$MACHINE_NAME mv /var/lib/rrdcached/db/pve2-storage/pve-template-xx /var/lib/rrdcached/db/pve2-storage/$MACHINE_NAME sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/hosts sed -i "s/172.16.224.227/$IP/g" $DISKDIR/etc/hosts sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/hostname sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/mailname sed -i "s/pve-template-xx/$MACHINE_NAME/g" /etc/postfix/main.cf reboot
Доустановить и настроить SAMBA
Это если вдруг самба не была установлена в базовый образ. В образе
apve3: /mnt/samba/fdisk3/pve-template-xx-15gb.dd
она уже установлена и настроена на каталог
/zfspool/storage
поэтому каталог этот нужно создать после создания пула zfs (см. в скрипте создание этого каталога -- это для этого)
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
Очистка pve ноды от кластерных настроек
Актуально только когда на ноде нет виртуальных машин. Если есть, то чуть сложнее. Описано здесь: https://pve.proxmox.com/wiki/Cluster_Manager
systemctl stop pve-cluster systemctl stop corosync pmxcfs -l rm /etc/pve/corosync.conf rm -r /etc/corosync/* killall pmxcfs systemctl start pve-cluster