ติดตั้ง OpenNebula miniONE on KVM

เป็นวิธีการติดตั้งเซิร์ฟเวอร์สำหรับสร้าง VM โดยเลือกใช้โปรแกรมชื่อ OpenNebula miniONE ซึ่งจะมีตัวเลือกว่า จะติดตั้งเพื่อใช้งานกับ Hypervisor ชนิดใด เช่น KVM, vCenter, LXD หรือ Firecracker เป็นต้น ในที่นี้เลือก KVM

ขั้นตอน

  1. หลังจากเปิดเข้าใช้งาน Ubuntu Desktop เราจะต้องใช้ Terminal เพื่อทำคำสั่งต่าง ๆ โดยคลิกที่ไอคอน 9 จุด แล้วเลือก All ให้แสดงทุกโปรแกรม และเลือก Terminal
  2. ติดต้้ง openssh-server หากยังไม่ได้ติดตั้ง ด้วยคำสั่ง sudo apt install openssh-server
  3. พักหน้าต่าง Terminal ไว้ก่อน ตอนนีัเราจะไปดาวน์โหลด Opennebula miniONE โดยคลิกเปิดเบราว์เซอร์ Firefox และค้นหาคำว่า opennebula
  4. คลิกเลือก miniONE on KVM จากหน้าต่างของเว็บไซต์ opennebula.io
  5. จะมีบรรรทัดคำสั่งให้เราคัดลอกไปใช้ในการติดตั้ง
  6. ดาวน์โหลดตัวโปรแกรมติดตั้ง
  7. รันคำสั่งติดตั้ง คือ sudo bash minione
  8. จะมีการตรวจสอบสักครู่แล้วแจ้งให้พิมพ์ yes เพื่อยืนยันการติดตั้ง
  9. เมื่อเสร็จจะได้ user และ password ให้จดไว้ (จะเก็บอยู่ใน /var/lib/one/.one/one_auth)
  10. เตรียมไว้ว่าต่อไปจะใช้ TCP Port 80 สำหรับ web server ที่เป็น VM จึงต้องแก้ไข default port จาก 80 เป็นอย่างอื่น ตั้งค่า :port: 8080 แก้ไขที่ไฟล์ /etc/one/sunstone-server.conf
  11. รันคำสั่ง sudo systemctl restart opennebula-sunstone.service
  12. หลังจากติดตั้ง miniONE จะมีการจัดการค่าทาง network ใหม่ ทำให้ไม่ได้ IP ตรวจสอบด้วยการรันคำสั่ง ip addr 
  13. เราต้องแก้ไขให้ Ubuntu Desktop ได้รับ DHCP IP ดังนี้ ตั้งค่า renderer: networkd ตั้งชื่อ ethernets ที่ใช้ และ dhcp4: yes แก้ไขที่ไฟล์ /etc/netplan/01-network-manager-all.yaml 
  14. เสร็จแล้วต้องรันคำสั่ง sudo netplan apply และตรวจสอบดูค่า IP
  15. จัดการแก้ไขปรับแต่งให้ Ubuntu Desktop ทำ enable packet forwarding for IPv4 เข้าออก VM ได้ ตั้งค่า net.ipv4.ip_forward=1 โดยแก้ไขที่ไฟล์ /etc/sysctl.conf
  16. รันคำสั่ง sudo sysctl -p
  17. เข้า Browser ไปที่ URL http://NOTEBOOK_IP:8080 และ Login เข้าใช้ด้วย username คือ oneadmin และ password ที่ได้รับ 
  18. จะเห็นหน้า Dashboard มี VM 1 ตัว 
  19. ในขั้นตอนติดตั้ง miniONE จะใส่ CentOS7 มาให้เป็นตัวอย่าง ทั้ง image และ VM template   พร้อมใช้งาน (ถ้าเราใช้ CentOS) 
  20. เนื่องจากผมจะไม่ใช้ จึงขอลบทิ้ง

จบในส่วนการติดตั้ง