Система віртуалізації з відкритим вихідним кодом заснована на Debian GNU/Linux. Розробляється австрійською фірмою Proxmox Server Solutions GmbH, яка спонсорується Internet Foundation Austria. Як гіпервізори використовує KVM та OpenVZ. Відповідно, здатна виконувати будь-які підтримувані KVM ОС (Linux, *BSD, Windows та інші) з мінімальними втратами продуктивності та Linux без втрат. Управління віртуальними машинами та адміністрування самого сервера проводяться через веб-інтерфейс або через стандартний інтерфейс командного рядка Linux. Для створюваних віртуальних машин є безліч опцій: використовуваний гіпервізор, тип сховища (файл образу або LVM), тип емульованої дискової підсистеми (IDE, SCSI або VirtIO), тип емульованої мережевої карти, кількість доступних процесорів та інші .
sudo adduser username New password: <type your password> Retype new password: <retype your password> ... Is the information correct? [Y/n] Y usermod -aG sudo username
На жаль, розробники нав'язливо рекомендують оформити платну передплату на їхнє комерційне оновлення. Та й ціна покусується. Тому відвучаємо від жадібності.
Для початку необхідно відключити підписку на платний репозиторій, доступу до якого зазвичай немає. Для цього редагуємо файл
/etc/apt/sources.list.d/pve-enterprise.list
і наводимо його до такого вигляду:
#deb https://enterprise.proxmox.com/debian/pve buster pve-enterprise deb http://download.proxmox.com/debian/pve buster pve-no-subscription
apt -y update && apt -y full-upgrade
apt-get install libperl-dev gcc make gnupg net-tools sudo wget curl mc ifupdown2 openvswitch-switch
nano /etc/network/interfaces /etc/init.d/networking restart systemctl restart networking #reboot
Для прокидання переферії всередину віртуалок на Інтелівських хостах проробимо наступне
root@pve0:~# nano /etc/default/grub #GRUB_CMDLINE_LINUX_DEFAULT="quiet" GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt" root@pve0:~# update-grub root@pve0:~# reboot
після чого прокинути фізичну сіркову карту в вм стане можливим Source
root@pve1:~# pvenode config set --acme domains=pve0.example.com root@pve1:~# pvenode acme account register default a.system@example.com Directory endpoints: 0) Let's Encrypt V2 (https://acme-v02.api.letsencrypt.org/directory) 1) Let's Encrypt V2 Staging (https://acme-staging-v02.api.letsencrypt.org/directory) 2) Custom Enter selection: 0 Attempting to fetch Terms of Service from 'https://acme-v02.api.letsencrypt.org/directory'. Terms of Service: https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf Do you agree to the above terms? [y|N]: y Примітка, що register account with 'https://acme-v02.api.letsencrypt.org/directory'.. Generating ACME account key. Registering ACME account. Registration successful, account URL: 'https://acme-v02.api.letsencrypt.org/acme/acct/122167440' Task OK root@pve1:~# pvenode acme cert order ... Status is 'valid', domain 'pve0.example.com' OK! ... Order is ready, finalizing order valid! ... Restarting pveproxy Task OK
adduser test pveum user list pveum user add test@pam pveum user list pveum acl modify < acl path like / > --roles PVEAdmin --users test@pam pveum user list
root@pve0:~# lvremove /dev/pve/data Do you really want to remove and DISCARD активного логічного volume pve/data? [y/n]: y Logical volume "data" успішно вилучений root@pve0:~# lvresize -l +100%FREE /dev/pve/root Size of logical volume pve/root changed from 18.25 GiB (4672 extents) to <65.99 GiB (16894 extents). Logical volume pve/root successfully resized. root@pve0:~# resize2fs /dev/mapper/pve-root resize2fs 1.44.5 (15-Dec-2018) Filesystem at /dev/mapper/pve-root is mounted on /; on-line resizing required old_desc_blocks = 3, new_desc_blocks = 9 Filesystem на /dev/mapper/pve-root is now 17299456 (4k) блоки long.
Для підключення дискових масивів по мережі SAN необхідно спочатку дозволитиданому хосту підключатися до сервера СГД.
У нашому випадку ми будемо підключатися до HP MSA p2000 g3 FC. Всі інструкції тут.
Наступним кроком необхідно навчити наш сервер працювати з масивами через multipath. Приступимо.
У прикладі до віртуального сервера на базі ОС Debian GNU/Linux 10 з мережі FC SAN підключений дисковий том (RAID-масив) з системи зберігання даних HP StorageWorks Modular Smart Array p2000 g3 FC. Підключення тома виконано двома шляхами, тобто через дві окремі фабрики FC SAN. Для того, щоб задіяти механізм multipath (Device Mapper Multipath/DM-multipath), який дозволить звертатися до цих двох дискових пристроїв, доступних по різних шляхах, як до одного пристрою Debian Linux нам потрібно встановити пакет multipath-tools.
apt-get install multipath-tools scsitools
Після інсталяції пакета не створюється опорний конфігураційний файл /etc/multipath.conf, а механізм multipath використовує конфігурацію за замовчуванням. Подивитися те, яку базову конфігурацію використовує служба multipath-tools можна командою:
# echo 'show config' | multipathd -k
Подивимося, що знайшла служба multipath-tools у нашій системі
# multipath -ll
Якщо ми раптом бачимо, що крім дисків, що дійсно мають кілька шляхів підключення, в конфігурацію multipath потрапляють якісь локальні пристрої, наприклад, на серверах HP це можуть бути логічні диски з RAID-контролера HP Smart Array cciss/c0d1, то потрібно створити файл додаткової конфігурації
mkdir -p /etc/multipath/conf.d/ nano /etc/multipath/conf.d/multipath.conf
і додати в нього власне правило.
blacklist { devnode "^cciss\/c[0-9]d[0-9]*" }
також додамо конфігурацію нашого пристрою СГД
devices { device { vendor "HP" product "P2000 G3 FC|P2000G3 FC/iSCSI|P2000 G3 SAS|P2000 G3 iSCSI" path_grouping_policy "group_by_prio" path_selector "round-robin 0" path_checker "tur" features "0" hardware_handler "0" prio "alua" failback "immediate" rr_weight "uniform" no_path_retry 9 rr_min_io 100 } }
Правила, описані нами в даному випадку у власному конфігураційному файлі /etc/multipath/conf.d/multipath.conf сумуватимуться з правилами базової конфігурації служби multipath-tools
489 rescan-scsi-bus.sh 490 lsblk 493 multipath -a /dev/sdd wwid '3600c0f.....26001000000' added 494 nano /etc/multipath/conf.d/multipath.conf blacklist_exceptions { ... wwid "3600c0f.....26001000000" } ... multipaths { ... multipath { wwid 3600c0f.....26001000000 alias MSA0_A3 } }
495 systemctl restart multipath-tools.service 496 systemctl restart multipathd 497 multipath-ll 498 ls /dev/mapper/
Після внесення змін до конфігурації multipath виконаємо перезапуск служби
# systemctl restart multipath-tools.service # systemctl restart multipathd
Перевіримо
# multipath -ll
Якщо нічого не змінилося, залишається перезавантажити хост. Надалі після перезавантаження, томи додаються одразу.
результат:
MSA1S1200 (3600c0ffxxxxxxxxxxxxxxxxxx6001000000) dm-34 HP,P2000 G3 FC size=1.1T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw |-+- policy='round-robin 0' prio=50 status=active | `- 2:0:0:3 sdb 8:16 active ready running `-+- policy='round-robin 0' prio=10 status=enabled `- 5:0:0:4 sdc 8:32 active ready running
Те що потрібно! Том визначився multipath під псевдонімом MSA1S1200.
Перевіримо вміст, якщо не новий
# ls /dev/mapper/MSA1S1200
Якщо це новий масив, то на ньому потрібно створити файлову систему.
pvcreate /dev/mapper/MSA1S1200 vgcreate MSA1S1200 /dev/mapper/MSA1S1200
Далі переходимо в Веб панель → Датацентр → Сховище → Додати → LVM
У діалоговому вікні:
ід: MSA1S1200 Група томів: MSA1S1200
Решта за замовчуванням
При кожному вході в систему нам виводитиметься чудове повідомлення, що непогано було б купити техпідтримку. Щоб уникнути цієї радості, необхідно зробити таке:
https://github.com/Jamesits/pve-fake-subscription/tree/v0.0.8
wget https://github.com/Jamesits/pve-fake-subscription/releases/download/v0.0.9/pve-fake-subscription_0.0.9+git-1_all.deb dpkg -i pve-fake-subscription_*.deb pve-fake-subscription
Викликаємо на редагування файл /usr/share/pve-manager/ext4/pvemanagerlib.js
І наводимо його до такого вигляду:
root@proxmox:/# diff -Naur /usr/share/pve-manager/ext4/pvemanagerlib.js.original /usr/share/pve-manager/ext4/pvemanagerlib.js --- /usr/share/pve-manager/ext4/pvemanagerlib.js.original 2013-08-20 08:07:54.000000000 +0100 +++ /usr/share/pve-manager/ext4/pvemanagerlib.js 2013-08-21 18:16:22.417007719 +0100 @@ -447,22 +447,7 @@ success: function(response, opts) { var data = response.result.data; - if (data.status !== 'Active') { - Ext.Msg.show({ - title: 'No valid subscription', - icon: Ext.Msg.WARNING, - msg: PVE.Utils.noSubKeyHtml, - buttons: Ext.Msg.OK, - callback: function(btn) { - if (btn !== 'ok') { - return; - } - orig_cmd(); - } - }); - } else { - orig_cmd(); - } + orig_cmd(); } }); },
Від версії до версії рядки зміщуються, але як слід зробити за наведеним прикладом цілком зрозуміло.
systemctl stop pve-cluster corosync pmxcfs -l rm -r /etc/corosync/* rm /etc/pve/corosync.conf killall pmxcfs systemctl start pve-cluster
https://github.com/Mr-Method/proxmox-stuff
cd /etc/cron.daily/ wget https://raw.githubusercontent.com/DerDanilo/proxmox-stuff/master/prox_config_backup.sh chmod +x ./prox_config_backup.sh mv -v prox_config_backup.sh prox_config_backup
modify script: comment line with “description” at the end of file; change DEFAULT_BACK_DIR destenation;
nano prox_config_backup
Proxmox. Полное руководство. 2е изд.
https://forum.proxmox.com/threads/proxmox-ve-6-removing-cluster-configuration.56259/
http://pyatilistnik.org/spisok-komand-hpssacli-dlya-rabotyi-s-raid-smart-array-p410i-na-esxi-5-5/
http://downloads.linux.hpe.com/SDR/project/mcp/
https://wiki.webko.net.ua/index.php?title=HP_ProLiant_G8#SNMP_OID_List_for_iLO4
http://sysadm.pp.ua/linux/monitoring-systems/hpraid-monitoring.html
https://pve.proxmox.com/wiki/Disk_Health_Email_Alerts
fail2ban
https://pve.proxmox.com/wiki/Fail2ban
for freebsd
https://www.freebsd.org/cgi/man.cgi?query=virtio&sektion=4
open vSwitch
http://vladimir-stupin.blogspot.com/2016/06/open-vswitch-debian.html
fix ssh batch
https://soar.name/ru/pro/linux-memory-hotplug/
for f in `grep -Fl offline /sys/devices/system/memory/*/state`; do echo online > $f; done;
other