IP-KVM преку QEMU

IP-KVM преку QEMU

Решавањето проблеми со подигање на оперативниот систем на сервери без KVM не е лесна задача. Ние создаваме KVM-over-IP за себе преку слика за обновување и виртуелна машина.

Во случај на проблеми со оперативниот систем на оддалечен сервер, администраторот ја презема сликата за обновување и ја извршува потребната работа. Овој метод функционира одлично кога е позната причината за неуспехот, а сликата за обновување и оперативниот систем инсталиран на серверот се од исто семејство. Ако причината за неуспехот сè уште не е позната, треба да го следите напредокот на вчитувањето на оперативниот систем.

Далечински KVM

Можете да пристапите до серверската конзола користејќи вградени алатки како што се IPMI или Intel® vPro™ или преку надворешни уреди наречени IP-KVM. Постојат ситуации во кои сите наведени технологии не се достапни. Сепак, ова не е крајот. Ако серверот може далечински да се рестартира во слика за обновување базирана на оперативен систем Linux, тогаш KVM-over-IP може брзо да се организира.

Сликата за обновување е полноправен оперативен систем кој се наоѓа во RAM меморијата. Така, можеме да работиме каков било софтвер, вклучително и виртуелни машини (ВМ). Односно, можете да стартувате VM во кој ќе работи оперативниот систем на серверот. Пристапот до VM конзолата може да се организира, на пример, преку VNC.

За да го стартувате оперативниот систем на серверот во VM, мора да ги наведете серверските дискови како VM дискови. Во оперативните системи од семејството Линукс, физичките дискови се претставени со блок уреди на формата / dev / sdX, со кои може да се работи како обични датотеки.

Некои хипервизори, како што се QEMU и VirtualBox, ви дозволуваат да складирате VM податоци во „сурова“ форма, односно само складирање податоци без метаподатоци на хипервизорот. Така, VM може да се стартува со помош на физичките дискови на серверот.

Овој метод бара ресурси за да ја стартува сликата за обновување и VM во неа. Меѓутоа, ако имате четири или повеќе гигабајти RAM меморија, ова нема да биде проблем.

Подготовка на животната средина

Можете да користите лесна и едноставна програма како виртуелна машина QEMU, што најчесто не е дел од сликата за обновување и затоа мора да се инсталира посебно. Сликата за обновување што им ја нудиме на клиентите се заснова на Арх Линукс, кој користи менаџер на пакети pacman.

Првото нешто што треба да направите е да бидете сигурни дека сликата за обновување го користи најновиот софтвер. Можете да ги проверите и ажурирате сите компоненти на ОС со следнава команда:

pacman -Suy

По ажурирањето, треба да инсталирате QEMU. Командата за инсталација преку pacman ќе изгледа вака:

pacman -S qemu

Ајде да провериме дали qemu е правилно инсталиран:

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

Ако сè е така, тогаш сликата за обновување е подготвена да оди.

Стартување виртуелна машина

Прво, треба да одлучите за количината на ресурси доделени на VM и да ги дознаете патеките до физичките дискови. Во нашиот случај, ќе доделиме две јадра и два гигабајти RAM на виртуелната машина, а дисковите се наоѓаат на патот / dev / sda и / dev / sdb. Ајде да започнеме со 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

Малку повеќе детали за тоа што значи секој од параметрите:

  • -m 2048 M — доделете 2 GB RAM на VM;
  • -net nic -net user — додавање едноставна врска со мрежата преку хипервизор користејќи NAT (Network Address Translation);
  • -овозможи-kvm — овозможете целосна виртуелизација на KVM (Kernel Virtual Machine);
  • -домаќин на процесорот — му кажуваме на виртуелниот процесор да ја добие целата функционалност на серверскиот процесор;
  • -М компјутер — тип на компјутерска опрема;
  • -смп 2 — виртуелниот процесор мора да биде двојадрен;
  • -вга стд — изберете стандардна видео картичка што не поддржува големи резолуции на екранот;
  • -датотека на драјв =/dev/sda,формат=суровини,индекс=0,медиуми=диск
    • датотека =/dev/sdX — патека до блок-уредот што го претставува серверскиот диск;
    • формат=суров — забележуваме дека во наведената датотека сите податоци се во „сурова“ форма, односно како на диск;
    • индекс = 0 — број на диск, мора да се зголеми за еден за секој следен диск;
    • медиум=диск — виртуелната машина мора да го препознае ова складирање како диск;
  • -vnc :0, лозинка — стартувајте го VNC серверот стандардно на 0.0.0.0:5900, користете лозинка како авторизација;
  • -монитор станици — комуникацијата помеѓу администраторот и qemu ќе се одвива преку стандардни влезни/излезни текови.

Ако сè е во ред, QEMU мониторот ќе започне:

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

Наведовме дека овластувањето се случува со помош на лозинка, но не ја наведовме самата лозинка. Ова може да се направи со испраќање на командата промена vnc лозинка на мониторот QEMU. Важна забелешка: лозинката не може да биде повеќе од осум знаци.

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

По ова, можеме да се поврземе со кој било клиент VNC, на пример, Remmina, користејќи ја IP адресата на нашиот сервер со лозинката што ја наведовме.

IP-KVM преку QEMU

IP-KVM преку QEMU

Сега не само што гледаме можни грешки во фазата на вчитување, туку можеме и да се справиме со нив.

Кога ќе завршите, мора да ја исклучите виртуелната машина. Ова може да се направи или внатре во ОС со испраќање сигнал за исклучување или со давање на командата system_powerdown во QEMU монитор. Ова ќе биде еквивалентно на притискање на копчето за исклучување еднаш: оперативниот систем во виртуелната машина непречено ќе се исклучи.

Инсталација на оперативен систем

Виртуелната машина има целосен пристап до дисковите на серверот и затоа може да се користи за рачно инсталирање на оперативниот систем. Единственото ограничување е количината на RAM меморија: ISO сликата не може секогаш да се стави во RAM меморијата. Ајде да одвоиме четири гигабајти RAM за складирање на сликата / мин:

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

Ќе ја преземеме и инсталационата слика на оперативниот систем 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

Сега можете да го стартувате 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

Знаме -чизма d го инсталира подигањето од ЦД-уредот. Се поврзуваме со VNC клиент и го гледаме подигнувачот на FreeBSD.

IP-KVM преку QEMU

Бидејќи добивањето адреса преку DHCP се користеше за пристап на Интернет, по конфигурацијата можеби ќе биде потребно да се подигне во новоинсталираниот систем и да се поправат мрежните поставки. Во некои случаи, може да биде неопходно да се инсталираат драјвери за мрежниот адаптер, бидејќи мрежната картичка инсталирана во серверот и онаа што е емулирана во VM се различни.

Заклучок

Овој метод на организирање далечински пристап до конзолата на серверот троши дел од ресурсите на серверот, сепак, не наметнува никакви посебни барања на хардверот на серверот и затоа може да се имплементира во речиси сите услови. Користењето на ова решение го олеснува дијагностицирањето на дефектите на софтверот и обновувањето на функционалноста на оддалечениот сервер.

Извор: www.habr.com

Додадете коментар