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

วิธีสร้างเทมเพลตเครื่องเสมือน KVM


เทมเพลตเครื่องเสมือนโดยพื้นฐานแล้วคือสำเนาของเครื่องเสมือนที่ติดตั้งซึ่งมีประโยชน์เมื่อคุณต้องการปรับใช้เครื่องเสมือนหลายอินสแตนซ์ การสร้างเทมเพลตเป็นกระบวนการ 3 ขั้นตอนที่เกี่ยวข้องกับการสร้างเครื่องเสมือน การติดตั้งแพ็คเกจที่จำเป็นทั้งหมดที่คุณต้องการติดตั้ง และสุดท้ายคือการทำความสะอาดเทมเพลต

มาดูกันว่าคุณสามารถทำสิ่งนี้ให้สำเร็จได้อย่างไร

ขั้นตอนที่ 1: การติดตั้ง KVM ใน Linux

ขั้นตอนแรกคือการติดตั้ง KVM บนระบบของคุณ เรามีบทช่วยสอนที่ครอบคลุมเกี่ยวกับ:

  • วิธีการติดตั้ง KVM บน Ubuntu 20.04
  • วิธีการติดตั้ง KVM บน CentOS 8

นอกจากนี้ ตรวจสอบให้แน่ใจว่า libvirtd daemon กำลังทำงานอยู่ และเปิดใช้งานเพื่อเริ่มต้นระบบโดยอัตโนมัติ

sudo systemctl enable libvirtd
sudo systemctl start libvirtd

ตรวจสอบว่า libvirtd daemon ทำงานอยู่หรือไม่

sudo systemctl status libvirtd

หากคุณใช้ระบบ Ubuntu/Debian ตรวจสอบให้แน่ใจว่าโหลดอิมเมจ vhost-net แล้ว

sudo modprobe vhost_net

ขั้นตอนที่ 2: สร้างอิมเมจเสมือน KVM

ก่อนที่เราจะสร้างเทมเพลต ก่อนอื่นเราจำเป็นต้องมีอินสแตนซ์การติดตั้ง บนบรรทัดคำสั่ง เราจะสร้างอิมเมจ 20G CentOS 8 KVM โดยใช้คำสั่ง qemu-img ดังที่แสดง

sudo qemu-img create -o preallocation=metadata -f qcow2 /var/lib/libvirt/images/centos8.qcow2 20G

จากนั้น ให้ใช้คำสั่ง virt-install เพื่อสร้างเครื่องเสมือน CentOS 8 ดังที่แสดง

sudo virt-install --virt-type kvm --name centos8 --ram 2096 \
--disk /var/lib/libvirt/images/centos8.qcow2,format=qcow2 \
--network network=default \
--graphics vnc,listen=0.0.0.0 --noautoconsole \
--os-type=linux --os-variant=rhel7.0 \
--location=/home/tecmint/Downloads/CentOS-8-x86_64-1905-dvd1.iso

ซึ่งจะเป็นการเปิดตัวอินสแตนซ์เครื่องเสมือน คุณสามารถยืนยันสิ่งนี้ได้โดยไปที่ virt-manager และเปิดหน้าต่างคอนโซลดังที่แสดง สิ่งที่คุณเห็นคือหน้าต้อนรับเริ่มต้นสำหรับผู้ติดตั้ง ต้องแน่ใจว่าได้ทำการติดตั้งจนเสร็จสิ้น

ขั้นตอนที่ 3: การสร้างอิมเมจเทมเพลต KVM Virtual Machine

เมื่อการติดตั้งเสร็จสมบูรณ์ ให้เข้าสู่ระบบ VM และอัปเดตแพ็คเกจระบบทั้งหมด

sudo dnf update

ติดตั้งแพ็กเกจข้อกำหนดเบื้องต้นที่คุณรู้สึกว่าจำเป็นในการเริ่มต้นใช้งาน ในกรณีนี้ ฉันจะติดตั้ง EPEL release, wget, curl, net-tools และ vim สิ่งนี้อาจแตกต่างกันสำหรับกรณีของคุณ

sudo dnf install epel-release wget curl net-tools vim

หากคุณต้องการปรับใช้เทมเพลตของคุณบนแพลตฟอร์มคลาวด์ ให้ติดตั้งแพ็คเกจ cloud-init ตามที่แสดง

sudo dnf install cloud-init cloud-utils-growpart acpid

ต่อไป ให้ปิดใช้งานเส้นทาง zeroconf

echo "NOZEROCONF=yes" >> /etc/sysconfig/network

เมื่อเสร็จแล้ว อย่าลืมปิดเครื่องเสมือนและล้างอิมเมจเทมเพลต VM ดังที่แสดง

sudo virt-sysprep -d centos8

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

sudo virt-sysprep -d centos8

สุดท้ายให้เรียกใช้คำสั่งที่แสดงเพื่อยกเลิกการกำหนดโดเมน VM

sudo virsh undefine centos8

ขณะนี้อิมเมจเทมเพลตพร้อมสำหรับการโคลนและการใช้งานแล้ว