Az operációs rendszer rendszerindítási problémáinak elhárítása a KVM nélküli szervereken nem könnyű feladat. Létrehozunk magunknak egy KVM-over-IP-t egy helyreállítási lemezkép és egy virtuális gép segítségével.
Az operációs rendszerrel kapcsolatos problémák esetén
Távoli KVM
A szerverkonzolt beépített eszközökkel, például IPMI-vel vagy Intel® vPro™-val, vagy IP-KVM nevű külső eszközökkel érheti el. Vannak helyzetek, amikor a felsorolt technológiák mindegyike nem elérhető. Ez azonban még nem a vége. Ha a szerver távolról újraindítható egy Linux operációs rendszeren alapuló helyreállítási képfájlba, akkor a KVM-over-IP gyorsan megszervezhető.
A helyreállítási kép egy teljes értékű operációs rendszer, amely a RAM-ban található. Így bármilyen szoftvert futtathatunk, beleértve a virtuális gépeket (VM-eket). Vagyis elindíthat egy virtuális gépet, amelyen belül futni fog a kiszolgáló operációs rendszere. A virtuálisgép-konzolhoz való hozzáférés megszervezhető például VNC-n keresztül.
A kiszolgáló operációs rendszerének virtuális gépen belüli futtatásához meg kell adnia a kiszolgáló lemezeit virtuális gép lemezként. A Linux család operációs rendszereiben a fizikai lemezeket a következő típusú blokkeszközök képviselik / Dev / sdX, amivel a szokásos fájlokhoz hasonlóan lehet dolgozni.
Egyes hipervizorok, például a QEMU és a VirtualBox lehetővé teszik a virtuálisgép-adatok „nyers” formában történő tárolását, azaz csak a hypervisor metaadatai nélküli tárolási adatokat. Így a virtuális gép elindítható a kiszolgáló fizikai lemezeiről.
Ez a módszer erőforrásokat igényel a helyreállítási lemezkép és a benne lévő virtuális gép elindításához. Ha azonban négy vagy több gigabájt RAM-mal rendelkezik, ez nem jelent problémát.
A környezet előkészítése
Könnyű és egyszerű programot használhat virtuális gépként
Az első dolog, amit meg kell tennie, hogy megbizonyosodjon arról, hogy a helyreállítási lemezkép a legújabb szoftvert használja. A következő paranccsal ellenőrizheti és frissítheti az operációs rendszer összes összetevőjét:
pacman -Suy
A frissítés után telepítenie kell a QEMU-t. A pacman-en keresztüli telepítési parancs így fog kinézni:
pacman -S qemu
Ellenőrizzük, hogy a qemu megfelelően van-e telepítve:
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
Ha minden így van, akkor a helyreállítási kép készen áll a használatra.
Virtuális gép indítása
Először is el kell döntenie a virtuális géphez lefoglalt erőforrások mennyiségét, és meg kell találnia a fizikai lemezekhez vezető útvonalakat. Esetünkben két magot és két gigabájt RAM-ot osztunk ki a virtuális gépnek, és a lemezek az út mentén helyezkednek el. / dev / sda и / Dev / sdb. Indítsuk el a virtuális gépet:
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
Egy kicsit részletesebben az egyes paraméterek jelentéséről:
- -m 2048M — 2 GB RAM-ot rendeljen a virtuális géphez;
- -net nic -net user — egyszerű kapcsolat hozzáadása a hálózathoz egy hipervizoron keresztül NAT (Network Address Translation) segítségével;
- -enable-kvm — a teljes KVM (Kernel Virtual Machine) virtualizáció engedélyezése;
- -cpu host — utasítjuk a virtuális processzort, hogy kapja meg a szerverprocesszor összes funkcióját;
- -M PC — a PC-berendezés típusa;
- -smp 2 — a virtuális processzornak kétmagosnak kell lennie;
- -vga std — válasszon olyan szabványos videokártyát, amely nem támogatja a nagy képernyőfelbontást;
- -drive file=/dev/sda,format=raw,index=0,media=lemez
- file=/dev/sdX — a szerverlemezt képviselő blokkeszköz elérési útja;
- format=raw — megjegyezzük, hogy a megadott fájlban minden adat „nyers” formában van, azaz olyan, mint egy lemezen;
- index = 0 — a lemez száma, minden következő lemeznél eggyel nőnie kell;
- média=lemez — a virtuális gépnek ezt a tárolót lemezként kell felismernie;
- -vnc :0, jelszó — indítsa el a VNC-kiszolgálót alapértelmezés szerint 0.0.0.0:5900-nál, használjon jelszót jogosultságként;
- -monitor stdio — a rendszergazda és a qemu közötti kommunikáció szabványos bemeneti/kimeneti adatfolyamokon keresztül történik.
Ha minden rendben van, a QEMU monitor elindul:
QEMU 4.0.0 monitor - type 'help' for more information
(qemu)
Jeleztük, hogy az engedélyezés jelszó használatával történik, de magát a jelszót nem jeleztük. Ezt úgy teheti meg, hogy elküldi a change vnc password parancsot a QEMU monitornak. Fontos megjegyzés: A jelszó nem lehet hosszabb nyolc karakternél.
(qemu) change vnc password
Password: ******
Ezt követően bármely VNC klienshez, például Remminához kapcsolódhatunk szerverünk IP-címével, az általunk megadott jelszóval.
Most már nem csak a betöltési szakaszban látjuk a lehetséges hibákat, hanem kezelni is tudjuk őket.
Ha végzett, le kell állítania a virtuális gépet. Ez megtehető az operációs rendszeren belül úgy, hogy jelet küld a leállításhoz, vagy a parancs kiadásával system_powerdown a QEMU monitorban. Ez a leállítás gomb egyszeri megnyomásának felel meg: a virtuális gépen belüli operációs rendszer zökkenőmentesen leáll.
Operációs rendszer telepítése
A virtuális gép teljes hozzáféréssel rendelkezik a kiszolgáló lemezeihez, ezért az operációs rendszer manuális telepítésére használható. Az egyetlen korlátozás a RAM mennyisége: az ISO kép nem mindig helyezhető el a RAM-ban. Rendeljünk négy gigabájt RAM-ot a kép tárolására / mnt:
mount -t tmpfs -o size=4G tmpfs /mnt
Letöltjük a FreeBSD 12.0 operációs rendszer telepítési képét is:
wget -P /mnt ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/ISO-IMAGES/12.0/FreeBSD-12.0-RELEASE-amd64-bootonly.iso
Most elindíthatja a virtuális gépet:
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
zászló -boot d telepíti a CD-meghajtóról történő rendszerindítást. Csatlakozunk egy VNC klienshez, és látjuk a FreeBSD rendszerbetöltőt.
Mivel a DHCP-n keresztüli címszerzést használták az internet eléréséhez, a konfiguráció után szükség lehet az újonnan telepített rendszer indítására és a hálózati beállítások javítására. Bizonyos esetekben szükség lehet hálózati adapter-illesztőprogramok telepítésére, mivel a kiszolgálóra telepített hálózati kártya és a virtuális gépben emulált hálózati kártya különbözik.
Következtetés
A szerverkonzol távoli elérésének megszervezésének ez a módja a szerver erőforrások egy részét felemészti, azonban nem támaszt különleges követelményeket a szerver hardverével szemben, ezért szinte bármilyen körülmények között megvalósítható. Ennek a megoldásnak a használata sokkal könnyebbé teszi a szoftverhibák diagnosztizálását és a távoli kiszolgáló működésének visszaállítását.
Forrás: will.com