Переход на Proxmox (Proxmox GmbH, Vienna, Austria) с Hyper-V by Microsoft и VMware by Broadcom. Часть седьмая из многих
Для лиги лени: общеизвестное и душное.
Часть 1. Общая
Часть 2. Gitlab и Nexus
Часть 3. Ansible и Ansible AWS
Часть 4. Наконец переходим к Proxmox
Часть 5, не запланированная. Обновляем Proxmox с 8.4 до 9.0. Неудачно.
Часть 6. Возвращаемся к запуску Ansible
Разница концепций. Часть 7.1 Обновления компонентов и система информирования.
13 августа 2025 года вышло обновление Proxmox до 9.0.5
было pve-manager/9.0.3/025864202ebb6109 (running kernel: 6.14.8-2-pve)
стало pve-manager/9.0.5/9c5600b249dbfd2f (running kernel: 6.14.8-2-pve)
Но искать «что там было обновлено», это тот еще процесс.
То есть:
Вот большая статья: вышла версия 9, Proxmox Virtual Environment 9.0 with Debian 13 released
Вот Git с фиксами.
После обновления до 9.0.5, внезапно появился
/etc/apt/sources.list.d/pve-enterprise.sources
да и ладно
У Broadcom VMware все проще – вот патч (сейчас официально только по подписке), вот компоненты в нем.
У Microsoft все еще проще – вот MicrosoftUpdate Catalog. Если выходят бесплатные обновления (для 2012 и 2012R2 – только платные, нужна подписка Extended Security Updates (ESU) for Windows Server, для 2008 нужна подписка premium assurance. Но обновления выходят, например:
2025-08 Security Monthly Quality Rollup for Windows Server 2008 R2 for x64-based Systems (KB5063947)
Поэтому можно сходить на
http://download.proxmox.com/debian/pve/dists/bookworm/pve-no...
http://download.proxmox.com/debian/pve/dists/trixie/
Скачать там файл
http://download.proxmox.com/debian/pve/dists/trixie/pve-no-s...
И увидеть, цитата
Package: pve-manager
Maintainer: Proxmox Support Team support@proxmox.com
Installed-Size: 3573
Provides: vlan, vzdump
Depends: apt (>= 1.5~), ..
Recommends: proxmox-firewall, proxmox-offline-mirror-helper, pve-nvidia-vgpu-helper
Conflicts: vlan, vzdump
Breaks: libpve-network-perl (<< 0.5-1)
Replaces: vlan, vzdump
Filename: dists/trixie/pve-no-subscription/binary-amd64/pve-manager_9.0.5_all.deb
Size: 580388
Окей, а как-то поудобнее можно?
Конечно после обновления можно увидеть:
cat /var/log/apt/history.log
Но это после обновления.
Очень, очень не хватает решения типа Windows Server Update Services (WSUS), но для Linux и Proxmox. Foreman+Katello говорят «ок». RedHat Satellite ? SpaceWalk:Satellite ?
Разница концепций. Часть 7.2 Сети
В ESXi «из коробки» все просто. Есть стандартный свитч, vSphere Standard Switch, vSS. Он мало чего умеет «из коробки», но самое главное, что вы можете завести несколько коммутаторов, и распределять физические порты сетевых карт, и порты виртуальных сервисов – самого менеджмента, сервисов, итд, как вам нравится.
Вместе с некоторыми (их опять поменяли) лицензиями вы получали vSphere Distributed Switch (VDS), с дополнительными функциями.
Если хотите добавить в жизнь интима - Single Root I/O virtualization (SR-IOV).
Хотите чего-то большего – покупайте VMware NSX.
У Microsoft в чем-то схожий подход. Есть Hyper-V switch с массой настроек исключительно из powershell.
Хотите большего – добро пожаловать в увлекательный мир Network Controller Server Role.
Хотите того же самого, но иначе – вот вам Set up networking for Hyper-V hosts and clusters in the VMM fabric, вот вам Set up logical networks in the VMM fabric, и вперед.
У Proxmox все немного не так. То есть, так то так, архитектура та же, x86, но.
За уровень «стандартного коммутатора» отвечает стандартный функционал Linux. Проблема в том, что он (как, впрочем, и в Broadcom, и в Microsoft) читаемо и полноценно настраивается только из командной строки. Режима Switch Embedded Teaming (SET) в нем нет, есть active-active bond, но.
Red Hat пыталась сделать что-то такое же, и даже статья есть - 8.3. Comparison of Network Teaming to Bonding, но это Red Hat.
Чтобы в этом разбираться, все равно необходим базовый уровень знания сети, в масштабе CCNA: Switching, Routing, and Wireless Essentials, он же CCNA Routing & Switching ICND1 100-105 Course. Иначе вопросов будет больше, чем ответов. У Broadcom есть best practice – собирайте actve-active, LACP не нужен. Если вы упрт нркмн, то вот вам beacon probe и shotgun mode, можете упртс. Если хотите совсем упртс, то вот вам air-gap storage fabric, только лучше бы вы так не делали.
У Microsoft есть best practice – просто ставьте SET, он сам разберется.
У proxmox, их-за наличия Bridge, который по сути L2 switch, и iptables, появляется L3 конфигурация с NAT, но планирование сети заставляет каждый раз думать «как лучше-то».
Кроме того, в конфигурации сети отдельно английским по белому написано:
For the cluster network (Corosync) we recommend configuring it with multiple networks. Corosync does not need a bond for network redundancy as it can switch between networks by itself, if one becomes unusable. Some bond modes are known to be problematic for Corosync, see Corosync over Bonds.
Особенно мне понравилась строчка:
We recommend at least one dedicated physical NIC for the primary Corosync link
То есть, поскольку сетевые карты нынче идут, чаще всего, с двумя портами, то надо брать 2 карты по 2 порта, всего 4 порта, и один порт выделять под Corosync. Но если у меня конфигурация нормального человека, 2 порта по 25, это мне что, под кластер надо выделять целых 25G? А не жирновато?
При этом сценарии отказа описаны понятно и обоснованно, но как-то заставляют задуматься. Это же придется ставить на мониторинг не только состояние порта on\off\ CRC, но и, для оптики, уровень сигнала по SFP модулям с обеих сторон, RX power \ TX power.
Середины (типа vSphere Distributed Switch (VDS)) нет.
Зато есть SDN
От теории к практике.
Поскольку для этой серии статей у меня Proxmox развернут как вложенная (nested) виртуализация, то мне придется или переделать всю сеть, или пересобирать рабочие стенды, или ограничиться двумя виртуальными сетевыми картами.
К моему величайшему отвращению, Hyper-V Windows 11 'Default Switch' зачем-то снабжен никак нормально не настраиваемым DHCP сервером. В Server 2012\2016\2019\2022\2025 такого нет, если нет DHCP в сети, значит нет сети.
Конфигурация хоста Hyper-V:
Get-VMSwitch 'Default Switch' | fl – от этого виртуального свича все отключено.
Вот он мне и вредил, поскольку в нем и NAT и DHCP , и ничего в нем не настраивается, согласно Change Hyper-V (Default Switch) IP address range.
The Hyper-V Default Switch will randomly use one these IP address ranges based on the host system IP address:
Start IP: 192.168.0.0 – End IP: 192.168.255.255
Start IP: 172.17.0.0 – End IP: 172.31.255.255
Поэтому я новый виртуальный свитч и сделал, режим external. И все у него хорошо.
Конфигурация proxmox по умолчанию
auto lo
iface lo inet loopback
iface eth0 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.10.202/24
gateway 192.168.10.1
bridge-ports eth0
bridge-stp off
bridge-fd 0
Конфигурация с двумя виртуальными сетевыми картами у меня будет выглядеть так:
auto lo
iface lo inet loopback
iface eno1 inet manual
iface eno2 inet manualauto bond0
iface bond0 inet manual
bond-slaves eno1 eno2
bond-miimon 100
bond-mode active-backup
bond-xmit-hash-policy layer2+3
auto vmbr0iface vmbr0 inet static
address 192.168.10.202/24
gateway 192.168.10.1
bridge-ports bond0
bridge-stp off
bridge-fd 0
Конфигурация с VLAN для рабочих сред описана в разделе Example: Use VLAN 5 for the Proxmox VE management IP with VLAN aware Linux bridge, конфигурация The next example is the same setup but a bond is used to make this network fail-safe.
Разница концепций. Часть 7.3 предисловие к теме «Дисковое пространство».
Чтобы понимать незначительные сложности, нужно немного отойти назад, в состояние «дисковых пространств» 15-20 лет назад, и огромный скачок для всего человечества за последние пять лет.
15 назад, в 2010 году, концепция дисковых пространств была достаточно проста.
Есть одиночные локальные диски, которые могут быть включены по IDE (уже крайне редко на тот момент), SATA, SCSI и SAS. Но интерфейс особого значения не имеет (то есть, еще как имеет, но это другая история), потому что глобально выбора конфигурации особо и нет.
Для домашней и офисной техники: 1 диск, без всяких массивов.
Для дисков с операционной системой: аппаратный RAID 1 (зеркало) из 2 дисков. Не надо забывать, что диски тогда были маленькими, как 72GB 2.5-inc SFF 3G Single Port SAS 10K, 146GB SCSI U320 или 146GB hot-plug Serial Attached SCSI (SAS).
Для дисков с данными для «быстрого» доступа: аппаратный RAID 10.
Для дисков с данными для «медленного» доступа: аппаратный RAID 5, если у вас диски меньше 1 терабайта, аппаратный RAID 6, если у вас диски больше 1 терабайта.
Потому что, запишите это уже большими буквами: RAID 5 на дисках бытового и начально-корпоративного сегмента, при размере одиночного диска больше 1 Тб, достаточно часто умирает при стандартном ребилде. Вероятности считайте сами.
Плюс локально включенные коробки с дисками.
И, для дисковых массивов, у вас есть FC 4g (c 2004), FC 8g (с 2008), и с 2007 года есть 10G Ethernet для iSCSI. 25G Ethernet появится только в 2018 году.
NFS поверх 1\10G, конечно, тоже уже есть. Apple File Service (AFS) еще не умер.
Современные технологии быстрого перестроения массивов уже почти есть в HPE Eva.
Еще есть InfiniBand, но дорого.
Основная проблема – ребилд. Это долго, это дорого с точки зрения потери производительности, но это зачастую проще, чем переставлять ОС или поднимать данные из архивов. Поэтому везде RAID 1\10 и еще раз RAID. Альтернативы были, но все равно, RAID это было просто, понятно, наглядно, и не требует вмешательства администратора, особенно если есть запасной диск.
Сейчас все поменялось.
Окончательно ушли в историю диски на 15.000 и 10.000 оборотов, и та же судьба уже видна для дисков 7200 для массивов, и для дисков 5400 для ноутбуков. SSD с двумя оставшимися вариантами подключения, SAS и NVME, побеждают почти везде.
Появились технологии для гиперскейлеров, и не только – S2D, vSAN (StarWind дано был). И то, и другое, уже не redundant array of inexpensive disks, а Redundant Array of Independent Nodes (RAIN) .
Сети стали быстрее, диски быстрее, объемнее, и возникает другой вопрос – старые RAID контроллеры перестали справляться с производительностью новых дисков. Новые RAID контроллеры тоже не блещут при работе с NVME, но это уже другая история:
NVME Raid – We Need To Go Deeper, или что там на глубине. GPU over NVME, с водяным охлаждением
Проблема даже не в этом, а в том, что нет смысла держать разные диски на передней панели «под ОС и «под данные», с точки зрения работы, закупок, и в целом. Удобнее использовать один тип дисков, и никто не перепутает. В таком случае проще поставить или PCIe карту на 2 m.2 планки, или взять internal M.2 boot module или что-то типа Dell BOSS, собрать недоаппаратный или программный рейд на такой карте, и отдать остальные одинаковые диски, установленные в передние слоты, под данные, собрав тот или иной вид программного рейда.
НО.
Дальше начинаются «проблемы legacy 2.0».
В корпоративном варианте заказчику, за очень дорого, продадут и S2D и vSAN, со всеми их свистелками, типа быстрого перестроения при сбое, RAID 5+6, поддержке RDMA. Продадут со свичами Arista или Mellanox с их скоростями и cut-through (вместо Store-and-Forward), и lossless Ethernet, и так далее. Это все есть, это все работает, как и последние навороты в MPIO для IP в NVIDIA ConnectX-8 .
Это все есть, но это: 1) дорого 2) требует настройки 3)требует переписать драйвера 4)требует настроить сеть и следить за ней.
В то же время, существуют, как продукты, Ceph и drbd, то есть Linstor. И не только.
Они работают, но. Но настройка, скорость работы (задержки, и как следствие IOPS), проблемы связности, проблемы на ребилде, пожирание памяти как не в себя, и так далее.
В домашней лаборатории, где все работает, а отказ или split brain или остановка сервисов не важны – CEPH работает.
В масштабах VK – тоже работает, вопрос какой ценой.
Ceph вырос как проект 2007 года, времен медленных дисков небольшого объема, отсутствия на рынке «дешевого» варианта собрать хранилище на петабайт и больше, и даже работал, но в 2020 - 2021 году начал уходить с рынка. SUSE отказалась от развития, еще кто-то отказывался. FUJITSU Storage ETERNUS CD10000 S2 - The sale of this product was terminated in December 2019.
Причины понятны, сейчас петабайт хранения требует не двух стоек, а двух юнитов в одной стойке, а рынок опять меняется.
Поэтому Ceph для дома – пожалуйста, Ceph для VK облака или каких-то еще облаков – сколько угодно. Ceph для SMB или чуть выше – не знаю, зачем настолько жертвовать производительностью и иметь бонусом головную боль при обновлениях. И еще один не очевидный многим нюанс ниже.
Но люди верят, что он работает (это почти правда, если не рассматривать ребилд), быстрый (нет), надежный (очень не всегда). Вопрос цены. Люди верят, что можно обмануть систему, взять бесплатное решение, дешевых людей, дешевое железо и получить производительность и надежность «как в облаке, но дешевле».
Кроме того, есть вопросы и к бекапу, и к восстановлению, и много к чему еще.
Но люди верят. Мерять производительность не хотят, тесты ребилда под нагрузкой делать не хотят, некоторые и бекапы не делают.
Сложность и нюансы в понимании (и отсутствии понимания) «зачем все это».
Для одного сервера все равно нужен какой-то RAID, в современных условиях, для одного сервера, с таким бизнесом, которому достаточно одного сервера, может быть аппаратный контроллер и будет неплохим решением. Для двух серверов уже может быть проще собрать отказоустойчивый кластер не на уровне железа и репликации средствами ОС, а через репликацию сервиса. Базы данных это умеют, для репликации файловых кластеров с низкой нагрузкой подойдет что угодно, остальные сервисы типа etcd тоже реплицируются без кластерной файловой системы.
Разница концепций. Часть 7.4 «Локальное дисковое пространство».
Для Hyper-V все проще некуда. Собрал диски – хочешь в soft raid, хочешь в storage space (не путать с S2D), хочешь на аппаратном рейде. Отформатировал, создал тонкие или толстые виртуальные тома ОС, создал на них тонкие (динамические) или толстые файлы (vhdx), отдал файлы виртуальным машинам, и все.
Есть проблемы с производительностью storage space в parity, если вдруг не читали вот это.
Новый ноутбук: скорость, плюсы-минусы, DiskSPD, Hyper-V и продолжение про методику тестирование скорости
Устроено все проще некуда, диск виртуальной машины == файл с заголовком.
Для Broadcom ESXi все еще проще. Создал «на чем есть» storage, создал виртуальные машины с нужными дисками.
Устроено все проще некуда, диск виртуальной машины == 2 файла. Файл с текстовым описанием, и файл с RAW данными.
Для Proxmox начинается проблема выбора: что взять. Есть Ext4, есть ZFS, есть BTRFS. Есть XFS.
Был GlusterFS, но он все, цитата
As GlusterFS is no longer maintained upstream, Proxmox VE 9 drops support for GlusterFS storages. Setups using GlusterFS storage either need to move all GlusterFS to a different storage, or manually mount the GlusterFS instance and use it as a Directory storage. Roadmap
ПОМЕР.
Development has effectively ended. For years Red Hat drove development for its RHGS product, but with the EOL of RHGS at the end of 2024. Date: 2024-06-25
Само разбиение дисков сделано странно.
ISO images в GUI это /var/lib/vz/template/iso
CT templates в GUI это /var/lib/vz/template/cache
Конфигурация контейнеров /etc/pve/lxc
Конфигурация виртуальных машин /etc/pve/qemu-server
Диски виртуальных машин – о, тут все странно. В конфиге диск прописан как
scsi0: local-lvm:vm-100-disk-0,iothread=1,size=5G
но это блочный lvs том, который виден по команде lvs , или
find /dev | grep vm
И получаем /dev/pve/vm-100-disk-0
или команда
lvdisplay
покажет что где и как.
Неприятно с точки зрения операций с локальными томами. С ZFS та же история.
Разница концепций. Часть 7.5 «Локальное дисковое пространство - добавление».
Окей, создам отдельный том
New-VHD -Path C:\test\Proxmox\ data.vhdx -LogicalSectorSize 4KB -PhysicalSectorSizeByte 4KB -SizeBytes 105GB -Dynamic
добавлю его через GUI к Proxmox, но это уже будет другая история
Литература
Single Root I/O virtualization (SR-IOV)
Set up networking for Hyper-V hosts and clusters in the VMM fabric
Set up logical networks in the VMM fabric
How to configure System Center VMM Part 1 – Basic Design
8.3. Comparison of Network Teaming to Bonding
3.18. Bridge and Bond Configuration
Proxmox Network Configuration
How to enable DHCP on Hyper-V switch
Hyper-V - Default Switch & DHCP Server
Configuring VM Networking on a Hyper-V NAT Switch
A Practical Guide to Hyper-V Virtual Switch Configuration
Change Hyper-V (Default Switch) IP address range
Proxmox Ebook Free Download for Home Labs – тут почему-то удалили pdf, но он есть тут, хотя он и для 7.1
Proxmox for Everyone: Your Complete Guide to Virtualization, Kubernetes, and Homelab Automation (Next-Gen Infrastructure Strategies Book 2) Kindle Edition by da li (Author), PlanB Mr (Author)