ค้นหาเว็บไซต์

วิธีการติดตั้ง KVM บน CentOS/RHEL 8


เครื่องเสมือนที่ใช้เคอร์เนล (เรียกสั้น ๆ ว่า KVM) เป็นโซลูชันการจำลองเสมือนแบบโอเพ่นซอร์สและเป็นมาตรฐานที่ผสานรวมเข้ากับ Linux อย่างลงตัว เป็นโมดูลเคอร์เนลที่โหลดได้ซึ่งเปลี่ยน Linux ให้เป็นไฮเปอร์ไวเซอร์ประเภท 1 (โลหะเปลือย) ที่สร้างแพลตฟอร์มปฏิบัติการเสมือนที่ใช้ในการรันเครื่องเสมือน (VM)

ภายใต้ KVM แต่ละ VM คือกระบวนการ Linux ที่ได้รับการกำหนดเวลาและจัดการโดยเคอร์เนล และมีฮาร์ดแวร์เสมือนจริงส่วนตัว (เช่น CPU การ์ดเครือข่าย ดิสก์ ฯลฯ) นอกจากนี้ยังรองรับการจำลองเสมือนแบบซ้อน ซึ่งช่วยให้คุณสามารถเรียกใช้ VM ภายใน VM อื่นได้

คุณสมบัติหลักบางประการรวมถึงการรองรับแพลตฟอร์มฮาร์ดแวร์ที่รองรับ Linux ที่หลากหลาย (ฮาร์ดแวร์ x86 พร้อมส่วนขยายการจำลองเสมือน (Intel VT หรือ AMD-V)) โดยให้การรักษาความปลอดภัยและการแยก VM ที่ได้รับการปรับปรุงโดยใช้ทั้ง SELinux และการจำลองเสมือนที่ปลอดภัย (sVirt) โดยสืบทอดคุณสมบัติการจัดการหน่วยความจำเคอร์เนล และรองรับการโยกย้ายทั้งออฟไลน์และเรียลไทม์ (การโยกย้าย VM ที่ทำงานอยู่ระหว่างโฮสต์จริง)

ในบทความนี้ คุณจะได้เรียนรู้วิธีติดตั้งการจำลองเสมือน KVM สร้างและจัดการเครื่องเสมือนใน CentOS 8 และ RHEL 8 Linux

ข้อกำหนดเบื้องต้น

  1. การติดตั้งเซิร์ฟเวอร์ CentOS 8 ใหม่
  2. การติดตั้งเซิร์ฟเวอร์ RHEL 8 ใหม่
  3. การสมัครสมาชิก RedHat เปิดใช้งานบนเซิร์ฟเวอร์ RHEL 8

นอกจากนี้ ตรวจสอบให้แน่ใจว่าแพลตฟอร์มฮาร์ดแวร์ของคุณรองรับการจำลองเสมือนด้วยการรันคำสั่งต่อไปนี้

grep -e 'vmx' /proc/cpuinfo		#Intel systems
grep -e 'svm' /proc/cpuinfo		#AMD systems

นอกจากนี้ ให้ยืนยันว่าโมดูล KVM ถูกโหลดในเคอร์เนลแล้ว (โดยค่าเริ่มต้นควรจะเป็น)

lsmod | grep kvm

นี่คือตัวอย่างเอาต์พุตบนระบบทดสอบซึ่งใช้ Intel:

ในคู่มือ KVM ซีรีส์ก่อนหน้านี้ เราได้แสดงวิธีสร้างเครื่องเสมือนใน Linux โดยใช้ KVM (เครื่องเสมือนที่ใช้เคอร์เนล) ซึ่งเราได้สาธิตวิธีสร้างและจัดการ VM โดยใช้เครื่องมือ GUI virt-manager (ซึ่ง ขณะนี้เลิกใช้แล้วตามเอกสาร RHEL 8) สำหรับคำแนะนำนี้ เราจะใช้แนวทางอื่น เราจะใช้เว็บคอนโซลของ Cockpit

ขั้นตอนที่ 1: ตั้งค่าเว็บคอนโซลห้องนักบินบน CentOS 8

1. ส่วนควบคุมเป็นอินเทอร์เฟซบนเว็บที่ใช้งานง่าย บูรณาการ และขยายได้ เพื่อจัดการเซิร์ฟเวอร์ Linux ในเว็บเบราว์เซอร์ ช่วยให้คุณสามารถดำเนินงานของระบบได้ เช่น การกำหนดค่าเครือข่าย การจัดการพื้นที่เก็บข้อมูล การสร้าง VM และการตรวจสอบบันทึกด้วยเมาส์ มันใช้การเข้าสู่ระบบและสิทธิ์ของผู้ใช้ตามปกติของระบบของคุณ แต่รองรับวิธีการตรวจสอบสิทธิ์อื่น ๆ เช่นกัน

มีการติดตั้งไว้ล่วงหน้าและเปิดใช้งานบนระบบ CentOS 8 และ RHEL 8 ที่ติดตั้งใหม่ หากคุณยังไม่ได้ติดตั้ง ให้ติดตั้งโดยใช้คำสั่ง dnf ต่อไปนี้ ควรติดตั้งส่วนขยายเครื่องส่วนควบคุมเพื่อจัดการ VM ตาม Libvirt

dnf install cockpit cockpit-machines

2. เมื่อการติดตั้งแพ็คเกจเสร็จสมบูรณ์ ให้สตาร์ทซ็อกเก็ตส่วนควบคุม เปิดใช้งานให้สตาร์ทอัตโนมัติเมื่อบูตระบบ และตรวจสอบสถานะเพื่อยืนยันว่าเปิดใช้งานแล้ว

systemctl start cockpit.socket
systemctl enable cockpit.socket
systemctl status cockpit.socket

3. ถัดไป เพิ่มบริการ cockpit ในระบบไฟร์วอลล์ซึ่งเปิดใช้งานตามค่าเริ่มต้น โดยใช้คำสั่ง firewall-cmd และโหลดการกำหนดค่าไฟร์วอลล์อีกครั้งเพื่อใช้การเปลี่ยนแปลงใหม่

firewall-cmd --add-service=cockpit --permanent
firewall-cmd --reload

4. หากต้องการเข้าถึงเว็บคอนโซลห้องนักบิน ให้เปิดเว็บเบราว์เซอร์แล้วใช้ URL ต่อไปนี้เพื่อนำทาง

https://FQDN:9090/
OR
https://SERVER_IP:9090/

ส่วนควบคุมใช้ใบรับรองที่ลงนามด้วยตนเองเพื่อเปิดใช้งาน HTTPS เพียงดำเนินการเชื่อมต่อเมื่อคุณได้รับคำเตือนจากเบราว์เซอร์ ที่หน้าเข้าสู่ระบบ ให้ใช้ข้อมูลรับรองบัญชีผู้ใช้เซิร์ฟเวอร์ของคุณ

ขั้นตอนที่ 2: การติดตั้ง KVM Virtualization CentOS 8

5. ถัดไป ติดตั้งโมดูล การจำลองเสมือน และแพ็คเกจการจำลองเสมือนอื่น ๆ ดังต่อไปนี้ แพ็คเกจ virt-install มีเครื่องมือสำหรับการติดตั้งเครื่องเสมือนจากอินเทอร์เฟซบรรทัดคำสั่ง และใช้ virt-viewer เพื่อดูเครื่องเสมือน

dnf module install virt 
dnf install virt-install virt-viewer

6. จากนั้น เรียกใช้คำสั่ง virt-host-validate เพื่อตรวจสอบว่าเครื่องโฮสต์ได้รับการตั้งค่าให้เรียกใช้ไดรเวอร์ไฮเปอร์ไวเซอร์ libvirt หรือไม่

virt-host-validate

7. ถัดไป เริ่มต้น libvirtd daemon (libvirtd) และเปิดใช้งานให้เริ่มทำงานโดยอัตโนมัติในการบู๊ตแต่ละครั้ง จากนั้นตรวจสอบสถานะเพื่อยืนยันว่าเปิดใช้งานแล้ว


systemctl start libvirtd.service
systemctl enable libvirtd.service
systemctl status libvirtd.service

ขั้นตอนที่ 3: ตั้งค่า Network Bridge (สวิตช์เครือข่ายเสมือน) ผ่านห้องนักบิน

8. ตอนนี้สร้างบริดจ์เครือข่าย (สวิตช์เครือข่ายเสมือน) เพื่อรวมเครื่องเสมือนเข้ากับเครือข่ายเดียวกันกับโฮสต์ ตามค่าเริ่มต้น เมื่อ libvirtd daemon เริ่มทำงาน มันจะเปิดใช้งานอินเทอร์เฟซเครือข่ายเริ่มต้น virbr0 ที่แสดงถึงสวิตช์เครือข่ายเสมือนที่ทำงานในโหมด NAT

สำหรับคู่มือนี้ เราจะสร้างอินเทอร์เฟซเครือข่ายในโหมดบริดจ์ที่เรียกว่า br0 สิ่งนี้จะทำให้เครื่องเสมือนสามารถเข้าถึงได้บนเครือข่ายโฮสต์

จากอินเทอร์เฟซหลักของห้องนักบิน คลิกที่ เครือข่าย จากนั้นคลิก เพิ่ม Bridge ตามที่ระบุในภาพหน้าจอต่อไปนี้

9. จากหน้าต่างป๊อปอัป ให้ป้อนชื่อบริดจ์และเลือกบริดจ์สเลฟหรืออุปกรณ์พอร์ต (เช่น enp2s0 ที่แสดงถึงอินเทอร์เฟซอีเธอร์เน็ต) ดังที่แสดงในภาพหน้าจอต่อไปนี้ จากนั้นคลิกนำไปใช้

10. ตอนนี้ เมื่อคุณดูรายการ อินเทอร์เฟซ บริดจ์ใหม่ควรปรากฏขึ้นที่นั่น และหลังจากนั้นไม่กี่วินาที อินเทอร์เฟซ Ethernet ควรถูกปิดใช้งาน (ถูกถอดออก)

ขั้นตอนที่ 4: การสร้างและการจัดการเครื่องเสมือนผ่านเว็บคอนโซลห้องนักบิน

11. จากอินเทอร์เฟซหลักของ ห้องนักบิน คลิกตัวเลือก เครื่องเสมือน ตามที่ไฮไลต์ไว้ในภาพหน้าจอต่อไปนี้ จากหน้า เครื่องเสมือน คลิก สร้าง VM

12. หน้าต่างที่มีตัวเลือกสำหรับสร้าง VM ใหม่จะปรากฏขึ้น ป้อนการเชื่อมต่อ, ชื่อ (เช่น ubuntu18.04), ประเภทแหล่งที่มาของการติดตั้ง (บนระบบทดสอบ เราได้จัดเก็บอิมเมจ ISO ไว้ใต้พูลหน่วยเก็บข้อมูล เช่น /var/lib/libvirt/ image/), แหล่งที่มาของการติดตั้ง, ที่เก็บข้อมูล, ขนาด, หน่วยความจำ ดังแสดงในรูปต่อไปนี้ ควรเลือกผู้จำหน่ายระบบปฏิบัติการและระบบปฏิบัติการโดยอัตโนมัติหลังจากเข้าสู่แหล่งการติดตั้ง

นอกจากนี้ ให้เลือกตัวเลือกเพื่อเริ่ม VM ทันที จากนั้นคลิก สร้าง

13. หลังจากคลิก สร้าง จากขั้นตอนก่อนหน้า VM ควรเริ่มต้นโดยอัตโนมัติ และควรบูตโดยใช้อิมเมจ ISO ที่ให้มา ดำเนินการติดตั้งระบบปฏิบัติการเกสต์ (Ubuntu 18.04 ในกรณีของเรา)

หากคุณคลิกที่ อินเทอร์เฟซเครือข่าย ของ VM แหล่งที่มาของเครือข่ายควรระบุอินเทอร์เฟซเครือข่ายบริดจ์ที่สร้างขึ้นใหม่

และระหว่างการติดตั้ง ในขั้นตอนการกำหนดค่าอินเทอร์เฟซเครือข่าย คุณควรสังเกตได้ว่าอินเทอร์เฟซ VMs Ethernet ได้รับที่อยู่ IP จากเซิร์ฟเวอร์ DHCP ของโฮสต์ เครือข่าย

โปรดทราบว่าคุณต้องติดตั้งแพ็คเกจ OpenSSH เพื่อเข้าถึงระบบปฏิบัติการเกสต์ผ่าน SSH จากเครื่องใดก็ได้บนเครือข่ายโฮสต์ ตามที่อธิบายไว้ในส่วนสุดท้าย

14. เมื่อการติดตั้ง guest OS เสร็จสมบูรณ์ ให้รีบูต VM จากนั้นไปที่ ดิสก์ และถอด/ถอดอุปกรณ์ cdrom ใต้ดิสก์ VM . จากนั้นคลิก เรียกใช้ เพื่อเริ่มต้น VM

15. ขณะนี้ภายใต้ คอนโซล คุณสามารถเข้าสู่ระบบ guest OS ได้โดยใช้บัญชีผู้ใช้ที่คุณสร้างขึ้นระหว่างการติดตั้งระบบปฏิบัติการ

ขั้นตอนที่ 5: การเข้าถึง Virtual Machine Guest OS ผ่าน SSH

16. หากต้องการเข้าถึง guest OS ที่ติดตั้งใหม่จากเครือข่ายโฮสต์ผ่าน SSH ให้รันคำสั่งต่อไปนี้ (แทนที่ 10.42.0.197 ด้วยที่อยู่ IP ของแขกของคุณ)

ssh [email 

17. หากต้องการปิดเครื่อง รีสตาร์ทหรือลบ VM ให้คลิกที่ VM จากรายการ VM จากนั้นใช้ปุ่มที่ไฮไลต์ในภาพหน้าจอต่อไปนี้

นั่นคือทั้งหมดที่สำหรับตอนนี้! ในคู่มือนี้ เราได้แสดงวิธีการติดตั้งแพ็คเกจการจำลองเสมือนของ KVM และสร้างและจัดการ VM ผ่านทางคอนโซลเว็บห้องนักบิน สำหรับรายละเอียดเพิ่มเติม โปรดดูที่: การเริ่มต้นใช้งานการจำลองเสมือนใน RHEL 8