IP-KVM melalui QEMU

IP-KVM melalui QEMU

Menyelesaikan masalah but sistem pengendalian pada pelayan tanpa KVM bukanlah tugas yang mudah. Kami mencipta KVM-over-IP untuk diri kami sendiri melalui imej pemulihan dan mesin maya.

Sekiranya terdapat masalah dengan sistem pengendalian pada pelayan jauh, pentadbir memuat turun imej pemulihan dan menjalankan kerja yang diperlukan. Kaedah ini berfungsi dengan baik apabila punca kegagalan diketahui, dan imej pemulihan dan sistem pengendalian yang dipasang pada pelayan adalah daripada keluarga yang sama. Jika punca kegagalan belum diketahui, anda perlu memantau kemajuan memuatkan sistem pengendalian.

KVM jauh

Anda boleh mengakses konsol pelayan menggunakan alat terbina dalam seperti IPMI atau Intel® vPro™, atau melalui peranti luaran yang dipanggil IP-KVM. Terdapat situasi di mana semua teknologi yang disenaraikan tidak tersedia. Namun, ini bukanlah penamat. Jika pelayan boleh dibut semula dari jauh ke dalam imej pemulihan berdasarkan sistem pengendalian Linux, maka KVM-over-IP boleh diatur dengan cepat.

Imej pemulihan ialah sistem pengendalian penuh yang terletak dalam RAM. Oleh itu, kami boleh menjalankan sebarang perisian, termasuk mesin maya (VM). Iaitu, anda boleh melancarkan VM di mana sistem pengendalian pelayan akan dijalankan. Akses kepada konsol VM boleh diatur, contohnya, melalui VNC.

Untuk menjalankan sistem pengendalian pelayan di dalam VM, anda mesti menentukan cakera pelayan sebagai cakera VM. Dalam sistem pengendalian keluarga Linux, cakera fizikal diwakili oleh peranti blok dalam bentuk / dev / sdX, yang boleh digunakan seperti fail biasa.

Sesetengah hypervisor, seperti QEMU dan VirtualBox, membenarkan anda menyimpan data VM dalam bentuk "mentah", iaitu, hanya data penyimpanan tanpa metadata hypervisor. Oleh itu, VM boleh dilancarkan menggunakan cakera fizikal pelayan.

Kaedah ini memerlukan sumber untuk melancarkan imej pemulihan dan VM di dalamnya. Walau bagaimanapun, jika anda mempunyai empat atau lebih gigabait RAM, ini tidak akan menjadi masalah.

Menyediakan Alam Sekitar

Anda boleh menggunakan program yang ringan dan ringkas sebagai mesin maya QEMU, yang selalunya bukan sebahagian daripada imej pemulihan dan oleh itu mesti dipasang secara berasingan. Imej pemulihan yang kami tawarkan kepada pelanggan adalah berdasarkan Arch Linux, yang menggunakan pengurus pakej Pacman.

Perkara pertama yang perlu anda lakukan ialah memastikan imej pemulihan menggunakan perisian terkini. Anda boleh menyemak dan mengemas kini semua komponen OS dengan arahan berikut:

pacman -Suy

Selepas kemas kini, anda perlu memasang QEMU. Perintah pemasangan melalui pacman akan kelihatan seperti ini:

pacman -S qemu

Mari semak sama ada qemu dipasang dengan betul:

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

Jika semuanya begitu, maka imej pemulihan sedia untuk digunakan.

Memulakan mesin maya

Pertama, anda perlu memutuskan jumlah sumber yang diperuntukkan kepada VM dan mengetahui laluan ke cakera fizikal. Dalam kes kami, kami akan memperuntukkan dua teras dan dua gigabait RAM ke mesin maya, dan cakera terletak di sepanjang jalan / Dev / literasi и / dev / sdb. Mari mulakan 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

Sedikit lebih terperinci tentang maksud setiap parameter:

  • -m 2048M — memperuntukkan 2 GB RAM kepada VM;
  • -net nic -pengguna bersih — menambah sambungan ringkas ke rangkaian melalui hipervisor menggunakan NAT (Terjemahan Alamat Rangkaian);
  • -dayakan-kvm — dayakan maya KVM (Mesin Maya Kernel) penuh;
  • -hos cpu — kami memberitahu pemproses maya untuk mendapatkan semua fungsi pemproses pelayan;
  • -M PC — jenis peralatan PC;
  • -smp 2 — pemproses maya mestilah dwi-teras;
  • -vga std — pilih kad video standard yang tidak menyokong resolusi skrin besar;
  • -fail pemacu=/dev/sda,format=mentah,index=0,media=cakera
    • fail=/dev/sdX — laluan ke peranti blok yang mewakili cakera pelayan;
    • format=mentah — kami perhatikan bahawa dalam fail yang ditentukan semua data dalam bentuk "mentah", iaitu, seperti pada cakera;
    • indeks = 0 — nombor cakera, mesti bertambah satu untuk setiap cakera berikutnya;
    • media=cakera — mesin maya mesti mengenali storan ini sebagai cakera;
  • -vnc:0, kata laluan — mulakan pelayan VNC secara lalai pada 0.0.0.0:5900, gunakan kata laluan sebagai kebenaran;
  • -pantau stdio — komunikasi antara pentadbir dan qemu akan berlaku melalui aliran input/output standard.

Jika semuanya teratur, monitor QEMU akan bermula:

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

Kami menunjukkan bahawa kebenaran berlaku menggunakan kata laluan, tetapi tidak menunjukkan kata laluan itu sendiri. Ini boleh dilakukan dengan menghantar arahan tukar kata laluan vnc ke monitor QEMU. Nota penting: Kata laluan tidak boleh melebihi lapan aksara.

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

Selepas ini, kami boleh berhubung dengan mana-mana klien VNC, contohnya, Remmina, menggunakan alamat IP pelayan kami dengan kata laluan yang kami tetapkan.

IP-KVM melalui QEMU

IP-KVM melalui QEMU

Kini kita bukan sahaja melihat kemungkinan ralat pada peringkat pemuatan, tetapi kita juga boleh menanganinya.

Apabila anda selesai, anda mesti mematikan mesin maya. Ini boleh dilakukan sama ada di dalam OS dengan menghantar isyarat untuk ditutup, atau dengan memberikan arahan system_powerdown dalam pemantau QEMU. Ini akan bersamaan dengan menekan butang tutup sekali: sistem pengendalian di dalam mesin maya akan ditutup dengan lancar.

Pemasangan sistem pengendalian

Mesin maya mempunyai akses penuh kepada cakera pelayan dan oleh itu boleh digunakan untuk memasang sistem pengendalian secara manual. Satu-satunya had ialah jumlah RAM: imej ISO tidak boleh sentiasa diletakkan dalam RAM. Mari kita peruntukkan empat gigabait RAM untuk menyimpan imej / mnt:

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

Kami juga akan memuat turun imej pemasangan sistem pengendalian 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

Kini anda boleh memulakan 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

Флаг -but d memasang but dari pemacu CD. Kami berhubung dengan pelanggan VNC dan melihat pemuat but FreeBSD.

IP-KVM melalui QEMU

Memandangkan mendapatkan alamat melalui DHCP digunakan untuk mengakses Internet, selepas konfigurasi mungkin perlu untuk but ke dalam sistem yang baru dipasang dan membetulkan tetapan rangkaian. Dalam sesetengah kes, pemacu penyesuai rangkaian mungkin perlu dipasang, kerana kad rangkaian yang dipasang dalam pelayan dan yang dicontohi dalam VM adalah berbeza.

Kesimpulan

Kaedah mengatur akses jauh ke konsol pelayan ini menggunakan beberapa sumber pelayan, bagaimanapun, ia tidak mengenakan sebarang keperluan khas pada perkakasan pelayan, dan oleh itu boleh dilaksanakan dalam hampir semua keadaan. Menggunakan penyelesaian ini menjadikannya lebih mudah untuk mendiagnosis kerosakan perisian dan memulihkan kefungsian pelayan jauh.

Sumber: www.habr.com

Tambah komen