24.11.2024

Установка Proxmox и Storage VM FC-SAN

Установка

  • Standalone – одиночная инсталляция, где хранилище виртуальных машин доступно одному гипервизору
  • Cluster – кластерная инсталляция, где хранилище виртуальных машин доступно нескольким гипервизорам

Скачать Proxmox

Выбор файловой системы для основной операционной системы Proxmox

  • Если сервер имеет аппаратный RAID то собираем RAID1 (зеркало из 2 дисков под систему) и используем ext4
  • Если аппаратного RAID нет используем 2 диска для создания зеркала на базе ZFS, после обязательно нужно ограничить кеширования для ZFS
Файл подкачки не используется, потому как будет замедлять работу сервера в случае нехватки памяти. Помимо этого для ZFS он вреден. Контролируйте и планируйте расход оперативной памяти.

Подключаем репозиторий для обновления Proxmox

nano /etc/apt/sources.list.d/pve-no-subscription.list

# Proxmox VE pve-no-subscription repository provided by proxmox.com
# NOT recommended for production use
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

nano /etc/apt/sources.list.d/pve-enterprise.list

#deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise

nano /etc/apt/sources.list.d/ceph.list

#deb https://enterprise.proxmox.com/debian/ceph-quincy bookworm enterprise

Выполняем обновление

apt update && apt upgrade -y && apt-autoremove -y

Установка компонентов для HPE Gen8, 9

wget https://downloads.linux.hpe.com/SDR/repo/mcp/Debian/pool/non-free/hp-ams_2.6.2-2551.13_amd64.deb
dpkg -i hp-ams_2.6.2-2551.13_amd64.deb

Ограничение в ресурсах ZFS

Проверяем сколько выделяется оперативной памяти

cat /sys/module/zfs/parameters/zfs_arc_min
cat /sys/module/zfs/parameters/zfs_arc_max

Меняем настройки выделения оперативной памяти для нужд ZFS nano /etc/modprobe.d/zfs.conf

# MIN 2Gb
options zfs zfs_arc_min=2147483648
# MAX 4Gb
options zfs zfs_arc_max=4294967296

Обновляем загрузчик и перезагружаем ноду

update-initramfs -u -k all
pve-efiboot-tool refresh
reboot

Смотрим отчет ZFS Subsystem Report

arc_summary -s arc

#ZFS Subsystem Report Thu Nov 21 07:40:25 2024
#Linux 6.8.12-2-pve 2.2.6-pve1
#Machine: pve-01 (x86_64) 2.2.6-pve1

#ARC status: HEALTHY
#   Memory throttle count: 0

#   ARC size (current): 93.7 % 3.7 GiB
#   Target size (adaptive): 100.0 % 4.0 GiB
#   Min size (hard limit): 50.0 % 2.0 GiB
#   Max size (high water): 2:1 4.0 GiB

Отказаться от LVM-Thin на системном диске

Относится только если вы выбрали файловую систему ext4

Удаляем LVM-Thin через web интерфейс

  • Идем в пункт меню расположенный в меню ноды Datacenter->PVE->Disks->LVM-Thin
  • Выбираем диск data
  • Наживаем в правом углу More и выбираем Destroy
  • Подтверждаем pve/data

Расширение раздела /pve/root

lvextend -l +100%FREE /dev/pve/root
resize2fs /dev/pve/root

Настраиваем много целевой доступ MPIO

Подробнее о том как настроить описано тут на примере HPE MSA и HPE 3Par

Монтируем хранилище как папку через web интерфейс для установки Standalone

После подключения LUN, необходимо создать файлововую систему и смонтировать в директорию в нашем случае это /data/vms
  • Идем в пункт меню расположенный в меню  датацентра Datacenter->Storage
  • Сверху слева жмем Add
    • ID – Видимое имя VMStorage
    • Directory – путь к используемой директории /data/vms
    • Content – Disk image, Container

Монтируем хранилище как lvm-shared через web интерфейс для установки Cluster

После подключения LUN, ненужно создавать файловую систему. Но можно создать LVM.
sgdisk -N 1 /dev/dm-2
pvcreate --metadatasize 250k -y -ff /dev/dm-2
vgcreate vms /dev/dm-2
  • Идем в пункт меню расположенный в меню датацентра Datacenter->Storage
  • Сверху слева жмем Add
    • ID – Видимое имя VMStorage
    • Необходим включённый пункт Shared

Варианты создания кластерной файловой системы

Кластерная файловая система ocfs2

apt-get install ocfs2-tools o2cb register-cluster VMBocfs2 nano /etc/ocfs2/cluster.conf

cluster:
    node_count = 3
    name = VMBocfs2

node: ip_port = 7777
    ip_address = 192.168.100.11
    number = 0
    name = pve02
    cluster = VMBocfs2

node: ip_port = 7777
    ip_address = 192.168.100.12
    number = 0
    name = pve02
    cluster = VMBocfs2

node: ip_port = 7777
    ip_address = 192.168.100.13
    number = 0
    name = pve02
    cluster = VMBocfs2

dpkg-reconfigure ocfs2-tools

#
# This is a configuration file for automatic startup of the O2CB
# driver. It is generated by running 'dpkg-reconfigure ocfs2-tools'.
# Please use that method to modify this file.
#

# O2CB_ENABLED: 'true' means to load the driver on boot.
O2CB_ENABLED=true

# O2CB_BOOTCLUSTER: If not empty, the name of a cluster to start.
O2CB_BOOTCLUSTER=VMBocfs2

# O2CB_HEARTBEAT_THRESHOLD: Iterations before a node is considered dead.
O2CB_HEARTBEAT_THRESHOLD=32

# O2CB_IDLE_TIMEOUT_MS: Time in ms before a network connection is considered dead.
O2CB_IDLE_TIMEOUT_MS=32000

# O2CB_KEEPALIVE_DELAY_MS: Max. time in ms before a keepalive packet is sent.
O2CB_KEEPALIVE_DELAY_MS=3000

# O2CB_RECONNECT_DELAY_MS: Min. time in ms between connection attempts.
O2CB_RECONNECT_DELAY_MS=3000

service oc2b status service ocfs2 status Создаем файловую систему ocfs2 mkfs.ocfs2 -L “vmbackup” -N 4 /dev/mapper/vmb -F nano /etc/fstab

# backup
/dev/mapper/vmb /mnt/backup ocfs2 _netdev,nointr 0 0

Проверяем монтирование

mkdir -p /mnt/backup
systemctl daemon-reload
mount -a


Дополнительная информация