ติดตั้ง haproxy บน Ubuntu Desktop

เป็นขั้นตอนที่ทำขึ้น เพื่อทำการ redirect port 80 เข้าไปยัง web server ใน VM (OpenNebula miniONE on KVM) ที่เราติดตั้งไว้ในเครื่อง Ubuntu Desktop ในตัวอย่างนี้ Ubuntu Desktop มี IP 192.168.1.70 และ VM มี IP 172.16.100.3 ขั้นตอน เปิด Terminal และติดตั้ง haproxy ด้วยคำสั่ง sudo apt install haproxy เข้าทำงานสิทธิ root ด้วยคำสั่ง sudo  su  –และไปในไดเรกทอรี cd  /etc/haproxyเก็บสำรองไฟล์ config ไว้ก่อน ด้วย cp  haproxy.cfg  haproxy.cfg.origเข้าไปแก้ไขไฟล์ vi  haproxy.cfg เพิ่มบรรทัดเหล่านี้ ต่อท้ายบรรทัด errorfile 504 /etc/haproxy/errors/504.http frontend www-http    bind *:80    mode http    acl is_cms path -i -m beg /cms/    use_backend be_cms if is_cms backend be_cms    option forwardfor    server cms 172.16.100.3:80 ทำการ restart haproxy และ ดู status ทดสอบการเข้าใช้งานจากเครื่องใน network เดียวกันกับเครื่อง Ubuntu Desktop ของเรา ไปที่ http://REAL-IP/cms/  จบครับ

Read More »

ติดตั้ง CMSimple version 5.3 ใน VM ของ miniONE KVM

เป็น CMS Web Server อย่างง่าย ไม่มี database ติดตั้งลงใน OS ที่เป็น Ubuntu Server 20.04 ที่ได้ติดตั้ง apache2 web server (เปิด port 80) พร้อม php ไว้แล้วด้วยคำสั่ง sudo apt install apache2 php php-xml ขั้นตอน ไปที่เครื่อง Ubuntu Desktop ของเรา เข้าเว็บเบราว์เซอร์ OpenNebula Sunstone และเปิด VM ที่เป็น Ubuntu Server (สมมติว่า VM มี IP 172.16.100.3) เปิดเพจของ CMSimple ดาวน์โหลด CMSimple_5-3.zip ใช้คำสั่ง scp คัดลอกไฟล์ไปไว้ใน VMscp CMSimple_5-3.zip  papa@172.16.100.3เสร็จแล้ว ssh เข้าไปใน VMssh  papa@172.16.100.3 แตกไฟล์ CMSimple_5-3.zip หากยังไม่ได้ติดตั้ง apache2 และ php ให้ใช้คำสั่ง sudo apt install apache2 php และคำสั่ง sudo apt  install  php-xml นำไปไว้ใน /var/www/html/cms/sudo  mv  CMSimple_5-3  /var/www/html/cmssudo  chown  -R  www-data:www-data  /var/www/html/cms ทำ restart apache2sudo su –service apache2 restart ไปที่หน้าเว็บ http://VM_IP/cms/ ศึกษาวิธีตั้ง Password ครั้งแรกได้จากไฟล์ readme.php ทำขั้นตอน setup Password ของ CMSimplesudo su –cd /var/www/html/cms/cp  ./setup/setupControl.php  .chmod 666 setupControl.php ไปที่หน้า login ของเว็บ http://VM_IP/cms/ และใส่ Password  ไปเปลี่ยน Password ที่เมนู Settings > CMS ตั้ง Password และคลิก Save ลอง logout แล้ว login ใหม่ ใส่ Password ที่ตั้งใหม่ ตอนนี้ก็จัดการ Pages ต่าง ๆ ที่ให้มาเป็นตัวอย่าง ศึกษาวิธีทำเพจได้เอง  เมื่อ logout ทุกครั้ง จะมีแจ้งว่า ได้บันทึกเพจไว้ 2 ไฟล์ พร้อมวันที่บันทึกเป็นสำเนา จบ คิดว่า มันง่ายดีในการนำมาใช้ทดสอบ และ ใช้งานได้จริงสำหรับเว็บเพจง่าย ๆ

Read More »

สร้าง VM OpenNebula miniONE on KVM ตอนที่ 2 add one-context

เป็นขั้นตอนติดตั้ง one-context ต่อจากตอนที่แล้ว ขั้นตอน คำสั่ง sudo su – และ คำสั่ง  wget https://github.com/OpenNebula/addon-context-linux/releases/download/v5.12.0.2/one-context_5.12.0.2-1.deb ลบ cloud-init ด้วยคำสั่ง apt-get purge -y cloud-initติดตั้งด้วยคำสั่ง dpkg -i one-context_*deb || apt-get install -fy เมื่อเสร็จ ให้ออกจาก web console และ คลิก Power off hard เอา CD-ROM ออก เมื่อถึงตรงนี้ VM นี้ก็พร้อมใช้เป็นต้นแบบในครั้งต่อไปได้ เราจึง Save as Template สมมติให้ชื่อว่า ubuntu-server-20.04 ปรับแต่ VM Template เพื่อเติมสิ่งที่เกี่ยวกับ Context โดยคลิกปุ่ม Update คลิกที่ Context และ คลิกที่ตัวเลือกทุกอัน ใส่ Custom vars คือ SET_HOSTNAME, USERNAME และ PASSWORD ตอนนี้ VM Template นี้ ก็พร้อมใช้งาน เพื่อสร้าง VM ใหม่อันต่อไป โดยจะคลิกที่คำว่า Instantiate ก็ได้ เลือกได้ว่าจะให้สร้างทีละกี่ instances ส่วนชื่อให้ละไว้ไม่ต้องใส่ก็ได้ จะได้ชื่อจาก ชื่อ VM Template และต่อท้ายด้วย VMID คลิกที่ web console เพื่อเข้าไปใช้งาน VM จะได้หน้านี้ ทดสอบ login ด้วย username ชื่อ papa ตามที่เราตั้งใน Context หน้า Dashboard หลังจากที่เราสร้างเสร็จ 1 ตัว หากเข้าหน้าเว็บ Sunstone ไม่ได้เพราะลืม password ของ username oneadmin ดูที่นี่ ถึงตรงนี้ เราควรจะ ssh จาก ubuntu desktop เข้าไปยัง VM ได้ แต่หากเราไม่สามารถ ssh เข้าไปยัง VM เพราะว่า ssh host key ไม่มีเนื่องจากข้อผิดพลาดในขั้นตอนติดตั้ง Ubuntu server ให้สร้างด้วยคำสั่ง ssh-keygen -A ในเครื่อง VM แล้ววนกลับไปสร้าง VM Template ใหม่  ในตอนต่อไปก็จะเป็นการติดตั้ง CMS Web Site เพื่อใช้ในการทดสอบการให้บริการ TCP port 80 ผ่าน HAPROXY ของเครื่อง ubuntu desktop

Read More »

สร้าง VM OpenNebula miniONE on KVM

หลังจากติดตั้ง server เสร็จแล้ว ตอนนี้ เรามาลองสร้าง VM กันสัก 1 ตัว หลักการคือ สร้าง image ที่เป็น disk เปล่า ๆ จากนั้นสร้าง VM Template ให้มาใช้ image นี้ และกำหนดค่า VM Template ให้เสร็จ แล้วสร้าง VM จาก VM Template นั้น ขั้นตอน สร้าง Image เปล่า สมมติตั้งชื่อว่า DISK8GB กำหนด Type คือ Generic storage datablock และเป็นแบบ Empty disk image กำหนดขนาด 8 GB สร้าง Image ที่เป็น CD-ROM สมมติตั้งชื่อว่า iso-ubuntu-focal กำหนด Type คือ Readonly CD-ROM โดย Upload จากฮาร์ดดิสก์ และเลือก ubuntu-20.04.1-live-server-amd64.iso ตอนนี้เตรียมของ 2 อย่าง พร้อมแล้ว สร้าง VM Template ชื่อ Install new ubuntu ใช้ Hypervisor ชนิด KVM กำหนด Memory 768 MB (เพิ่มได้)  กำหนดค่า Storage ให้ DISK0 ใช้ image ชื่อ DISK8GB กำหนดค่า Network ใช้อันที่มีอยู่แล้วคือ vnet (สร้างเองได้ภายหลัง) คลิก Create เพื่อสร้าง VM Template จะได้ดังรูป สร้าง VM จาก VM Template ที่สร้างในข้อที่แล้ว คลิกที่ Instances > VMs และคลิกปุ่ม + เลือก VM Template ชื่อ install new ubuntu จะได้ VM ชื่อ install new ubuntu-0 แต่ตอนนี้ เรายังไม่ได้ใส่ CD-ROM เพื่อติดตั้ง ให้คลิก Power Off hard คลิกที่ VM  คลิกที่ Storage และ คลิก Attach disk คลิกเลือก image ที่เป็น CD-ROM ตอนนี้ เรามี disk และ CD-ROM แล้ว คลิก Config เพื่อเข้าไป Update configuration ตั้งค่า OS&CPU Boot order ให้ boot CD-ROM เปิด VM เข้าไปทำงานทางหน้า Web console  รอ ติดตั้ง Ubuntu Server ลงใน VM(ติดตั้ง Ubuntu Server 20.04 ใน VM ของ miniONE KVM) ตอนต่อไปเป็นขั้นตอนติดตั้ง one-context เพิ่มลงใน VM อ่านต่อเรื่องนี้ สร้าง VM OpenNebula miniONE on KVM ตอนที่

Read More »

ติดตั้ง Ubuntu Server 20.04 ใน VM ของ miniONE KVM

เป็นขั้นตอนสร้าง VM ที่เป็น Ubuntu Server 20.04 ใน VM ของ miniONE KVM ขั้นตอน เลือกใช้ภาษาอังกฤษในการติดตั้ง เลือก keyboard layout  ตั้งค่า IP Address แบบ static เลือก Interface name และ คลิก Edit IPv4 เลือก Method แบบ Manual ใส่ค่า IP Address ไปต่อ คลิก Done ไปต่อ คลิก Done ตั้ง Mirror address มาที่ http://th.archive.ubuntu.com/ubuntu Storage configuration เลือก Use an entire disk  ไปต่อ คลิก Done Confirm destructive action เลือก Continue กำหนดค่า name, username และ password เลือก Install OpenSSH server และคลิก Done Featured Server Snaps ไม่เลือก ไปต่อ คลิก Done รอ เมื่อเสร็จ คลิก Reboot ในขั้นตอน downloading and installing security updates หากนานมาก จะไม่รอ ก็คลิก Cancel update and reboot เมื่อกลับเข้าใช้งาน ต้อง update เองสักรอบ เพื่อลงโปรแกรมอื่น ๆ ได้ และอาจเป็นผลให้ติดตั้ง ssh host key ไม่สำเร็จ ตรวจสอบด้วยคำสั่ง ls -l /etc/ssh แก้ไขโดยสร้าง ssh host key ด้วยคำสั่ง ssh-keygen -A จบขั้นตอนสร้าง Ubuntu Server

Read More »