От нула до Proxmox клъстер: Изграждане на домашна лаборатория върху стар хардуер

От нула до Proxmox клъстер: Изграждане на домашна лаборатория върху стар хардуер

Ако сте като мен и имате стари компютри в мазето, вероятно често се питате дали те все още стават за нещо. Преди да ги предадете за рециклиране, помислете отново. Тези „реликви“ могат да бъдат основата на мощна домашна лаборатория.

В това ръководство ще ви преведа през процеса на изграждане на Proxmox клъстер от нулата. Ще превърнем стария хардуер в модерна инфраструктура за виртуални машини и контейнери.


Съдържание

Защо Proxmox VE?

Proxmox Virtual Environment (VE) е софтуер с отворен код за виртуализация. Той съчетава две мощни технологии: KVM за виртуални машини и LXC за леки контейнери.

Предимствата за домашна лаборатория:

  • Безплатно: Пълната функционалност е достъпна без лицензни такси.
  • Уеб интерфейс: Управлявате всичко през браузъра.
  • Клъстеризация: Лесно свързвате няколко машини в обща мрежа.
  • Архивиране: Вградени инструменти за бекъп и репликация.

Стъпка 1: Избор и подготовка на хардуера

Не ви трябва сървърен хардуер от корпоративен клас. Стари лаптопи, десктопи или Intel NUC са идеални.

Минимални изисквания:

  1. Процесор: 64-bit CPU с поддръжка на Intel VT или AMD-V.
  2. RAM: Поне 4GB (повече е винаги по-добре).
  3. Мрежа: Ethernet порт (Gigabit се препоръчва).
  4. Диск: SSD за операционната система и виртуалните машини.

Подготовка на BIOS/UEFI:

Преди да започнете, влезте в BIOS на всяка машина. Активирайте Virtualization Technology и VT-d. Изключете Secure Boot, ако създава проблеми при инсталацията.


Стъпка 2: Инсталация на Proxmox VE

Изтеглете последното ISO от официалния сайт на Proxmox. Използвайте инструмент като BalenaEtcher или Rufus, за да го запишете на USB флашка.

  1. Бутнете от флашката.
  2. Изберете Install Proxmox VE (Graphical).
  3. Изберете целевия диск (препоръчвам SSD).
  4. Настройте държава и часова зона.
  5. Въведете силна парола и валиден имейл адрес.

Мрежови настройки:

Тук е важно да зададете статичен IP адрес. Например:

  • Hostname: pve01.home.lan
  • IP Address: 192.168.1.100
  • Gateway: 192.168.1.1
  • DNS Server: 192.168.1.1 (или 1.1.1.1)

След рестарт, ще получите достъп до конзолата. Отворете браузъра си и въведете: https://192.168.1.100:8006.


Стъпка 3: Конфигурация след инсталация

Proxmox идва с активирано "Enterprise" хранилище, което изисква абонамент. За домашна лаборатория трябва да го превключим към "No-Subscription".

Премахване на Enterprise хранилището:

Отидете в менюто на вашия възел (node) -> Repositories. Деактивирайте pve-enterprise и добавете No-Subscription.

Пост-инсталационен скрипт (опционално):

Можете да използвате популярни скриптове за автоматизиране на началните настройки. Отворете Shell и изпълнете:

bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/misc/post-install.sh)"

Този скрипт ще почисти съобщенията за лиценз и ще оптимизира системата.


Стъпка 4: Изграждане на клъстера

Сега е моментът за магията. Повторете инсталацията на втория и третия си компютър (pve02, pve03).

Създаване на клъстер:

  1. Отидете на първия възел (pve01).
  2. Изберете Datacenter -> Cluster -> Create Cluster.
  3. Дайте му име (напр. HomeLab-Cluster).
  4. След създаването, натиснете Join Information и копирайте текста.

Присъединяване на възли:

  1. Отидете на втория възел (pve02) през неговия уеб интерфейс.
  2. Datacenter -> Cluster -> Join Cluster.
  3. Поставете информацията от първия възел и въведете паролата му.

Вече имате единен интерфейс за управление на всички ваши физически машини!


Стъпка 5: Хранилище за данни (Storage)

В клъстер е важно да имате споделено хранилище за лесна миграция на машини.

Опции за съхранение:

  • Local-LVM: Бързо, но локално само за един възел.
  • ZFS: Отлично за софтуерен RAID, ако имате няколко диска.
  • NFS/SMB: Ако имате NAS (като TrueNAS), това е най-добрият начин за споделено хранилище.

Ако нямате NAS, можете да използвате Ceph – вграденото решение на Proxmox за разпределено съхранение. То обаче изисква поне 3 възела и бърза мрежа (10GbE е силно препоръчително).


Стъпка 6: Създаване на първия контейнер (LXC)

Контейнерите са идеални за леки услуги като Pi-hole, Home Assistant или Plex.

  1. Отидете в хранилището local -> CT Templates.
  2. Натиснете Templates и изтеглете ubuntu-22.04 (или друга дистрибуция).
  3. Горе вдясно натиснете Create CT.
  4. Следвайте стъпките за разпределяне на CPU и RAM (512MB RAM често са достатъчни).

Стъпка 7: Автоматизация и виртуални машини (VM)

За по-тежки приложения или Docker хост, ще ви трябва пълна виртуална машина.

Инсталиране на Docker в Proxmox:

Вместо да инсталирате Docker директно върху Proxmox (не се препоръчва), създайте VM с Ubuntu Server.

# Примерен скрипт за инсталация на Docker в VM
sudo apt-get update
sudo apt-get install docker.io -y
sudo systemctl enable --now docker

Стъпка 8: Висока наличност (High Availability – HA)

Едно от най-големите предимства на клъстера е HA. Ако един компютър изгори, услугите автоматично се стартират на друг.

Правилото на "Кворума":

За да работи HA коректно, ви трябват поне 3 гласа в клъстера. Ако имате само 2 машини, можете да използвате QDevice (например на Raspberry Pi), за да осигурите третия глас.

# Инсталация на QDevice на външно устройство (Debian/Ubuntu)
apt install corosync-qnetd
# На Proxmox възлите:
apt install corosync-qdevice
pvecm qdevice setup <IP-на-устройството>


Поддръжка и наблюдение

Домашната лаборатория изисква грижи. Proxmox улеснява това с вградените графики за натоварване.

  • Мониторинг: Интегрирайте InfluxDB и Grafana за красиви табла с данни.
  • Бекъп: Използвайте Proxmox Backup Server (PBS). Дори една стара машина с голям HDD може да служи за целта.
  • Обновяване: Винаги обновявайте един възел по един, за да не прекъсвате услугите.

Често срещани грешки (и как да ги избегнете)

Дори най-опитните от нас са преминавали през „червените съобщения“ в конзолата. Ето няколко неща, за които да внимавате:

1. Използване на Wi-Fi за клъстерна мрежа

Proxmox изисква изключително ниска латентност за комуникация между възлите (Corosync). Wi-Fi е нестабилен и може да доведе до „разпадане“ на клъстера. Винаги използвайте LAN кабели.

2. Запълване на системния диск до 100%

Ако дискът, на който е инсталиран Proxmox, се запълни, уеб интерфейсът ще спре да работи, а контейнерите ще „замръзнат“. Следете свободното пространство и винаги оставяйте поне 10-20% буфер.

3. Грешен избор на CPU тип за виртуални машини

При създаване на VM, Proxmox предлага тип на процесора по подразбиране. Ако планирате да местите (migrate) машината между различни поколения хардуер, изберете тип "Host" или "x86-64-v2-AES" за максимална съвместимост.

4. Пропускане на архивирането (Backup)

„Домашна лаборатория“ не означава, че данните не са важни. Настройте автоматичен график за архивиране към външен диск или NAS поне веднъж седмично.

5. Инсталиране на пакети директно върху Hypervisor-а

Proxmox е базиран на Debian, но не го третирайте като обикновена десктоп машина. Избягвайте да инсталирате софтуер (като Docker или Samba) директно върху основната система. Използвайте виртуални машини или контейнери за всичко – така поддържате „чист“ и стабилен хост.

Заключение: Вашият личен облак е готов

Преминахме пътя от стари компютри в кашони до работещ Proxmox клъстер. Сега имате платформа, на която можете да тествате софтуер, да хоствате собствени сайтове или да автоматизирате дома си.

Този проект не само дава нов живот на стария хардуер. Той ви дава безценни знания за мрежи, виртуализация и системна администрация.

Какво използвате за вашата домашна лаборатория? Имате ли любими услуги, които хоствате, или тепърва започвате своето приключение? Споделете в коментарите!

open source spirit
🛠️
$

Намерихте материала за полезен?

Съдържанието на itpraktika.com е безплатно и ще остане такова.
Ако статията ти е помогнала — можеш да подкрепиш сайта с малка доброволна сума. Всяко дарение помага за поддръжката и развитието на портала.

PayPal Revolut

Вашият коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *


Колко е 1 + 9 ? (въведете числото)