IP-KVM cez QEMU

IP-KVM cez QEMU

Riešenie problémov so zavádzaním operačného systému na serveroch bez KVM nie je ľahká úloha. Vytvárame KVM-over-IP pre seba prostredníctvom obrazu obnovy a virtuálneho počítača.

V prípade problémov s operačným systémom na vzdialenom serveri, správca stiahne obraz obnovy a vykoná potrebné práce. Táto metóda funguje skvele, keď je známa príčina zlyhania a obraz obnovy a operačný systém nainštalovaný na serveri sú z rovnakej rodiny. Ak príčina zlyhania ešte nie je známa, musíte sledovať priebeh načítania operačného systému.

Vzdialený KVM

K serverovej konzole môžete pristupovať pomocou vstavaných nástrojov, ako sú IPMI alebo Intel® vPro™, alebo prostredníctvom externých zariadení nazývaných IP-KVM. Existujú situácie, v ktorých nie sú dostupné všetky uvedené technológie. To však nie je koniec. Ak je možné server vzdialene reštartovať do obnovovacieho obrazu založeného na operačnom systéme Linux, potom možno rýchlo zorganizovať KVM-over-IP.

Obraz obnovy je plnohodnotný operačný systém, ktorý sa nachádza v pamäti RAM. Môžeme teda spustiť akýkoľvek softvér, vrátane virtuálnych strojov (VM). To znamená, že môžete spustiť VM, v ktorom bude bežať operačný systém servera. Prístup ku konzole VM je možné organizovať napríklad cez VNC.

Ak chcete spustiť operačný systém servera vo virtuálnom počítači, musíte určiť disky servera ako disky VM. V operačných systémoch rodiny Linux sú fyzické disky reprezentované blokovými zariadeniami vo forme / Dev / SDX, s ktorými sa dá pracovať ako s bežnými súbormi.

Niektoré hypervízory, ako napríklad QEMU a VirtualBox, vám umožňujú ukladať údaje VM v „surovej“ forme, to znamená iba ukladať údaje bez metadát hypervízora. VM teda možno spustiť pomocou fyzických diskov servera.

Táto metóda vyžaduje prostriedky na spustenie obrazu obnovy a virtuálneho počítača v ňom. Ak však máte štyri a viac gigabajtov RAM, nebude to problém.

Príprava prostredia

Ako virtuálny stroj môžete použiť ľahký a jednoduchý program QEMU, ktorý väčšinou nie je súčasťou obnovovacieho obrazu, a preto sa musí nainštalovať samostatne. Obraz obnovy, ktorý ponúkame klientom, je založený na Arch Linux, ktorý používa správcu balíkov pacman.

Prvá vec, ktorú musíte urobiť, je uistiť sa, že obraz na obnovenie používa najnovší softvér. Všetky súčasti OS môžete skontrolovať a aktualizovať pomocou nasledujúceho príkazu:

pacman -Suy

Po aktualizácii je potrebné nainštalovať QEMU. Inštalačný príkaz cez pacman bude vyzerať takto:

pacman -S qemu

Skontrolujte, či je qemu správne nainštalovaný:

root@sel-rescue ~ # qemu-system-x86_64 --version
QEMU emulator version 4.0.0
Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers

Ak je všetko tak, obraz na obnovenie je pripravený na použitie.

Spustenie virtuálneho počítača

Najprv sa musíte rozhodnúť o množstve zdrojov alokovaných pre VM a zistiť cesty k fyzickým diskom. V našom prípade virtuálnemu stroju pridelíme dve jadrá a dva gigabajty pamäte RAM a disky sú umiestnené pozdĺž cesty / Dev / sda и / Dev / sdb. Začnime s VM:

qemu-system-x86_64
-m 2048M
-net nic -net user
-enable-kvm
-cpu host,nx
-M pc
-smp 2
-vga std
-drive file=/dev/sda,format=raw,index=0,media=disk
-drive file=/dev/sdb,format=raw,index=1,media=disk
-vnc :0,password
-monitor stdio

Trochu podrobnejšie o tom, čo každý z parametrov znamená:

  • -m 2048 mil — prideliť virtuálnemu počítaču 2 GB pamäte RAM;
  • -net nic -net user — pridanie jednoduchého pripojenia k sieti prostredníctvom hypervízora pomocou NAT (Network Address Translation);
  • -enable-kvm — povoliť úplnú virtualizáciu KVM (Kernel Virtual Machine);
  • -hostiteľ procesora — povieme virtuálnemu procesoru, aby získal všetky funkcie serverového procesora;
  • -M PC — typ PC zariadenia;
  • -smp 2 — virtuálny procesor musí byť dvojjadrový;
  • -vga std — vyberte štandardnú grafickú kartu, ktorá nepodporuje veľké rozlíšenia obrazovky;
  • -súbor jednotky=/dev/sda,formát=raw,index=0,médium=disk
    • file=/dev/sdX — cesta k blokovému zariadeniu predstavujúcemu disk servera;
    • formát=surový — poznamenávame, že v zadanom súbore sú všetky údaje v „surovej“ forme, to znamená ako na disku;
    • index = 0 — číslo disku, musí sa zvýšiť o jeden pre každý nasledujúci disk;
    • médium=disk — virtuálny počítač musí toto úložisko rozpoznať ako disk;
  • -vnc :0, heslo — predvolene spustite server VNC na 0.0.0.0:5900, ako autorizáciu použite heslo;
  • -stdio monitor — komunikácia medzi správcom a qemu bude prebiehať prostredníctvom štandardných vstupno/výstupných tokov.

Ak je všetko v poriadku, monitor QEMU sa spustí:

QEMU 4.0.0 monitor - type 'help' for more information
(qemu)

Uviedli sme, že autorizácia prebieha pomocou hesla, ale neuviedli sme samotné heslo. Dá sa to urobiť odoslaním príkazu na zmenu hesla vnc do monitora QEMU. Dôležitá poznámka: Heslo nemôže mať viac ako osem znakov.

(qemu) change vnc password
Password: ******

Potom sa môžeme spojiť s akýmkoľvek klientom VNC, napríklad Remmina, pomocou adresy IP nášho servera s heslom, ktoré sme zadali.

IP-KVM cez QEMU

IP-KVM cez QEMU

Teraz nielenže vidíme možné chyby vo fáze načítania, ale vieme sa s nimi aj vysporiadať.

Keď skončíte, musíte vypnúť virtuálny počítač. Dá sa to urobiť buď vo vnútri OS odoslaním signálu na vypnutie, alebo zadaním príkazu system_powerdown v monitore QEMU. Bude to rovnaké ako jedno stlačenie tlačidla vypnutia: operačný systém vo virtuálnom stroji sa vypne hladko.

Inštalácia operačného systému

Virtuálny stroj má plný prístup k diskom servera, a preto ho možno použiť na manuálnu inštaláciu operačného systému. Jediným obmedzením je množstvo pamäte RAM: obraz ISO nie je možné vždy umiestniť do pamäte RAM. Prideľme štyri gigabajty pamäte RAM na uloženie obrazu / mnt:

mount -t tmpfs -o size=4G tmpfs /mnt

Stiahneme si aj inštalačný obraz operačného systému FreeBSD 12.0:

wget -P /mnt ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/ISO-IMAGES/12.0/FreeBSD-12.0-RELEASE-amd64-bootonly.iso

Teraz môžete spustiť VM:

qemu-system-x86_64
-m 2048M
-net nic -net user
-enable-kvm
-cpu host,nx
-M pc
-smp 2
-vga std
-drive file=/dev/sda,format=raw,index=0,media=disk
-drive file=/dev/sdb,format=raw,index=1,media=disk
-vnc :0,password
-monitor stdio
-cdrom /mnt/FreeBSD-12.0-RELEASE-amd64-bootonly.iso
-boot d

vlajka - topánka d nainštaluje bootovanie z CD mechaniky. Pripojíme sa s klientom VNC a uvidíme bootloader FreeBSD.

IP-KVM cez QEMU

Keďže sa na prístup na internet využívalo získanie adresy cez DHCP, po konfigurácii môže byť potrebné nabootovať do novo nainštalovaného systému a opraviť nastavenia siete. V niektorých prípadoch môže byť potrebné nainštalovať ovládače sieťového adaptéra, pretože sieťová karta nainštalovaná na serveri a sieťová karta emulovaná vo VM sa líšia.

Záver

Tento spôsob organizácie vzdialeného prístupu ku konzole servera spotrebúva časť zdrojov servera, nekladie však žiadne špeciálne požiadavky na hardvér servera, a preto ho možno implementovať takmer za akýchkoľvek podmienok. Použitie tohto riešenia výrazne uľahčuje diagnostiku softvérových porúch a obnovenie funkčnosti vzdialeného servera.

Zdroj: hab.com

Pridať komentár