สิ่งที่ควรรู้และการแก้ปัญหาเบื่องต้นเมื่อใช้งานระบบ sciencecloud 1

1. การเปลี่ยนชื่อ hostname เมื่อสร้าง instance บน DHCP network

เนื่องจากระบบ sciencecloud ใช้ openstack newton ซึ่งมีการ assign ชื่อ host ให้กับ instance เมื่อคุณสร้างและกำหนดให้ NIC1 เชื่อมต่อกับ self-service local network ที่เป็นแบบ DHCP ดังนั้นเมื่อเริ่มเข้าใช้งานคุณจะสังเกตุว่าเมื่อ login เข้าสู่ระบบ hostname ที่โชวที่ command line prompt จะเป็น “host-192-168-3-4” ซึ่งมี fixed ip คือ 192.168.3.4 แต่เมื่อ cat ดูค่าในไฟล์ /etc/hostname และ /etc/hosts จะมีชื่อ host เป็น ubuntu ดังภาพ

ubuntu@host-192-168-3-4:~$ cat /etc/hosts
127.0.0.1       localhost
127.0.1.1       ubuntu

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ubuntu@host-192-168-3-4:~$ cat /etc/hostname
ubuntu
ubuntu@host-192-168-3-4:~$

คุณมีสองทางเลือกที่จะเปลี่ยนชื่อ host

แบบแรก:

ให้ reboot เครื่อง vm instance นั้นและเมื่อ login กลับมาใหม่ชื่อ instance จะเป็น ubuntu

แบบที่สอง:

เราจึงจะเปลี่ยนชื่อให้เป็นรูปแบบ “host-a-b-c-d” ดัวยคำสั่ง

ubuntu@host-192-168-3-4:~$ sudo su
sudo: unable to resolve host host-192-168-3-4
[sudo] password for ubuntu:
root@host-192-168-3-4:/home/ubuntu# sed -i "s/ubuntu/host-192-168-3-4/g" /etc/hostname
root@host-192-168-3-4:/home/ubuntu# sed -i "s/ubuntu/host-192-168-3-4/g" /etc/hosts
root@host-192-168-3-4:/home/ubuntu#

ผมทำแบบนี้ทั้ง instance ที่เป็น ubuntu 14.04 และ 16.04 แต่ยังไม่เคยลอง desktop ถ้าใครพบปัญหาก็ช่วยแจ้งนะครับ

2. การแก้ปัญหา ไม่สามารถ apt-get update ได้

เมื่อ login เข้ามาใน instance แล้วบางทีคุณอาจพบปัญหาไม่สามารถ update ubuntu repository ได้ อันนี้มีอาการหลายแบบ แบบแรกคือ update แล้วไปค้างอยู่ที่ waiting for header อันนี้ขอให้ลองคำสั่ง

$ sudo apt-get clean
$ sudo apt-get update

นอกจากนั้น คำสั่ง apt-get update อาจค้างและถึงแม้ว่าจะ apt-get clean แล้วก็ไม่หาย อันนี้ของให้ลอง สองทางเลือกต่อไปนี้

1. เปลี่ยน repository location ใน /etc/apt/sources.list อาทิเช่น เปลี่ยนจาก th.archive.ubuntu.com เป็น us.archive.ubuntu.com หรือที่อื่นๆ jp.arch* sg.arch* …

2. hard reboot เครื่อง คุณจะใช้คำสั่ง

$ sudo reboot

หรือเลือกทำ Hard Reboot จากเมนูของ openstack horizon หรือ CLI ก็ได้ หลังจากนั้นของให้ลอง apt-get อีกทีและถ้ายังมีปัญหาอยู่ช่วยแจ้งผมด้วยนะครับ

3. จะทำอย่างไรดี flavor ของ instance บอกว่ามี disk มากมายแต่ instance มีขนาดแค่ 8GฺB ถึง 10GB: คำตอบคือ…..

คุณต้องขยาย Disk partitions เอง คุณวศินี sysadmin ของระบบ ScienceCloud ได้ช่วยเขียนคู่มือไว้ที่ Blog Post นี้ หรือถ้าใช้ windows 10 ก็ดู Blog Post นี้

4. เกี่ยวกับ opensatck network ขั้นสูง (สำหรับผู้สนใจ)
เนื่องจากการเชื่อมต่อระหว่าง compute hosts ของ openstack เป็นแบบ All-to-All ผมเดาว่า openstack ใช้ End Host Mode forwarding rules (เหมือนใน virtual switch ของ vmware) ที่ L2 network ไม่ต้องใช้ STP โดยที่ระบบ virtual network รู้จัก macaddress ของ vm ทุกอันและบริหาร forwarding rules ของ vm เหล่านั้นมาตั้งแต่เกิด ดังนั้น openstack “อาจ” ป้องกันไม่ให้ผู้ใช้สร้าง vm เข้ามาใช้ br-int ของมัน

One comment on “สิ่งที่ควรรู้และการแก้ปัญหาเบื่องต้นเมื่อใช้งานระบบ sciencecloud

  1. Pingback: การติดตั้งและใช้งาน kvm (qemu) แบบ โบราณ ด้วย command line ล้วนๆ บน ubuntu ← Science Cloud Community

Leave a Reply