KVM (цөмд суурилсан виртуал машин эсвэл Цөмд суурилсан Виртуал) нь үнэгүй, нээлттэй эхийн виртуалчлалын програм хангамж юм эх код. Та олон виртуал машин (VM) үүсгэж болно, VM бүр нь диск, процессор, RAM гэх мэт өөрийн гэсэн виртуал техник хангамжтай. Энэ нь цөмийн 2.6.20 хувилбарт Линуксийн цөмийн үндсэн хэсэгт багтсан болно.

Хэрэв та өөр хувилбар хайж байгаа бол VirtualBox, бид KVM ашиглахыг зөвлөж байна. Мөн бид энэхүү гайхалтай виртуалчлалын программ хангамжийг биечлэн ашигладаг.

KVM Ubuntu 17.04 суулгаж байна

KVM суулгахын тулд танд дараах урьдчилсан нөхцөл байх ёстой.

  1. Системийн BIOS-д виртуалчлалыг идэвхжүүлнэ.
  2. Хэрэв виртуалчлалыг дэмждэг бол системийн CPU-г шалгана уу. Доорх командыг ажиллуулна уу.

egrep -c '(vmx|svm)' /proc/cpuinfo

Дээрх командаас 1 ба түүнээс дээш гаралтыг авах нь процессор виртуалчлалыг дэмждэг, эс тэгвээс 0 ба түүнээс бага байвал дэмжихгүй гэсэн үг.

3. Архитектурыг шалгана уу Ubuntu 16.04 LTS нэг командыг ажиллуулж, өөрөөр хэлбэл

X86_64 нь 64 битийн цөм юм.
I386, i486, i586 эсвэл i686 нь 32 битийн цөм юм.

Үүний тулд 32 битийн үйлдлийн систем нь дээд тал нь 2 ГБ RAM-аар хязгаарлагддаг виртуал машин.
32 битийн цөм нь зөвхөн 32 битийн зочин цөмийг байршуулдаг бол 64 битийн цөм нь 32 битийн болон 64 битийн зочин O.S.

Ubuntu дээр KVM суулгах алхмуудыг дагана уу

Энэ хэсэгт бид KVM суулгах алхмуудыг бичих болно. Өмнөх нийтлэлдээ бид сурсан. Магадгүй энэ нь танд бас сонирхолтой байх болно.

1. KVM Ubuntu 17.04 болон бусад хамааралтай багцуудыг суулгана уу

Ubuntu 17.04 LTS дээр та тушаалыг ашиглаж болно тохиромжтойэсвэл хоёуланг нь авах боломжтой. apt эсвэл apt-get командыг ашиглан суулгасан багцуудын хооронд ямар ч ялгаа байхгүй тул та энд сайн байна.

sudo apt шинэчлэлт

sudo apt install qemu - kvm libvirt - bridge bin - utils

2. KVM програм хангамжийн шинэ хэрэглэгчид болон бүлгийн талаар суралц

Багцуудыг суулгасны дараа хэрэглэгчид болон бүлгүүдийн тоонд зарим нэмэлтүүд хийгдэнэ.

(A) Хоёр хэрэглэгч үүсгэгдсэн.
-libvirt-qemu
- libvirt-dnsmasq

sharad@linuxworld :~ $ tail - 2 /etc/passwd

libvirt - qemu : x : 64055 : 129 : Libvirt Qemu ,:/ var / lib / libvirt : /bin/ худал

libvirt - dnsmasq : x : 121 : 130 : Libvirt Dnsmasq ,:/ var / lib / libvirt / dnsmasq : /bin/ худал

sharad@linuxworld :~ $

B) хоёр бүлэг бий болно.

- квм
-libvirtd

sharad@linuxworld :~ $ tail - 2 /etc/group

квм : x : 129 :

libvirtd:x:130:sharad

sharad@linuxworld :~ $

Хэрэглэсэн "charade" гэж нэрлэгддэг зүйл нь "libvirtd" бүлгийн гишүүн гэдгийг та анзаарсан байх. Энэ нь энэ хэрэглэгч KVM ашиглах боломжтой гэсэн үг юм.

3. KVM суулгацаа шалгана уу

KVM суулгацаа шалгах нь маш энгийн. Командыг ажиллуул -

virsh - qemu-тай: ///системийн жагсаалт

Эхний удаад алдаа гарч байна.

алдаа: гипервизортой холбогдож чадсангүй

алдаа: Сокетыг холбож чадсангүй '/var/run/libvirt/libvirt-sock': Зөвшөөрөлгүй

sharad@linuxworld :~ $

Энэ асуудлыг шийдэхийн тулд та гараад компьютер дээрээ дахин нэвтрэх ёстой. Одоогийн хэрэглэгч дахин нэвтрэх ёстойг зааж өгнө.

Нэвтрэн орсны дараа тушаалыг дахин ажиллуулна уу. Энэ удаад та доорх үр дүнг авах ёстой. Виртуал машин үүсгэгдээгүй байгаа тул энэ нь хоосон байна.

sharad@linuxworld :~ $ virsh - qemu-тай : ///системийн жагсаалт

ID нэр муж

—————————————————-

sharad@linuxworld :~ $

4. Virtual Machine Manager суулгана

Энд бид удирдахад зориулсан ширээний програм болох Virtual Machine Manager ашиглаж байна виртуал машинууд Libvirt-ээр дамжуулан KVM.

Виртуал машин менежерийг суулгахын тулд энэ тушаалыг ажиллуулна уу.

sudo apt install virt - менежер

Та Виртуал Машины Менежерийг Dash Home руу оруулснаар нээж болно, энэ нь програмыг нээх болно.

Виртуал машины менежерийг командын мөрөөр нээхийн тулд − гэж оруулна уу

эрхэм менежер

Өмнө нь бид KVM-г Ubuntu 14.04 LTS Desktop дээр суулгахдаа анхны виртуал машиныг бүтээх явцад асуудалтай тулгарсан ч бид үүнийг маш амархан шийдэж чадсан. Бид Ubuntu 16.04 LTS Desktop дээр ийм асуудал олдсонгүй.

Хэрэв танд "KVM Ubuntu 17.04 суулгах" сэдвээр асуулт байвал бидэнтэй коммент хэлбэрээр бичээрэй. Бид таны асуудлыг илүү хурдан ойлгоход тань туслах болно.

Хэрэв та алдаа олсон бол текстийн хэсгийг тодруулж, товшино уу Ctrl+Enter.

Би суулгацын талаар өмнө нь бичсэн Qemu-KVMВ Дебиан. Гэхдээ миний бодлоор мэдээлэл бүрэн бус байсан. Дээрээс нь би зарим нарийн ширийн зүйлийг анхаарч үзээгүй. Тиймээс би Qemu-KVM виртуал машиныг суулгах тухай шинэчлэгдсэн нийтлэлийг та бүхэнд хүргэж байна. Мэдээжийн хэрэг, би хуучин нийтлэлийг устгах болно.

Энэ нь юу болохыг тайлбарлах ёстой гэж бодож байна виртуал машин, үнэ цэнэтэй биш. Та үүнийг мэдэж байгаа байх (энэ нийтлэлийг уншиж байгаа тул). Үгүй бол -. Бид энэ сэдвээр шууд анхаарлаа хандуулах болно. Qemu-KVMнь бүрэн виртуалчлалын хамгийн мөрөөдөмтгий (миний бодлоор) хоёр технологийг хослуулах төсөл юм. Кемунь маш олон төрлийн техник хангамжийн архитектурыг дэмждэг нэгэн төрлийн "компьютерийн эмулятор" юм. Энэ нь ямар ч төхөөрөмж дээр бараг ямар ч үйлдлийн системийг ажиллуулж болно (жишээлбэл, би хуучин хувилбаруудыг ажиллуулсан Mac OS X, үүнд зориулагдсан PowerPC). Qemu-ийн сул тал бол техник хангамжийн хурдатгал байхгүйгээс удаан байдаг. Дараа нь өөр нэг төсөл аврах ажилд ирдэг - KVM. Эсвэл цөмийн виртуал машин. KVM нь Линуксийн цөмийн технологи бөгөөд бүрэн виртуалчлалаар техник хангамжийг хурдасгах боломжийг олгодог. KVM-ийн сул тал нь зөвхөн x86 архитектурыг дэмждэг

Яагаад Qemu-KVM? Линуксийн хувьд энэ бол хамгийн их санал болгож буй виртуалчлалын төсөл юм. Энэ нь илүү хурдан ажилладаг VirtualBoxТэгээд VMware тоглуулагч(миний туршилтуудын дагуу) KVM бол Линуксийн уугуул технологи юм. Дээрээс нь хэрэв танд сайн зүйл байвал тоглоомын компьютерХоёр видео карттай бол та Qemu-KVM-д суулгаж болно Windows, видео картуудын аль нэгийг нь шидээд өөр үйлдлийн систем рүү дахин ачаалахаа март. Хэрэв та тоглохыг хүсвэл Windows үйлдлийн системтэй виртуал машин ажиллуулаад тоглоорой. Гүйцэтгэл нь техник хангамж дээр суулгасан Windows-ийн гүйцэтгэлийн 95% байх болно. Гэхдээ миний бодлоор энэ нь зүгээр л гоёмсог юм. Би энэ талаар тусдаа нийтлэл бичих болно. Сонирхолтой байх болно :)

Одоо би үйл ажиллагааныхаа төлөвлөгөөг тайлбарлах болно. Нэгдүгээрт, би жишээ ашиглан суулгацыг хийх болно Debian 8.2 GNOME 64 бит, гэхдээ бусад график орчинд мэдэгдэхүйц ялгаа гарахгүй. Хоёрдугаарт, би KVM-тэй ажиллахыг зөвхөн график горимд тайлбарлах болно (эцсийн эцэст бид үүнийг сервер дээр суулгахгүй). Тиймээс серверийн виртуалчлалын хувьд ихэвчлэн хийдэг шиг терминал, скрипт гэх мэт зүйл байхгүй. Гуравдугаарт, би танд Qemu болон KVM-ийн баримт бичгийг нэмэлт уншихыг зөвлөж байна (би нийтлэлийн төгсгөлд холбоосыг өгөх болно). Хэрэв та энэ багцын боломжуудыг бүрэн дүүрэн ашиглахыг хүсч байвал энэ нь танд маш их хэрэг болно. За, бидний үйл ажиллагааны төлөвлөгөө тодорхой байна. Одоо үйл ажиллагааны алхамууд:

  • qemu-kvm суулгах;
  • график менежер болон нэмэлт хэрэгслийг суурилуулах;
  • сүлжээний гүүр тавих;
  • виртуал машинд зориулсан хадгалах сан үүсгэх;
  • зочин системийг суулгаж байна.
Эхлээд таны компьютер тоног төхөөрөмжийн виртуалчлалыг дэмждэг эсэхийг шалгацгаая. Үүнийг хийхийн тулд терминал дээрх тушаалыг ажиллуулна уу:

egrep "(vmx|svm)" /proc/cpuinfo

Тушаалын гаралт нь аль нэгийг агуулсан байх ёстой vmx, эсвэл svm. Хэрэв тэдгээр нь байхгүй бол BIOS-д виртуалчлал идэвхжсэн эсэхийг шалгана уу (зүйлүүдийг хайж олоорой Intel VT-iэсвэл ижил төстэй AMD). Хэрэв юу ч байхгүй бол та азгүй болно.

Шаардлагатай бүрэлдэхүүн хэсгүүдийг суулгана уу:

sudo apt суулгах qemu-kvm bridge-utils libvirt-bin virt-manager

libvirt бүлэгт өөрийгөө нэмнэ үү:

sudo adduser $USER libvirt

Одоо сүлжээгээ тохируулцгаая. Бүх виртуал машинууд сүлжээнд нэвтэрч, хоорондоо харилцах боломжтой байхын тулд та үүсгэх хэрэгтэй сүлжээний гүүрвиртуал машин бүрийн виртуал сүлжээний картууд ( товших төхөөрөмжүүд). Бид график интерфэйсээс виртуал машинуудыг суулгах тул гараар цорго үүсгэх шаардлагагүй болно. Virt менежербиднийг эхлэх болгондоо үүнийг хийх болно. Бид зөвхөн гүүрийг тохируулах хэрэгтэй. Эхлээд цөм дэх чиглүүлэлтээ идэвхжүүлье:

sudo nano /etc/sysctl.conf

Бид net.ipv4_forward=0 мөрийг хайж, утгыг нь өөрчилнө 1 . Бид мөн хэмнэдэг:

sudo sysctl -p

Одооноос эхлэн би дараах зүйлийг таамаглах болно: 1) таны компьютер дээр нэг байгаа сүлжээний карт, энэ нь чиглүүлэгчээс IP хаягийг хүлээн авдаг. 2) та 3G модемоор интернетэд холбогдох боломжтой бөгөөд таны сүлжээний карт үнэгүй. Энэ сонголт нь илүү их гар ажиллагаатай холбоотой боловч хэд хэдэн удаа туршиж үзсэн (би үүнийг нэг машин дээр өөрөө хийсэн). Тиймээс интерфэйс файлыг нээнэ үү:

sudo nano /etc/network/interfaces

Түүний анхдагч агуулга нь:



авто хар
iface lo inet loopback

Бид түүний агуулгыг өөрчилдөг. Эхний сонголтын хувьд:

эх сурвалж /etc/network/interfaces.d/*

# Сүлжээний холболтын интерфейс
авто хар
iface lo inet loopback

автомат eth0
iface eth0 inet гарын авлага

авто br0
iface br0 inet статик
хаяг 192.168.0.2
гарц 192.168.0.1
сүлжээний маск 255.255.255.0
сүлжээ 192.168.0.0
нэвтрүүлэг 192.168.0.255
bridge_ports eth0
bridge_stp унтраах
bridge_maxwait 0
bridge_fd 0

Хоёр дахь сонголтын хувьд:

эх сурвалж /etc/network/interfaces.d/*

# Сүлжээний холболтын интерфейс
авто хар
iface lo inet loopback

автомат ppp0
iface ppp0 inet wvdial

автомат eth0
iface eth0 inet гарын авлага

авто br0
iface br0 inet статик
хаяг 192.168.0.2
гарц 192.168.0.1
сүлжээний маск 255.255.255.0
сүлжээ 192.168.0.0
нэвтрүүлэг 192.168.0.255
bridge_ports eth0
bridge_stp унтраах
bridge_maxwait 0
bridge_fd 0
up route del default br0

Жич:Хэрэв систем ажиллаж эхэлсний дараа модемоор автомат интернет холболт шаардлагагүй бол auto ppp0 болон мөрүүдийг устгана уу.
iface ppp0 inet wvdial . Үгүй бол систем эхлэхэд модемийг USB порт руу оруулсан эсэхийг шалгаарай.

Хадгалах. Одоо модемтой сонголтын хувьд та залгагч програм суулгах хэрэгтэй wvdial:

sudo apt install wvdial

Тохиргоог засах (тэмдэглэл: 3G модемийг жишээ болгон ашиглаж байна Beeline. Та интернетээс бусад модемуудын тохиргооны жишээг хялбархан олох боломжтой):

sudo nano /etc/wvdial.conf


Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","home.beeline.ru"
Тэнэг горим = 1
ISDN = 0
Модемийн төрөл = USB модем
Шинэ PPPD = тийм
Утас = *99#
Модем = /dev/ttyACM0
Хэрэглэгчийн нэр = beeline
Нууц үг = beeline
Бауд = 9600
Улс = Орос
Автомат дахин холбогдох=асаалттай
Автомат DNS = унтраалттай
Сул зогсолтын секунд = 0

Хадгалах. Одоо модем систем ачаалсны дараа шууд асах болно. Del default br0 шугамын маршрут нь гүүрээр дамжин өнгөрөх анхдагч маршрутыг устгадаг. Хэрэв та үүнийг хийхгүй бол 3G модемоор бус харин гүүрээр дамжин өнгөрөх тул та интернетэд холбогдох боломжгүй болно.

Бидний хэлэх ёстой сүүлчийн алхам галт хана, ингэснээр энэ нь манай виртуал машинуудаас сүлжээ рүү болон буцах урсгалыг дамжуулдаг. Үүнийг хийхийн тулд та хоёр аргаар явж болно: хэд хэдэн дүрэм бүхий скрипт бичих iptables, системтэй хамт ажиллах эсвэл эдгээр дүрмийг гараар оруулаад хадгална. Би эхний сонголтыг ашиглах болно. Хоёр дахь нь та багцыг суулгах хэрэгтэй болно iptables-тогтвортойтэгээд зүгээр л дүрмүүдийг нэг нэгээр нь оруулаарай (sudo ашиглан). Тэгэхээр. скрипт үүсгэх (ямар ч хэлбэрээр текст засварлагч). Дараах контентыг тэнд буулгана уу:

#!/bin/sh

# Хаяг солих (NAT) ашиглах гаралтын интерфейсийг тодорхойлно
iptables -v -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# Бид модем руу ирсэн бүх пакетуудыг дамжуулдаг дэлхийн сүлжээ(0.0.0.0/0) дотоод сүлжээнд (192.168.0.0/24)
iptables -v -A FORWARD -i ppp0 -o br0 -s 0.0.0.0/0 -d 192.168.0.0/24 -j ХҮЛЭЭН АВАХ

# Ирж буй бүх пакетуудыг дамжуулах дотоод сүлжээ(192.168.0.0/24)-аас дэлхийн (0.0.0.0/0)
iptables -v -A FORWARD -i br0 -o ppp0 -s 192.168.0.0/24 -d 0.0.0.0/0 -j ХҮЛЭЭН АВАХ

Үүнийг хадгална уу гарц.shболон гүйцэтгэх эрхийг (файлын шинж чанарт эсвэл командтай терминал дээр) өгнө chmod +x гарц.sh). Одоо та үүнийг систем ачаалсны дараа гараар эхлүүлэх эсвэл эхлүүлэхэд нэмэх боломжтой. Үүнийг хийхийн тулд скриптийг шилжүүлнэ үү ~/.config/autostartфайлын менежершоуг асаана уу далд файлуудмөн та лавлахыг харах болно .configтаны гэрийн лавлахад).

Одоо виртуал машиныг суулгахад бүх зүйл бэлэн боллоо. Програмын цэснээс Virt Manager (виртуал машины менежер) -ийг ажиллуулна уу:

дарна уу баруун товшино уушугам дээр localhostмөн сонгох Дэлгэрэнгүй мэдээлэл. Таб руу оч Хадгалах. Виртуал машинуудыг хадгалахын тулд бид лавлах (эсвэл дискний хуваалт/диск) зааж өгөх хэрэгтэй.

Зүүн доод буланд нэмэх тэмдэг дээр дарна уу ( Усан сан нэмнэ үү), хадгалалтын төрөл, түүнд хүрэх замыг зааж өгнө.

Таб дээр Сүлжээний интерфейсүүд, та бүх зүйл ажиллаж байгаа эсэхийг шалгаж болно.

Одоо бид дарна уу Файл - Шинэ виртуал машин . Дискний дүрс рүү очих зам болон виртуал машины төрлийг зааж өгнө үү. Дараа нь бид тоо хэмжээг зааж өгнө RAMтүүний хувьд болон процессорын цөмийн тоо. Дараа нь манай хадгалах газрыг зааж өгөөд товшино уу Шинэ боть. Нэрийг нь зааж өг, төрлийг нь үлдээгээрэй qcow2, болон хэмжээ. Энэ нь виртуал байх болно хатуу диск. Хэрэв та график бүрхүүл, олон тооны програм бүхий систем суулгахаар төлөвлөж байгаа бол илүү их зай (50 гигабайт) өгнө үү. Асаалттай сүүлийн табтэмдэг тавих Эхлүүлэхээсээ өмнө тохиргоог өөрчил, бид чанарыг шалгадаг сүлжээний төхөөрөмжМанай гүүр сонгогдсон тул виртуал машины нэрээ бичээд дарна уу Бүрэн. Энэ виртуал машины параметрийн цонх таны өмнө нээгдэнэ.





Таб руу оч CPU, мөн тэмдэг тавина Хост процессорын тохиргоог хуулах.

Табын хажууд цэвэр(дараагийн), мөн зааж өгнө vitio. Таб дээр Дэлгэцзааж өгнө үү Халуун ногоо, мөн таб дээр Видео - QXL. Ихэвчлэн энэ холбоосыг өгдөг хамгийн их гүйцэтгэлграфик зурах, гэхдээ хэрэв хүсвэл та туршилт хийж болно. Зочдод зориулсан гэдгийг анхаарна уу Windows системүүд, QXL драйверийг тусад нь суулгахыг шаарддаг (Windows өөрөө).


Одоо бүх зүйл бэлэн болсон тул зүүн дээд буланд товшино уу Суулгацыг эхлүүлэх. Системийг ердийнхөөрөө суулгаарай, нэг үл хамаарах зүйл бол: суулгагч сүлжээг автоматаар тохируулж эхлэхэд дарна уу. Цуцлах, сонго Сүлжээг гараар тохируулна уу. Виртуал машинд хүссэн IP хаягийг зааж өгнө үү (бидний тохиолдолд 192.168.0.3 ), дэд сүлжээний маск ( 255.255.255.0 ), гарц (гарц нь хостын хаяг байх болно, өөрөөр хэлбэл 192.168.0.2 ) болон DNS сервер (энд зүгээр л Google-г зааж өгнө үү 8.8.8.8 ). Ингээд л болоо. Цаашид юу ч хийх шаардлагагүй. Системийг суулгаж, тохируулна уу. Ер нь тэгээд л болоо. Тайлбарласан алхмууд нь VirtualBox-ийг илүү сайн хувилбараар солих арга юм. Баримт бичгийг уншсаны дараа та Qemu-KVM-ийн боломж хэр өргөн болохыг ойлгох болно. Би энд зориудаар консолын нэмэлт параметрүүд болон виртуал машинуудыг терминалаар ажиллуулах аргуудыг тайлбарлаагүй, учир нь энэ нь гэрийн машинд үргэлж шаардлагатай байдаггүй. Би энэ талаар тусдаа нийтлэл бичих болно, гэрийн олон үйлдэлт сервер (энэ нь виртуал машины серверийн үүрэг гүйцэтгэдэг) тохируулах талаар. Зарим шалтгааны улмаас юу бичсэнийг ойлгоогүй, эсвэл үл ойлгогдох мөчүүд байсаар байгаа хүмүүст би тайлбарлахгүй байгаа видеог үзэхийг санал болгож байна, гэхдээ энэ бүх зүйлийг хэрхэн суулгах, тохируулахыг харуулах болно. Хэрэв танд нийтлэлд санал, нэмэлт зүйл байгаа бол сэтгэгдэл дээр бичнэ үү.

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

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

Эхлээд виртуалчлал гэж юу болохыг ойлгоцгооё. Албан ёсны тодорхойлолт нь: "Виртуалчлал гэдэг нь нэг физик нөөц дээр ажилладаг тооцоолох процессуудыг бие биенээсээ логикоор тусгаарлахын зэрэгцээ техник хангамжийн хэрэгжилтээс хийсвэрлэсэн тооцоолох нөөцийн багц эсвэл тэдгээрийн логик хослолоор хангах явдал юм." Өөрөөр хэлбэл, хүний ​​үгээр хэлбэл, нэг хүчирхэг сервертэй болсноор бид үүнийг хэд хэдэн дунд хэмжээний сервер болгон хувиргах боломжтой бөгөөд тус бүр нь дэд бүтцээр өөрт өгөгдсөн даалгавраа бусдад саад учруулахгүйгээр гүйцэтгэх болно.

Байгууллага дахь виртуалчлалтай нягт хамтран ажилладаг системийн администраторууд, гар урлалын мастерууд, уран бүтээлчид нь хоёр лагерьт хуваагддаг. Зарим нь өндөр технологийн, гэхдээ Windows-д зориулсан галзуу үнэтэй VMware-г дагадаг. Бусад нь Linux VM дээр суурилсан нээлттэй эх сурвалж, үнэгүй шийдлүүдийн шүтэн бишрэгчид юм. Бид VMware-ийн давуу талуудыг удаан хугацаанд жагсааж болох боловч энд Linux VM дээр суурилсан виртуалчлалд анхаарлаа хандуулах болно.

Виртуалчлалын технологи ба техник хангамжийн шаардлага

Одоо хоёр алдартай виртуалчлалын технологи байдаг: Intel VT болон AMD-V. Intel VT (Intel Virtualization Technology-ээс) бодит хаягжуулалтын горимын виртуалчлалыг хэрэгжүүлдэг; харгалзах техник хангамжийн оролт гаралтын виртуалчлалыг VT-d гэж нэрлэдэг. Энэ технологийг ихэвчлэн VMX (Virtual Machine eExtension) товчлолоор нэрлэдэг. AMD өөрийн виртуалчлалын өргөтгөлүүдийг бүтээсэн бөгөөд тэдгээрийг AMD Secure Virtual Machine (SVM) гэж нэрлэсэн. Технологи зах зээлд гарахад AMD Virtualization (AMD-V гэж товчилсон) нэртэй болсон.

Техник хангамжийг ашиглалтад оруулахын өмнө тоног төхөөрөмж нь эдгээр хоёр технологийн аль нэгийг дэмжиж байгаа эсэхийг шалгаарай (та үйлдвэрлэгчийн вэбсайтаас техникийн үзүүлэлтүүдийг харж болно). Хэрэв виртуалчлалын дэмжлэг байгаа бол гипервизорыг суулгахаас өмнө BIOS-д идэвхжүүлсэн байх ёстой.

Гипервизорын бусад шаардлагууд нь RAID (1, 5, 10) техник хангамжийн дэмжлэгийг агуулдаг бөгөөд энэ нь гипервизороос гарах үед алдааг тэсвэрлэх чадварыг нэмэгдүүлдэг. хатуу дискүүдэмх цэгцгүй. Хэрэв техник хангамжийн RAID-д дэмжлэг байхгүй бол та програм хангамжийг хамгийн сүүлчийн арга болгон ашиглаж болно. Гэхдээ RAID бол заавал байх ёстой зүйл!

Энэ нийтлэлд тайлбарласан шийдэл нь гурван виртуал машиныг байршуулж, амжилттай ажиллаж байна хамгийн бага шаардлага: Core 2 Quad Q6600 / 8 GB DDR2 PC6400 / 2 × 250 GB HDD SATA (тоног төхөөрөмжийн RAID 1).

Гипервизорыг суулгах, тохируулах

Би жишээ болгон Debian Linux 9.6.0 - X64-86 ашиглан гипервизорыг хэрхэн тохируулахыг харуулах болно. Та дуртай Linux түгээлтийг ашиглаж болно.

Техник хангамжийн сонголтоо шийдэж, эцэст нь хүргэсэн бол гипервизорыг суулгах цаг болжээ. Үйлдлийн системийг суулгахдаа бид диск хуваахаас бусад бүх зүйлийг ердийнхөөрөө хийдэг. Туршлагагүй администраторууд ихэвчлэн "LVM ашиглахгүйгээр бүх дискний зайг автоматаар хуваах" сонголтыг сонгодог. Дараа нь бүх өгөгдөл нэг боть дээр бичигдэх бөгөөд энэ нь хэд хэдэн шалтгааны улмаас сайн биш юм. Нэгдүгээрт, хэрэв хатуу диск бүтэлгүйтвэл та бүх мэдээллээ алдах болно. Хоёрдугаарт, файлын системийг өөрчлөх нь маш их асуудал үүсгэх болно.

Ерөнхийдөө шаардлагагүй алхам, цаг хугацаа алдахаас зайлсхийхийн тулд би LVM-ээр диск хуваахыг зөвлөж байна.

Логик эзлэхүүний менежер

Logical Volume Manager (LVM) нь Device Mapper дээр суурилуулсан Linux болон OS/2 дээр ашиглах боломжтой дэд систем юм. Үүний үүрэг бол нэг хатуу дискний өөр өөр хэсгүүдийг эсвэл хэд хэдэн хатуу дискний хэсгүүдийг нэг логик эзлэхүүн болгон харуулах явдал юм. LVM нь физик эзлэхүүнээс (PV - Физик хэмжээ) логик эзлэхүүний бүлгийг (VG - Volumes Group) үүсгэдэг. Энэ нь эргээд логик эзэлхүүнүүдээс бүрддэг (LV - Logical Volume).

Одоо бүгдээрээ Линукс түгээлтүүд kernel 2.6 ба түүнээс дээш хувилбарууд нь LVM2-г дэмждэг. LVM2-г 2.4 цөмтэй үйлдлийн систем дээр ашиглахын тулд та нөхөөсийг суулгах хэрэгтэй.

Систем хатуу дискийг илрүүлсний дараа хатуу дискний хуваалтын менежер ажиллах болно. Guided-г сонго - бүх дискийг ашиглаж, LVM-г тохируулна уу.


Одоо бид эзлэхүүний бүлгийг суулгах дискийг сонгоно.



Систем нь медиа байршлын сонголтыг санал болгоно. "Бүх файлыг нэг хэсэг рүү бичих" гэснийг сонгоод үргэлжлүүлнэ үү.




Өөрчлөлтүүдийг хадгалсны дараа бид нэг логик бүлэг, хоёр боть авах болно. Эхнийх нь root хуваалт, хоёр дахь нь swap файл юм. Энд олон хүн асуулт асуух болно: яагаад тэмдэглэгээг гараар сонгож, LVM-ийг өөрөө үүсгэж болохгүй гэж?

Би зүгээр л хариулах болно: VG ачаалах логик бүлэг үүсгэх үед ачаалах хэсэг VG-д бичээгүй боловч тусдаа хэсэгт үүсгэгддэг файлын систем ext2. Хэрэв үүнийг анхаарч үзэхгүй бол ачаалах хэмжээ нь логик бүлэгт дуусна. Энэ нь ачаалах хэмжээг сэргээхэд таныг шаналал, зовлон зүдгүүрт хүргэх болно. Ийм учраас ачаалах хуваалтыг LVM бус эзлэхүүн рүү илгээдэг.



Гипервизорын логик бүлгийн тохиргоо руу шилжье. "Логик эзлэхүүний менежерийн тохиргоо" гэсэн зүйлийг сонгоно уу.



Бүх өөрчлөлтийг дискэнд бичихийг систем танд мэдэгдэх болно. Бид санал нэг байна.



бүтээцгээе шинэ бүлэг- жишээ нь, үүнийг vg_sata гэж нэрлэе.



МЭДЭЭЛЭЛ

Серверүүд нь SATA, SSD, SAS, SCSI, NVMe медиаг ашигладаг. Логик бүлгийг үүсгэхдээ хостын нэрийг биш харин бүлэгт хэрэглэгдэж буй зөөвөрлөгчийн төрлийг зааж өгөх нь зүйтэй. Би танд логик бүлгийг ингэж нэрлэхийг зөвлөж байна: vg_sata, vg_ssd, vg_nvme гэх мэт. Энэ нь логик бүлэг ямар хэвлэл мэдээллийн хэрэгслээр бүтээгдсэнийг ойлгоход тусална.




Анхны логик эзлэхүүнээ бүтээцгээе. Энэ нь үйлдлийн системийн үндсэн хуваалтын эзлэхүүн байх болно. "Логик эзлэхүүн үүсгэх" зүйлийг сонгоно уу.



Шинэ логик эзлэхүүний бүлгийг сонгоно уу. Бидэнд ганц л байна.



Бид логик эзлэхүүнд нэр өгдөг. Нэр өгөхдөө логик бүлгийн нэрийн хэлбэрээр угтварыг ашиглах нь хамгийн зөв юм - жишээлбэл, vg_sata_root, vg_ssd_root гэх мэт.



Шинэ логик эзлэхүүний хэмжээг зааж өгнө үү. Би root-д 10 ГБ хуваарилахыг зөвлөж байна, гэхдээ логик эзэлхүүнийг үргэлж өргөжүүлэх боломжтой тул бага боломжтой.



Дээрх жишээтэй ижил төстэй байдлаар бид дараах логик ботьуудыг үүсгэдэг.

  • vg_sata_home - хэрэглэгчийн лавлах 20 ГБ;
  • vg_sata_opt - Хэрэглээний программ суулгахад 10 ГБ;
  • vg_sata_var - жишээлбэл системийн бүртгэл болон бусад программ зэрэг өгөгдлийг байнга өөрчлөхөд зориулагдсан 10 ГБ;
  • vg_sata_tmp - Түр зуурын өгөгдлийн хувьд 5 ГБ, хэрэв түр зуурын өгөгдлийн хэмжээ их байвал илүү ихийг хийж болно. Бидний жишээнд энэ хэсгийг шаардлагагүй гэж үүсгээгүй;
  • vg_sata_swap - RAM-ийн хэмжээтэй тэнцүү. Энэ бол солилцоо хийх хэсэг бөгөөд бид үүнийг гипервизорын RAM дуусах тохиолдолд аюулгүй байдлын сүлжээ болгон үүсгэдэг.

Бүх боть үүсгэсний дараа бид менежерийн ажлыг дуусгадаг.



Одоо үйлдлийн системийн хуваалтуудыг үүсгэх хэд хэдэн боть бидэнд байна. Хуваалт бүр өөрийн гэсэн логик эзэлхүүнтэй гэдгийг таахад хэцүү биш юм.



Бид логик эзлэхүүн бүрт ижил нэртэй хуваалт үүсгэдэг.



Хийсэн өөрчлөлтийг хадгалж, тэмдэглэ.



Дискний бүтцийн өөрчлөлтийг хадгалсны дараа системийн үндсэн бүрэлдэхүүн хэсгүүдийг суулгаж эхлэх бөгөөд дараа нь нэмэлт системийн бүрэлдэхүүн хэсгүүдийг сонгож суулгахыг танаас хүсэх болно. Бүх бүрэлдэхүүн хэсгүүдээс бидэнд ssh-server болон стандарт системийн хэрэгслүүд хэрэгтэй болно.



Суулгасны дараа GRUB ачаалагчийг үүсгэн диск рүү бичих болно. Бид үүнийг ачаалах хуваалт хадгалагдсан физик диск дээр суулгадаг, өөрөөр хэлбэл /dev/sda.




Одоо бид ачаалагч диск рүү бичиж дуустал хүлээж, мэдэгдлийн дараа бид гипервизорыг дахин ачаална.





Системийг дахин ачаалсны дараа SSH-ээр дамжуулан гипервизор руу нэвтэрнэ үү. Юуны өмнө root дор ажилд шаардлагатай хэрэгслүүдийг суулгана уу.

$ sudo apt-get install -y sudo htop дэлгэц net-tools dnsutils bind9utils sysstat telnet traceroute tcpdump wget curl gcc rsync

SSH-г өөрийн үзэмжээр тохируулна уу. Түлхүүрүүдийг ашиглан нэн даруй зөвшөөрөл хийхийг би танд зөвлөж байна. Дахин эхлүүлж, үйлчилгээний ажиллагааг шалгана уу.

$ sudo nano /etc/ssh/sshd_config $ sudo systemctl sshd-г дахин эхлүүлэх; sudo systemctl статус sshd

Виртуалчлалын програм хангамжийг суулгахын өмнө та физик эзлэхүүн болон логик бүлгийн төлөвийг шалгах хэрэгтэй.

$sudo pvscan $sudo lvs

Бид гипервизорын интерфейс дээр сүлжээний гүүр үүсгэхийн тулд виртуалчлалын бүрэлдэхүүн хэсгүүд болон хэрэгслүүдийг суулгадаг.

$ sudo apt-get update; apt-get upgrade -y $ sudo apt install qemu-kvm libvirt-bin libvirt-dev libvirt-daemon-систем libvirt-clients virtinst bridge-utils

Суулгасны дараа бид сүлжээний гүүрийг гипервизор дээр тохируулна. Сүлжээний интерфейсийн тохиргооны талаар тайлбар хийж, шинээр тохируулна уу:

$ sudo nano /etc/network/interfaces

Агуулга нь иймэрхүү байх болно:

Auto br0 iface br0 inet статик хаяг 192.168.1.61 сүлжээний маск 255.255.255.192 гарц 192.168.1.1 цацалт 192.168.0.61 dns-nameserver 127.0.0.0.127.0.0.bridge_bridgesp порт 0 bridge_fd 0

Бид гипервизортой ажиллах хэрэглэгчээ libvirt болон kvm бүлгүүдэд нэмдэг (RHEL-ийн хувьд энэ бүлгийг qemu гэж нэрлэдэг).

$ sudo gpasswd -a iryzhevtsev kvm $ sudo gpasswd -a iryzhevtsev libvirt

Одоо бид гипервизортой ажиллах логик бүлгээ эхлүүлж, ажиллуулж, систем эхлэхэд эхлүүлэхэд нэмэх хэрэгтэй.

$ sudo virsh pool-list $ sudo virsh pool-define-as vg_sata логик --target /dev/vg_sata $ sudo virsh pool-start vg_sata; sudo virsh pool-autostart vg_sata $ sudo virsh pool-list

МЭДЭЭЛЭЛ

LVM бүлэг QEMU-KVM-тэй зөв ажиллахын тулд эхлээд virsh консолоор дамжуулан логик бүлгийг идэвхжүүлэх ёстой.

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

$ sudo wget https://mirror.yandex.ru/debian-cd/9.5.0/amd64/iso-cd/debian-9.5.0-amd64-netinst.iso $ sudo mv debian-9.5.0-amd64-netinst .iso /var/lib/libvirt/images/; ls -al /var/lib/libvirt/images/

VNC-ээр дамжуулан виртуал машинтай холбогдохын тулд /etc/libvirt/libvirtd.conf файлыг засварлана уу:

$ sudo grep "listen_addr = " /etc/libvirt/libvirtd.conf

Liste_addr = "0.0.0.0" гэсэн мөрийг тайлбарыг зогсоож өөрчилье. Бид файлыг хадгалж, гипервизорыг дахин ачаалж, бүх үйлчилгээ эхэлж, ажиллаж байгаа эсэхийг шалгана.

Үргэлжлэлийг зөвхөн гишүүд үзэх боломжтой

Сонголт 1. Сайтын бүх материалыг уншихын тулд "сайт" нийгэмлэгт нэгдээрэй

Нийгэмлэгт заасан хугацаанд гишүүнээр элсэх нь танд Хакерын БҮХ материалд хандах боломжийг олгож, хувийн хуримтлагдсан хөнгөлөлтөө нэмэгдүүлж, мэргэжлийн Xakep онооны үнэлгээг хуримтлуулах боломжийг олгоно!

Ubuntu дээр KVM гипервизор (виртуал машины менежер) болон libvirt номын санг удирдлагын хэрэгсэл болгон ашиглахыг зөвлөж байна. Libvirt нь виртуал машин (VMs) virt-manager (график интерфэйс, GUI) эсвэл virsh (Virt-Manager) удирдахад зориулагдсан програм хангамжийн API болон хэрэглэгчийн програмуудыг агуулдаг. тушаалын мөр,CLI). Өөр менежерүүдийн хувьд та convirt (GUI) эсвэл convirt2 (WEB интерфейс) ашиглаж болно.

Одоогоор Ubuntu дээр зөвхөн KVM гипервизорыг албан ёсоор дэмждэг. Энэхүү гипервизор нь Линукс үйлдлийн системийн цөмийн кодын нэг хэсэг юм. Xen-ээс ялгаатай нь KVM нь паравиртуалчлалыг дэмждэггүй бөгөөд үүнийг ашиглахын тулд таны CPU VT технологийг дэмжих ёстой гэсэн үг юм. Та терминал дээрх тушаалыг ажиллуулснаар таны процессор энэ технологийг дэмжиж байгаа эсэхийг шалгаж болно.

Үүний үр дүнд та дараах мессежийг хүлээн авбал:

МЭДЭЭЛЭЛ: /dev/kvm байгаа KVM хурдатгал ашиглаж болно

Энэ нь KVM асуудалгүй ажиллах болно гэсэн үг юм.

Хэрэв та гарц дээр дараах мессежийг хүлээн авбал:

Таны CPU KVM өргөтгөлүүдийг дэмждэггүй KVM хурдатгалыг ашиглах боломжгүй

Дараа нь та виртуал машиныг ашиглаж болно, гэхдээ энэ нь хамаагүй удаан байх болно.

    64 битийн системийг зочны хувьд суулгаарай

    Зочны системд 2 ГБ-аас дээш RAM хуваарилах

Суурилуулалт

Sudo apt-get суулгах qemu-kvm libvirt-bin ubuntu-vm-Builder bridge-utils

Энэ нь X-гүй сервер дээр суулгасан, өөрөөр хэлбэл график интерфэйс агуулаагүй болно. Та үүнийг тушаалаар суулгаж болно

Sudo apt-get install virt-manager

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

Зочны системийг бий болгох

GUI ашиглан зочны системийг бий болгох журам нь маш энгийн.

Гэхдээ текстийн горимыг тайлбарлаж болно.

qcow2

GUI ашиглан систем үүсгэх үед хатуу дискОдоо байгаа зургийн файлыг сонгох эсвэл төхөөрөмжийг блоклох эсвэл түүхий (RAW) өгөгдөл бүхий шинэ файл үүсгэхийг санал болгож байна. Гэсэн хэдий ч энэ нь боломжтой цорын ганц файлын форматаас хол байна. Man qemu-img-д жагсаасан бүх дискний төрлүүдээс хамгийн уян хатан, орчин үеийн нь qcow2 юм. Энэ нь хормын хувилбар, шифрлэлт, шахалтыг дэмждэг. Энэ нь шинэ зочин үүсгэхээс өмнө үүсгэгдсэн байх ёстой.

Qemu-img үүсгэх -o урьдчилан хуваарилах = мета өгөгдөл -f qcow2 qcow2.img 20G

Үүнтэй ижил man qemu-img-ийн хэлснээр мета өгөгдлийн урьдчилсан хуваарилалт (-o preallocation=метадта) нь дискийг эхэндээ бага зэрэг томруулдаг боловч зураг томрох шаардлагатай үед илүү сайн гүйцэтгэлтэй байдаг. Үнэн хэрэгтээ, энэ тохиолдолд энэ сонголт нь тааламжгүй алдаанаас зайлсхийх боломжийг олгодог. Үүсгэсэн зурагэхлээд нэг мегабайтаас бага зай эзэлдэг бөгөөд шаардлагатай бол заасан хэмжээ хүртэл өсдөг. Зочин систем нь энэ эцсийн заасан хэмжээг нэн даруй харах ёстой, гэхдээ суулгах үе шатанд файлын бодит хэмжээг харж болно. Мэдээжийн хэрэг, энэ нь 200 КБ хатуу диск дээр суулгахаас татгалзах болно. Алдаа нь Ubuntu-д хамаарахгүй, ядаж RHEL дээр гарч ирдэг.

Зургийн төрлөөс гадна та үүнийг холбох аргыг сонгож болно - IDE, SCSI эсвэл Virtio Disk. Дискний дэд системийн гүйцэтгэл нь энэ сонголтоос хамаарна. Зочны системд хуваарилагдах даалгаврын дагуу та сонгох хэрэгтэй тодорхой зөв хариулт байхгүй; Хэрэв зочны системийг "харах" гэж үүсгэсэн бол ямар ч аргыг ашиглах болно. Ерөнхийдөө виртуал машинд ихэвчлэн оролт гаралт үүсдэг тул ачаалал ихтэй системийг бий болгохдоо энэ асуудалд аль болох хариуцлагатай хандах хэрэгтэй.

Би суулгацын талаар өмнө нь бичсэн Qemu-KVMВ Дебиан. Гэхдээ миний бодлоор мэдээлэл бүрэн бус байсан. Дээрээс нь би зарим нарийн ширийн зүйлийг анхаарч үзээгүй. Тиймээс би Qemu-KVM виртуал машиныг суулгах тухай шинэчлэгдсэн нийтлэлийг та бүхэнд хүргэж байна. Мэдээжийн хэрэг, би хуучин нийтлэлийг устгах болно.

Энэ нь юу болохыг тайлбарлах ёстой гэж бодож байна виртуал машин, үнэ цэнэтэй биш. Та үүнийг мэдэж байгаа байх (энэ нийтлэлийг уншиж байгаа тул). Үгүй бол -. Бид энэ сэдвээр шууд анхаарлаа хандуулах болно. Qemu-KVMнь бүрэн виртуалчлалын хамгийн мөрөөдөмтгий (миний бодлоор) хоёр технологийг хослуулах төсөл юм. Кемунь маш олон төрлийн техник хангамжийн архитектурыг дэмждэг нэгэн төрлийн "компьютерийн эмулятор" юм. Энэ нь ямар ч төхөөрөмж дээр бараг ямар ч үйлдлийн системийг ажиллуулж болно (жишээлбэл, би хуучин хувилбаруудыг ажиллуулсан Mac OS X, үүнд зориулагдсан PowerPC). Qemu-ийн сул тал бол техник хангамжийн хурдатгал байхгүйгээс удаан байдаг. Дараа нь өөр нэг төсөл аврах ажилд ирдэг - KVM. Эсвэл цөмийн виртуал машин. KVM нь Линуксийн цөмийн технологи бөгөөд бүрэн виртуалчлалаар техник хангамжийг хурдасгах боломжийг олгодог. KVM-ийн сул тал нь зөвхөн x86 архитектурыг дэмждэг

Яагаад Qemu-KVM? Линуксийн хувьд энэ бол хамгийн их санал болгож буй виртуалчлалын төсөл юм. Энэ нь илүү хурдан ажилладаг VirtualBoxТэгээд VMware тоглуулагч(миний туршилтуудын дагуу) KVM бол Линуксийн уугуул технологи юм. Дээрээс нь, хэрэв танд хоёр видео карттай сайн тоглоомын компьютер байгаа бол Qemu-KVM-д суулгаж болно Windows, видео картуудын аль нэгийг нь шидээд өөр үйлдлийн систем рүү дахин ачаалахаа март. Хэрэв та тоглохыг хүсвэл Windows үйлдлийн системтэй виртуал машин ажиллуулаад тоглоорой. Гүйцэтгэл нь техник хангамж дээр суулгасан Windows-ийн гүйцэтгэлийн 95% байх болно. Гэхдээ миний бодлоор энэ нь зүгээр л гоёмсог юм. Би энэ талаар тусдаа нийтлэл бичих болно. Сонирхолтой байх болно :)

Одоо би үйл ажиллагааныхаа төлөвлөгөөг тайлбарлах болно. Нэгдүгээрт, би жишээ ашиглан суулгацыг хийх болно Debian 8.2 GNOME 64 бит, гэхдээ бусад график орчинд мэдэгдэхүйц ялгаа гарахгүй. Хоёрдугаарт, би KVM-тэй ажиллахыг зөвхөн график горимд тайлбарлах болно (эцсийн эцэст бид үүнийг сервер дээр суулгахгүй). Тиймээс серверийн виртуалчлалын хувьд ихэвчлэн хийдэг шиг терминал, скрипт гэх мэт зүйл байхгүй. Гуравдугаарт, би танд Qemu болон KVM-ийн баримт бичгийг нэмэлт уншихыг зөвлөж байна (би нийтлэлийн төгсгөлд холбоосыг өгөх болно). Хэрэв та энэ багцын боломжуудыг бүрэн дүүрэн ашиглахыг хүсч байвал энэ нь танд маш их хэрэг болно. За, бидний үйл ажиллагааны төлөвлөгөө тодорхой байна. Одоо үйл ажиллагааны алхамууд:

  • qemu-kvm суулгах;
  • график менежер болон нэмэлт хэрэгслийг суурилуулах;
  • сүлжээний гүүр тавих;
  • виртуал машинд зориулсан хадгалах сан үүсгэх;
  • зочин системийг суулгаж байна.
Эхлээд таны компьютер тоног төхөөрөмжийн виртуалчлалыг дэмждэг эсэхийг шалгацгаая. Үүнийг хийхийн тулд терминал дээрх тушаалыг ажиллуулна уу:

egrep "(vmx|svm)" /proc/cpuinfo

Тушаалын гаралт нь аль нэгийг агуулсан байх ёстой vmx, эсвэл svm. Хэрэв тэдгээр нь байхгүй бол BIOS-д виртуалчлал идэвхжсэн эсэхийг шалгана уу (зүйлүүдийг хайж олоорой Intel VT-iэсвэл ижил төстэй AMD). Хэрэв юу ч байхгүй бол та азгүй болно.

Шаардлагатай бүрэлдэхүүн хэсгүүдийг суулгана уу:

sudo apt суулгах qemu-kvm bridge-utils libvirt-bin virt-manager

libvirt бүлэгт өөрийгөө нэмнэ үү:

sudo adduser $USER libvirt

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

sudo nano /etc/sysctl.conf

Бид net.ipv4_forward=0 мөрийг хайж, утгыг нь өөрчилнө 1 . Бид мөн хэмнэдэг:

sudo sysctl -p

Дараа нь би дараахь зүйлийг хийх болно: 1) таны компьютер дээр чиглүүлэгчээс IP хаяг хүлээн авдаг нэг сүлжээний карт байна. 2) та 3G модемоор интернетэд холбогдох боломжтой бөгөөд таны сүлжээний карт үнэгүй. Энэ сонголт нь илүү их гар ажиллагаатай холбоотой боловч хэд хэдэн удаа туршиж үзсэн (би үүнийг нэг машин дээр өөрөө хийсэн). Тиймээс интерфэйс файлыг нээнэ үү:

sudo nano /etc/network/interfaces

Түүний анхдагч агуулга нь:



авто хар
iface lo inet loopback

Бид түүний агуулгыг өөрчилдөг. Эхний сонголтын хувьд:

эх сурвалж /etc/network/interfaces.d/*

# Сүлжээний холболтын интерфейс
авто хар
iface lo inet loopback

автомат eth0
iface eth0 inet гарын авлага

авто br0
iface br0 inet статик
хаяг 192.168.0.2
гарц 192.168.0.1
сүлжээний маск 255.255.255.0
сүлжээ 192.168.0.0
нэвтрүүлэг 192.168.0.255
bridge_ports eth0
bridge_stp унтраах
bridge_maxwait 0
bridge_fd 0

Хоёр дахь сонголтын хувьд:

эх сурвалж /etc/network/interfaces.d/*

# Сүлжээний холболтын интерфейс
авто хар
iface lo inet loopback

автомат ppp0
iface ppp0 inet wvdial

автомат eth0
iface eth0 inet гарын авлага

авто br0
iface br0 inet статик
хаяг 192.168.0.2
гарц 192.168.0.1
сүлжээний маск 255.255.255.0
сүлжээ 192.168.0.0
нэвтрүүлэг 192.168.0.255
bridge_ports eth0
bridge_stp унтраах
bridge_maxwait 0
bridge_fd 0
up route del default br0

Жич:Хэрэв систем ажиллаж эхэлсний дараа модемоор автомат интернет холболт шаардлагагүй бол auto ppp0 болон мөрүүдийг устгана уу.
iface ppp0 inet wvdial . Үгүй бол систем эхлэхэд модемийг USB порт руу оруулсан эсэхийг шалгаарай.

Хадгалах. Одоо модемтой сонголтын хувьд та залгагч програм суулгах хэрэгтэй wvdial:

sudo apt install wvdial

Тохиргоог засах (тэмдэглэл: 3G модемийг жишээ болгон ашиглаж байна Beeline. Та интернетээс бусад модемуудын тохиргооны жишээг хялбархан олох боломжтой):

sudo nano /etc/wvdial.conf


Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","home.beeline.ru"
Тэнэг горим = 1
ISDN = 0
Модемийн төрөл = USB модем
Шинэ PPPD = тийм
Утас = *99#
Модем = /dev/ttyACM0
Хэрэглэгчийн нэр = beeline
Нууц үг = beeline
Бауд = 9600
Улс = Орос
Автомат дахин холбогдох=асаалттай
Автомат DNS = унтраалттай
Сул зогсолтын секунд = 0

Хадгалах. Одоо модем систем ачаалсны дараа шууд асах болно. Del default br0 шугамын маршрут нь гүүрээр дамжин өнгөрөх анхдагч маршрутыг устгадаг. Хэрэв та үүнийг хийхгүй бол 3G модемоор бус харин гүүрээр дамжин өнгөрөх тул та интернетэд холбогдох боломжгүй болно.

Бидний хэлэх ёстой сүүлчийн алхам галт хана, ингэснээр энэ нь манай виртуал машинуудаас сүлжээ рүү болон буцах урсгалыг дамжуулдаг. Үүнийг хийхийн тулд та хоёр аргаар явж болно: хэд хэдэн дүрэм бүхий скрипт бичих iptables, системтэй хамт ажиллах эсвэл эдгээр дүрмийг гараар оруулаад хадгална. Би эхний сонголтыг ашиглах болно. Хоёр дахь нь та багцыг суулгах хэрэгтэй болно iptables-тогтвортойтэгээд зүгээр л дүрмүүдийг нэг нэгээр нь оруулаарай (sudo ашиглан). Тэгэхээр. скрипт үүсгэх (ямар ч текст засварлагч дээр). Дараах контентыг тэнд буулгана уу:

#!/bin/sh

# Хаяг солих (NAT) ашиглах гаралтын интерфейсийг тодорхойлно
iptables -v -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# Бид дэлхийн сүлжээнээс (0.0.0.0/0) модемоор хүлээн авсан бүх пакетуудыг дотоод сүлжээнд (192.168.0.0/24) дамжуулдаг.
iptables -v -A FORWARD -i ppp0 -o br0 -s 0.0.0.0/0 -d 192.168.0.0/24 -j ХҮЛЭЭН АВАХ

# Дотоод сүлжээнээс (192.168.0.0/24) ирж буй бүх пакетуудыг глобал (0.0.0.0/0) руу дамжуулах
iptables -v -A FORWARD -i br0 -o ppp0 -s 192.168.0.0/24 -d 0.0.0.0/0 -j ХҮЛЭЭН АВАХ

Үүнийг хадгална уу гарц.shболон гүйцэтгэх эрхийг (файлын шинж чанарт эсвэл командтай терминал дээр) өгнө chmod +x гарц.sh). Одоо та үүнийг систем ачаалсны дараа гараар эхлүүлэх эсвэл эхлүүлэхэд нэмэх боломжтой. Үүнийг хийхийн тулд скриптийг шилжүүлнэ үү ~/.config/autostart(файлын менежерт далд файлуудыг харуулахыг идэвхжүүлснээр та лавлахыг харах болно .configтаны гэрийн лавлахад).

Одоо виртуал машиныг суулгахад бүх зүйл бэлэн боллоо. Програмын цэснээс Virt Manager (виртуал машины менежер) -ийг ажиллуулна уу:

Мөр дээр баруун товшино уу localhostмөн сонгох Дэлгэрэнгүй мэдээлэл. Таб руу оч Хадгалах. Виртуал машинуудыг хадгалахын тулд бид лавлах (эсвэл дискний хуваалт/диск) зааж өгөх хэрэгтэй.

Зүүн доод буланд нэмэх тэмдэг дээр дарна уу ( Усан сан нэмнэ үү), хадгалалтын төрөл, түүнд хүрэх замыг зааж өгнө.

Таб дээр Сүлжээний интерфейсүүд, та бүх зүйл ажиллаж байгаа эсэхийг шалгаж болно.

Одоо бид дарна уу Файл - Шинэ виртуал машин. Дискний дүрс рүү очих зам болон виртуал машины төрлийг зааж өгнө үү. Дараа нь бид түүнд зориулсан RAM-ийн хэмжээ, процессорын цөмийн тоог зааж өгнө. Дараа нь манай хадгалах газрыг зааж өгөөд дарна уу Шинэ боть. Нэрийг нь зааж өг, төрлийг нь үлдээгээрэй qcow2, хэмжээ. Энэ нь виртуал хатуу диск байх болно. Хэрэв та график бүрхүүл, олон тооны програм бүхий систем суулгахаар төлөвлөж байгаа бол илүү их зай (50 гигабайт) өгнө үү. Сүүлийн таб дээр хайрцгийг шалгана уу Эхлүүлэхээсээ өмнө тохиргоог өөрчил, манай гүүр сүлжээний төхөөрөмжөөр сонгогдсон эсэхийг шалгаад виртуал машинд ямар ч нэр бичээд дарна уу Бүрэн. Энэ виртуал машины параметрийн цонх таны өмнө нээгдэнэ.





Таб руу оч CPU, мөн тэмдэг тавина Хост процессорын тохиргоог хуулах.

Табын хажууд цэвэр(дараагийн), мөн зааж өгнө vitio. Таб дээр Дэлгэцзааж өгнө үү Халуун ногоо, мөн таб дээр Видео - QXL. Ихэвчлэн энэ хослол нь график дүрслэлийг хамгийн их гүйцэтгэлээр хангадаг боловч хэрэв хүсвэл та туршилт хийж болно. Windows зочин системүүдийн хувьд QXL драйверийг тусдаа суулгах шаардлагатай гэдгийг анхаарна уу (Windows өөрөө).


Одоо бүх зүйл бэлэн болсон тул зүүн дээд буланд товшино уу Суулгацыг эхлүүлэх. Системийг ердийнхөөрөө суулгаарай, нэг үл хамаарах зүйл бол: суулгагч сүлжээг автоматаар тохируулж эхлэхэд дарна уу. Цуцлах, сонго Сүлжээг гараар тохируулна уу. Виртуал машинд хүссэн IP хаягийг зааж өгнө үү (бидний тохиолдолд 192.168.0.3 ), дэд сүлжээний маск ( 255.255.255.0 ), гарц (гарц нь хостын хаяг байх болно, өөрөөр хэлбэл 192.168.0.2 ) болон DNS сервер (энд зүгээр л Google-г зааж өгнө үү 8.8.8.8 ). Ингээд л болоо. Цаашид юу ч хийх шаардлагагүй. Системийг суулгаж, тохируулна уу. Ер нь тэгээд л болоо. Тайлбарласан алхмууд нь VirtualBox-ийг илүү сайн хувилбараар солих арга юм. Баримт бичгийг уншсаны дараа та Qemu-KVM-ийн боломж хэр өргөн болохыг ойлгох болно. Би энд зориудаар консолын нэмэлт параметрүүд болон виртуал машинуудыг терминалаар ажиллуулах аргуудыг тайлбарлаагүй, учир нь энэ нь гэрийн машинд үргэлж шаардлагатай байдаггүй. Би энэ талаар тусдаа нийтлэл бичих болно, гэрийн олон үйлдэлт сервер (энэ нь виртуал машины серверийн үүрэг гүйцэтгэдэг) тохируулах талаар. Зарим шалтгааны улмаас юу бичсэнийг ойлгоогүй, эсвэл үл ойлгогдох мөчүүд байсаар байгаа хүмүүст би тайлбарлахгүй байгаа видеог үзэхийг санал болгож байна, гэхдээ энэ бүх зүйлийг хэрхэн суулгах, тохируулахыг харуулах болно. Хэрэв танд нийтлэлд санал, нэмэлт зүйл байгаа бол сэтгэгдэл дээр бичнэ үү.