ติดตั้ง OpenNebula Front-end บน ubuntu 18.04 server

จาก Wiki Opensource

บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 27-11-2561
ดูแลโดย WIBOON

OpenNenula คือ Cloud Management "Simple yet Powerful Turnkey Solution to Build Clouds and Manage Data Center Virtualization" (https://opennebula.org/)

สภาพแวดล้อมที่ทดสอบ

  • opennebula เวอร์ชั่น 5.6.1
  • เครื่องคอมพิวเตอร์ 3 เครื่อง
    เครื่องที่ 1 RAM 4 GB ทำหน้าที่เป็น Front-end
    เครื่องที่ 2 RAM 8 GB ทำหน้าที่เป็น Hypervisor Node (host ตัวที่ 1) ที่จะสร้าง VM
    เครื่องที่ 3 RAM 4 GB ทำหน้าที่เป็น Hypervisor Node (host ตัวที่ 2) ที่จะสร้าง VM
  • เครื่อง host จะตั้งค่า network interface เป็น bridge
  • เครื่อง host จะเชื่อมต่ออยู่กับ L2 switch port ที่มี 2 vlan คือ vlan id 6 (untagged) และ vlan id 7 (tagged)
  • เครื่อง VM ตั้งค่าให้ใช้ IP เลือกได้จาก DHCP Server หรือ ใช้ IP จาก IP range ที่จัดสรร ขึ้นอยู่กับการ config


ขั้นตอน
1.เริ่มต้น update กันก่อน

sudo apt update ; sudo apt -y dist-upgrade
sudo apt autoremove

2.ติดตั้ง Repository key และ sources list

wget -q -O- https://downloads.opennebula.org/repo/repo.key | sudo apt-key add -
echo "deb https://downloads.opennebula.org/repo/5.6/Ubuntu/18.04 stable opennebula" | sudo tee /etc/apt/sources.list.d/opennebula.list

3.เลือกใช้ MariaDB เป็น database
Import MariaDB gpg key

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

Add the apt repository

sudo add-apt-repository 'deb [arch=amd64] http://mirror.zol.co.zw/mariadb/repo/10.3/ubuntu bionic main'

Install MariaDB

sudo apt update
sudo apt -y install mariadb-server mariadb-client

4.สร้าง database

mysql -u root -p
Password:

คำสั่งในการสร้าง

CREATE DATABASE opennebula;
GRANT ALL PRIVILEGES ON opennebula.* TO 'oneadmin' IDENTIFIED BY 'StrongPassword';
FLUSH PRIVILEGES;
EXIT

5.ติดตั้ง OpenNebula Front-end packages

sudo apt update
sudo apt install opennebula opennebula-sunstone opennebula-gate opennebula-flow

6.Ruby Runtime Installation

sudo /usr/share/one/install_gems

กด Enter เมื่อมีคำถาม

7.Configure OpenNebula DB

sudo vim /etc/one/oned.conf

ใส่ comment บรรทัดนี้:

#DB = [ BACKEND = "sqlite" ]

แล้วเพิ่ม

DB = [ backend = "mysql",
 server = "localhost",
 port = 0,
 user = "oneadmin",
 passwd = "StrongPassword",
 db_name = "opennebula" ]

8. ทดสอบ login ด้วย username oneadmin

mysql -u oneadmin -p
Password:

9.Configure oneadmin credentials

sudo cat /var/lib/one/.one/one_auth

เข้าไปเปลี่ยน password ครั้งแรก

sudo su - oneadmin
echo "oneadmin:mypassword" > ~/.one/one_auth
exit

10.ถ้ามี host firewall ทำงานอยู่ เปิด Port 9869 ด้วย

11.Start OpenNebula daemons

sudo systemctl start opennebula opennebula-sunstone
sudo systemctl status opennebula opennebula-sunstone
sudo systemctl enable opennebula opennebula-sunstone

12.ตรวจสอบผลของการ Installation

sudo su - oneadmin -c "oneuser show"

ถ้ามี error ก็ค้นดูในไดเรกทอรี /var/log/one

13.เข้าทำงานผ่านทาง Sunstone UI
http://<frontend_address>:9869
username คือ oneadmin และ password ที่ตั้งไว้

References: