
Dnes sa budeme zaoberať tým, ako rýchlo a relatívne jednoducho na jednom fyzickom serveri nasadiť niekoľko virtuálnych serverov s rôznymi operačnými systémami. Každému systémovému administrátorovi to umožní centralizovane spravovať celú IT infraštruktúru spoločnosti a šetriť obrovské množstvo zdrojov. Využívanie virtualizácie pomáha maximálne sa odpútať od fyzického serverového hardvéru, chrániť kritické služby a ľahko obnoviť ich fungovanie aj v prípade veľmi závažných porúch.
Bezpochyby sú väčšine systémových administrátorov známe techniky práce s virtuálnym prostredím a pre nich nebude tento článok žiadnym objavením. Napriek tomu existujú spoločnosti, ktoré nevyužívajú flexibilitu a rýchlosť virtuálnych riešení kvôli nedostatku presných informácií o nich. Dúfame, že náš článok pomôže na príklade pochopiť, že oveľa jednoduchšie je raz začať využívať virtualizáciu, než zažívať nepríjemnosti a nedostatky fyzickej infraštruktúry.
Našťastie, vyskúšať, ako funguje virtualizácia, je dosť jednoduché. Ukážeme, ako vytvoriť server vo virtuálnom prostredí, napríklad pre presun CRM systému používaného v spoločnosti. Takmer každý fyzický server sa dá premeniť na virtuálny, ale najprv je potrebné osvojiť si základné techniky práce. O tom sa bude hovoriť nižšie.
Ako to funguje
Keď sa hovorí o virtualizácii, mnohým začínajúcim odborníkom sa ťažko orientuje v terminológii, preto vysvetlíme niekoľko základných pojmov:
- je aplikácia spustená na fyzickom stroji, ktorá emuluje fyzické zdroje, na ktorých sa spúšťajú Virtuálne Stroje. Niekedy sa v literatúre a na internete slovo "hypervízor" používa ako synonymum pre "hostiteľ". – špeciálny softvér, ktorý umožňuje vytvárať virtuálne stroje a spravovať ich;
- Virtuálny stroj (ďalej VM) – to je systém, ktorý predstavuje logický server vo fyzickom stroji so svojím súborom charakteristík, úložiskami a operačným systémom;
- Hostiteľ virtualizácie – fyzický server s nainštalovaným hypervizorom.
Aby mohol server pracovať ako plnohodnotný hostiteľ virtualizácie, jeho procesor musí podporovať jednu z dvoch technológií – buď Intel® VT, alebo AMD-V™. Obidve technológie plnia najdôležitejšiu úlohu – poskytovanie hardvérových zdrojov servera virtuálnym strojom.
Kľúčovým znakom je, že akékoľvek akcie virtuálních strojů sú vykonávané priamo na úrovni hardvéru. Pri tom sú od seba izolované, čo značne uľahčuje ich individuálne riadenie. Samotný hypervízor funguje ako kontrolný orgán, ktorý distribuuje zdroje, úlohy a priority medzi nimi. Hypervízor sa taktiež zaoberá emuláciou tej časti hardvéru, ktorú potrebujeme na správnu funkciu operačného systému.
Zavedenie virtualizácie umožňuje mať viacero spustených kópií jedného serveraz nich. Kritický výpadok alebo chyba pri uskutočňovaní zmien v takejto kópii nijako neovplyvní fungovanie aktuálnej služby alebo aplikácie. Tým sa tiež riešia dva hlavné problémy – škálovanie a možnosť mať "zoo" rôznych operačných systémov na jednom hardvéri. Ide o perfektnú príležitosť na kombináciu rôznych služieb bez potreby obstarávania samostatného hardvéru pre každú z nich.
Virtualizácia zvyšuje odolnosť služieb a nasadených aplikácií. Aj keď fyzický server zlyhá a bude potrebné ho nahradiť, kompletná virtuálna infraštruktúra zostane plne funkčná, pokiaľ sú disky uchované v poriadku. Fyzický server môže byť dokonca od úplne iného výrobcu. Toto je obzvlášť aktuálne pre firmy, ktoré používajú servery, ktorých výroba bola ukončená, a bude potrebné prejsť na iné modely.
Teraz vymenujeme najobľúbenejšie hypervízory, ktoré existujú v súčasnosti:
- VMware ESXi
- Microsoft Hyper-V
- Open Virtualization Alliance KVM
- Oracle VM VirtualBox
Všetky sú dostatočne univerzálne, avšak každý z nich má určité špecifiká, ktoré treba vždy zohľadniť pri výbere: náklady na nasadenie/podporu a technické charakteristiky. Náklady na komerčné licencie VMware a Hyper-V sú veľmi vysoké a v prípade porúch je veľmi ťažké vyriešiť problémy týmito systémami vlastnými silami.
KVM je naopak úplne zadarmo a dosť jednoduché na ovládanie, obzvlášť v rámci hotového riešenia založeného na Debian Linuxe s názvom Proxmox Virtual Environment. Túto systém môžeme odporučiť na prvotné zoznámenie sa s virtuálnou infraštruktúrou.
Ako rýchlo nainštalovať hypervízor Proxmox VE
Inštalácia zvyčajne nenaznačuje žiadne problémy. Stiahnite aktuálnu verziu obrazu oficiálnej stránky a zapíšte ho na akékoľvek externé médium pomocou nástroja Win32DiskImager (v prípade Linuxu sa používa príkaz dd), po čom spustíme server priamo z tohto média. Naši klienti, ktorí si od nás prenajímajú dedikované servery, môžu využiť dve ešte jednoduchšie možnosti – jednoducho pripojiť potrebný obraz priamo z KVM konzoly alebo použiť náš PXE server.
Inštalačný program má grafické rozhranie a položí len niekoľko otázok.
- Vyberte disk, na ktorý bude inštalácia vykonaná. V sekcii Options je možné tiež zadať ďalšie parametre rozdelenia.

- Uvedieme regionálne nastavenia.

- Uvedieme heslo, ktoré sa použije na autorizáciu superužívateľa root a e-mailovú adresu administrátora.

- Uvedieme sieťové nastavenia. FQDN znamená plne kvalifikované doménové meno, napríklad node01.yourcompany.com.

- Po dokončení inštalácie, server môžeme reštartovať pomocou tlačidla Reboot.

Webové rozhranie na správu bude dostupné na adrese
https://IP_adresa_servera:8006
Čo treba urobiť po inštalácii
Existuje niekoľko dôležitých krokov, ktoré treba vykonať po inštalácii Proxmox. Povieme si o každom z nich podrobnejšie.
Aktualizovať systém na aktuálnu verziu
Pre to sa prihlásime do konzoly nášho servera a deaktivujeme platený repozitár (prístupný iba pre tých, ktorí zakúpili platenú podporu). Ak to neurobíte — apt oznámi chybu pri aktualizácii zdrojov balíkov.
- Otvoríme konzolu a upravíme konfiguračný súbor apt:
nano /etc/apt/sources.list.d/pve-enterprise.list - V tomto súbore bude len jeden riadok. Pred ním dáme symbol #, aby sme deaktivovali získavanie aktualizácií z plateného repozitára:
#deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise - Kombináciou klávesov Ctrl + X vykonáme výstup z editora a odpovieme Y na otázku systému o uloženie súboru.
- Vykonáme príkaz na aktualizáciu zdrojov balíkov a aktualizáciu systému:
apt update && apt -y upgrade
Postarať sa o bezpečnosť
Odporúčame nainštalovať obľúbený nástroj Fail2Ban, ktoré chráni pred útokmi metodou hrubého sily na heslá. Jej princíp fungovania spočíva v tom, že ak útočník prekročí určitý počet pokusov o prihlásenie za uvedený čas s nesprávnym menom/heslom, jeho IP adresa bude zablokovaná. Doba blokovania a počet pokusov môžu byť uvedené v konfiguračnom súbore.
Na základe praktických skúseností za týždennú činnosť servera s otvoreným ssh portom 22 a externou statickou IPv4 adresou bolo viac ako 5000 pokusov o uhádnutie hesla. A okolo 1500 adries úspešne zablokoval nástroj.
Pre vykonanie inštalácie uvádzame krátky návod:
- Otvorte konzolu servera prostredníctvom webového rozhrania alebo SSH.
- Aktualizujeme zdroje balíčkov:
apt update - Nainštalujeme Fail2Ban:
apt install fail2ban - Otvoríme konfiguráciu nástroja na úpravu:
nano /etc/fail2ban/jail.conf - Zmeníme premenné bantime (počet sekúnd, na ktoré bude útočník zablokovaný) a maxretry (počet pokusov o zadanie mena/hesla) pre každú jednotlivú službu.
- Kombináciou klávesov Ctrl + X vykonáme výstup z editora a odpovieme Y na otázku systému o uloženie súboru.
- Reštartujeme službu:
systemctl restart fail2ban
Skontrolovať stav činnosti nástroja, napríklad získať štatistiku blokovania zablokovaných IP adries z ktorých boli pokusy o uhádnutie hesla SSH, môžeme jedným jednoduchým príkazom:
fail2ban-client -v status sshdOdpoveď nástroja bude vyzerať približne takto:
root@hypervisor:~# fail2ban-client -v status sshd
INFO Načítanie konfigurácií pre fail2ban pod /etc/fail2ban
INFO Načítanie súborov: ['/etc/fail2ban/fail2ban.conf']
INFO Načítanie súborov: ['/etc/fail2ban/fail2ban.conf']
INFO Používanie soketového súboru /var/run/fail2ban/fail2ban.sock
Stav pre väzenie: sshd
|- Filter
| |- Aktuálne zlyhania: 3
| |- Celkové zlyhania: 4249
| `- Zoznam súborov: /var/log/auth.log
`- Akcie
|- Aktuálne zablokované: 0
|- Celkovo zablokované: 410
`- Zoznam zablokovaných IP adries:Podobným spôsobom je možné uzavrieť webové rozhranie pred takýmito útokmi vytvorením príslušného pravidla. Príklad takého pravidla pre Fail2Ban nájdete v oficiálnom príručke.
Začiatok práce
Chceli by sme upozorniť, že Proxmox je pripravený na vytvorenie nových strojov ihneď po inštalácii. Napriek tomu odporúčame vykonať predbežné nastavenia, aby bolo v budúcnosti jednoduchšie spravovať systém. Prax ukazuje, že hypervízor a virtuálne stroje by mali byť rozdelené na rôzne fyzické médiá. O tom, ako to urobiť, hodláme diskutovať nižšie.
Nastaviť diskové úložiská
Nasledujúcim krokom je nastaviť úložisko, ktoré budete môcť využiť na uloženie dát virtuálnych strojov a záloh.
POZOR! Následujúci príklad diskovej rozloženia je možné použiť iba na testovacie účely. Pre prevádzku v reálnych podmienkach dôrazne odporúčame použiť softvérový alebo hardvérový RAID, aby sa zabránilo strate dát pri poruche diskov. O tom, ako správne pripraviť diskový RAID na prevádzku a ako postupovať v prípade havárie, sa dozviete v jednom z nasledujúcich článkov.
Predpokladajme, že fyzický server má dva disky – /dev/sda, na ktorý je nainštalovaný hypervízor a prázdny disk /dev/sdb, ktorý sa plánuje použiť na ukladanie dát virtuálnych strojov. Aby systém mohol vidieť nové úložisko, môžeme využiť najjednoduchšiu a najefektívnejšiu metódu – pripojiť ho ako bežný adresár. Ale predtým je potrebné vykonať niektoré prípravné kroky. Ako príklad si ukážeme, ako pripojiť nový disk /dev/sdb, akejkoľvek veľkosti, naformátovaním ho na súborový systém ext4.
- Rozdeľujeme disk vytvorením nového oddielu:
fdisk /dev/sdb - Stlačte klávesu o alebo g (rozdeľte disk na MBR alebo GPT).
- Potom stlačte klávesu n (vytvoriť nový oddiel).
- A nakoniec w (pre uloženie zmien).
- Vytvoríme súborový systém ext4:
mkfs.ext4 /dev/sdb1 - Vytvoríme adresár, do ktorého budeme montovať oddiel:
mkdir /mnt/storage - Otvoríme konfiguračný súbor na úpravu:
nano /etc/fstab - Pridáme tam nový riadok:
/dev/sdb1 /mnt/storage ext4 defaults 0 0 - Po vykonaní zmien ich uložíme kombináciou klávesov Ctrl + X, odpovedajúc Y na otázku editora.
- Na kontrolu, či všetko funguje, reštartujeme server:
shutdown -r now - Po reštarte skontrolujeme pripojené oddiely:
df -H
Výstup príkazu by mal ukázať, že /dev/sdb1 je pripojený k adresáru /mnt/storage. To znamená, že náš úložný systém je pripravený na prácu.
Pridať nové úložisko do Proxmox
Prihlásime sa do ovládacieho panela a prejdeme do sekcií Centrum dát ➝ Úložisko ➝ Pridať ➝ Adresár.
V otvorenom okne vyplníme nasledujúce polia:
- ID — názov budúceho úložiska;
- Adresár — /mnt/storage;
- Obsah — vyberieme všetky možnosti (po jednom kliknutím na každú možnosť).

Potom stlačíme tlačidlo Pridať. Týmto je nastavenie dokončené.
Vytvoriť virtuálny stroj
Na vytvorenie virtuálneho stroja vykonávame nasledujúcu sekvenciu krokov:
- Určíme si verziu operačného systému.
- Vopred stiahneme ISO obraz.
- Vyberieme v menu Úložisko práve vytvorené úložisko.
- Klikneme na Obsah ➝ Stiahnuť.
- Vyberáme z ISO obrazu zo zoznamu a potvrdzujeme voľbu stlačením tlačidla Stiahnuť.
Po dokončení operácie sa obraz zobrazí v zozname dostupných.

Vytvárame našu prvú virtuálnu mašinu:
- Klikneme na Vytvoriť VM.
- Postupne vyplňujeme parametre: Názov ➝ ISO-obrázok ➝ Veľkosť a typ pevného disku ➝ Počet procesorov ➝ Objem operačnej pamäte ➝ Sieťový adaptér.
- Po výbere všetkých požadovaných parametrov stlačíme Dokončiť. Vytvorená mašina sa zobrazí v menu ovládacieho panela.
- Vyberáme ju a stlačíme Spustenie.
- Prejdeme do položky Konzola a vykonávame inštaláciu operačného systému presne takým istým spôsobom, ako na bežnom fyzickom serveri.
Ak potrebujete vytvoriť ďalšiu mašinu — opakujeme vyššie uvedené operácie. Po tom, ako budú všetky pripravené, môžete s nimi pracovať súčasne, otvorením niekoľkých okien konzoly.
Nastaviť automatické spustenie
Podľa predvoleného nastavenia Proxmox automaticky nespúšťa stroje, ale to sa ľahko rieši doslova dvoma kliknutiami myši:
- Klikneme na názov požadovanej mašiny.
- Vyberáme kartu Možnosti ➝ Spustiť pri spustení.
- Označíme začiarkavacie políčko vedľa rovnomennej položky.
Teraz, v prípade reštartovania fyzického servera, sa VM spustí automaticky.

Pre pokročilých administrátorov je tu aj možnosť zadať ďalšie spúšťacie parametre v sekcii Poradie štartu/vypnutia. Môžete výslovne určiť, v akom poradí by sa mali stroje spúšťať. Tiež môžete zadať čas, ktorý by mal uplynúť pred spustením nasledujúcej VM a čas oneskorenia vypnutia (ak operačný systém nebude schopný ukončiť prácu, hypervízor ju nútene vypne po určitom počte sekúnd).
Záver
V tomto článku boli predstavené základy toho, ako začať pracovať s Proxmox VE a dúfame, že pomôže začiatočníkom urobiť prvý krok a vyskúšať virtualizáciu v praxi.
Proxmox VE je naozaj veľmi mocný a pohodlný nástroj pre každého systémového administrátora; hlavne sa nebáť experimentovať a pochopiť, ako to naozaj funguje.
Pokiaľ máte otázky, vítame vás v komentároch.
Zdroj: habr.com






