QEMU-ээр дамжуулан IP-KVM

QEMU-ээр дамжуулан IP-KVM

KVM-гүй серверүүд дээр үйлдлийн системийг ачаалах асуудлыг шийдэх нь тийм ч амар ажил биш юм. Бид сэргээх дүрс болон виртуал машин ашиглан өөрсдөдөө зориулж KVM-over-IP үүсгэдэг.

Үйлдлийн системд асуудал гарсан тохиолдолд алсын сервер дээр, администратор нь сэргээх зургийг татаж аваад шаардлагатай ажлыг гүйцэтгэдэг. Энэ арга нь эвдрэлийн шалтгаан тодорхой болсон үед маш сайн ажилладаг бөгөөд сэргээх зураг болон сервер дээр суулгасан үйлдлийн систем нь нэг гэр бүлийнх юм. Хэрэв эвдрэлийн шалтгаан хараахан тодорхойгүй байгаа бол үйлдлийн системийг ачаалах явцыг хянах хэрэгтэй.

Алсын KVM

Та IPMI эсвэл Intel® vPro™ гэх мэт суурилуулсан хэрэгслүүд эсвэл IP-KVM нэртэй гадаад төхөөрөмжөөр дамжуулан серверийн консол руу нэвтрэх боломжтой. Бүртгэгдсэн бүх технологийг ашиглах боломжгүй нөхцөл байдал бий. Гэсэн хэдий ч энэ нь төгсгөл биш юм. Хэрэв серверийг алсаас Линукс үйлдлийн системд суурилсан сэргээх дүрс болгон дахин ачаалах боломжтой бол KVM-over-IP-ийг хурдан зохион байгуулах боломжтой.

Сэргээх зураг нь RAM-д байрладаг бүрэн хэмжээний үйлдлийн систем юм. Тиймээс бид виртуал машин (VM) гэх мэт ямар ч програм хангамжийг ажиллуулж болно. Өөрөөр хэлбэл, та серверийн үйлдлийн систем ажиллах VM-г ажиллуулж болно. VM консол руу хандах хандалтыг жишээ нь VNC-ээр дамжуулан зохион байгуулж болно.

VM дотор серверийн үйлдлийн системийг ажиллуулахын тулд та серверийн дискүүдийг VM диск гэж зааж өгөх ёстой. Линуксийн гэр бүлийн үйлдлийн системүүдэд физик дискийг хэлбэрийн блок төхөөрөмжөөр төлөөлдөг / dev / sdX, ердийн файл шиг ажиллах боломжтой.

QEMU болон VirtualBox зэрэг зарим гипервизорууд нь VM-ийн өгөгдлийг "түүхий" хэлбэрээр, өөрөөр хэлбэл зөвхөн гипервизорын мета өгөгдөлгүйгээр хадгалах өгөгдлийг хадгалах боломжийг олгодог. Тиймээс серверийн физик дискийг ашиглан VM-ийг ажиллуулж болно.

Энэ арга нь сэргээх дүрс болон түүний доторх VM-г эхлүүлэхэд нөөц шаарддаг. Гэсэн хэдий ч, хэрэв та дөрөв ба түүнээс дээш гигабайт RAM-тай бол энэ нь асуудал үүсгэхгүй.

Байгаль орчныг бэлтгэх

Та хөнгөн бөгөөд энгийн программыг виртуал машин болгон ашиглаж болно QEMU, энэ нь ихэвчлэн сэргээх зургийн хэсэг биш тул тусад нь суулгах шаардлагатай. Үйлчлүүлэгчиддээ санал болгож буй сэргээх зураг дээр үндэслэсэн болно Arch Linux, багц менежер ашигладаг 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

Параметр тус бүр нь юу гэсэн үг болохыг бага зэрэг дэлгэрэнгүй:

  • -м 2048 сая — VM-д 2 ГБ RAM хуваарилах;
  • -net nic -net хэрэглэгч — NAT (Сүлжээний хаягийн орчуулга) ашиглан гипервизороор сүлжээнд энгийн холболт нэмэх;
  • -enable-kvm — бүрэн KVM (Цөмийн виртуал машин) виртуалчлалыг идэвхжүүлэх;
  • - cpu хост — бид виртуал процессорыг сервер процессорын бүх функцийг авахыг хэлдэг;
  • - M PC - компьютерийн төхөөрөмжийн төрөл;
  • -smp 2 - виртуал процессор нь хоёр цөмт байх ёстой;
  • -vga std - том дэлгэцийн нягтралыг дэмждэггүй стандарт видео картыг сонгох;
  • -drive file=/dev/sda,format=raw,index=0,media=disk
    • файл=/dev/sdX — серверийн дискийг төлөөлж буй блок төхөөрөмжийн зам;
    • формат = түүхий - заасан файлд бүх өгөгдөл "түүхий" хэлбэрээр, өөрөөр хэлбэл дискэн дээр байгаа гэдгийг бид тэмдэглэж байна;
    • индекс = 0 - дискний дугаар, дараагийн диск бүрт нэгээр нэмэгдэх ёстой;
    • медиа=диск — виртуал машин нь энэ санг диск гэж таних ёстой;
  • -vnc: 0, нууц үг — VNC серверийг анхдагчаар 0.0.0.0:5900 дээр эхлүүлэх, нууц үгээ зөвшөөрөл болгон ашиглах;
  • -Студио хянах - администратор болон qemu хоорондын харилцаа нь стандарт оролт/гаралтын урсгалаар дамжин явагдана.

Хэрэв бүх зүйл эмх цэгцтэй байвал QEMU дэлгэц эхэлнэ:

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

Бид нууц үг ашиглан зөвшөөрөл авдаг гэж заасан боловч нууц үгээ өөрөө зааж өгөөгүй. Үүнийг QEMU монитор руу vnc нууц үг өөрчлөх командыг илгээснээр хийж болно. Анхаарах зүйл: Нууц үг найман тэмдэгтээс илүү байж болохгүй.

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

Үүний дараа бид Remmina гэх мэт VNC клиенттэй серверийнхээ IP хаягийг бидний заасан нууц үгээр холбож болно.

QEMU-ээр дамжуулан IP-KVM

QEMU-ээр дамжуулан IP-KVM

Одоо бид ачаалах үе шатанд гарч болзошгүй алдааг олж харахаас гадна тэдгээрийг шийдвэрлэх боломжтой.

Та дууссаны дараа та виртуал машиныг унтраах ёстой. Үүнийг үйлдлийн систем дотор унтрах дохио илгээх эсвэл тушаал өгөх замаар хийж болно системийн_унтраалт QEMU монитор дээр. Энэ нь унтраах товчийг нэг удаа дарахтай тэнцэх болно: виртуал машин доторх үйлдлийн систем жигд унтарна.

Үйлдлийн систем суурилуулах

Виртуал машин нь серверийн диск рүү бүрэн хандах боломжтой тул үйлдлийн системийг гараар суулгахад ашиглаж болно. Цорын ганц хязгаарлалт бол RAM-ийн хэмжээ юм: ISO дүрсийг үргэлж RAM-д байрлуулж болохгүй. Зургийг хадгалахын тулд дөрвөн гигабайт RAM-г хуваарилъя / mnt:

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

Flag -ачаалах d CD хөтчөөс ачаалах ажиллагааг суулгана. Бид VNC клиенттэй холбогдож, FreeBSD ачаалагчийг харна.

QEMU-ээр дамжуулан IP-KVM

DHCP-ээр дамжуулан хаягийг интернетэд нэвтрэхэд ашигладаг байсан тул тохиргооны дараа шинээр суулгасан систем рүү ачаалж, сүлжээний тохиргоог засах шаардлагатай байж магадгүй юм. Зарим тохиолдолд серверт суулгасан сүлжээний карт болон VM дээр дууриагдсан карт өөр байдаг тул сүлжээний адаптер драйверуудыг суулгах шаардлагатай байж болно.

дүгнэлт

Серверийн консол руу алсын зайнаас хандалтыг зохион байгуулах энэ арга нь серверийн зарим нөөцийг зарцуулдаг боловч серверийн техник хангамжид тусгай шаардлага тавьдаггүй тул бараг ямар ч нөхцөлд хэрэгжүүлэх боломжтой. Энэхүү шийдлийг ашигласнаар програм хангамжийн алдааг оношлох, алсын серверийн ажиллагааг сэргээхэд илүү хялбар болно.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх