sdayu's blog

ทดสอบ VM บนระบบ Private Cloud ด้วย Eucalyptus

ยังไม่เรียบร้อยครับ

การทดสอบ VM บนระบบ Private Cloud ด้วย Eucalyptus นี้เป็นเรื่องที่ต่อจาก สร้างระบบ Private Cloud ด้วย Eucalyptus หากยังไม่เข้าใจการติดตั้ง Eucalyptus กรุณาอ่านบทความนี้ก่อน
เนื่องจาก Eucalyptus ได้เตรียมอิมเมจของ debian ไว้ให้แล้ว เรื่องนี้จะไม่กล่าวถึงการสร้างอิจเมจเอง แต่จะเน่นให้ใช้งานอิมเมจจาก Eucalyptus โดยที่สามารถดาวน์โหลดอิมเมจจาก Eucalyptus ได้ที่ Image Creator's Guide ในที่นี้เน้นหารติดตั้งอิมเมจ debian รุ่น lenny สถาปัตยกรรม amd64 ก่อนเริ่มสร้างอิมเมจเพื่อทำงาน[o Eucalyptus ต้องมั่นใจก่อนว่าได้ติดตั้ง euca2ools และติดตั้ง certificates ไว้เรียบร้อยแล้ว

สร้างระบบ Private Cloud ด้วย Eucalyptus

กระแส cloud computing กำลังมาแรง วันนี้เลยแนะนำการสร้าง private cloud ด้วย Eucalyptus เพื่อให้ผู้สนใจได้ทดลองใช้งานกันบน Debian ครับ สำหรับ Eucalyptus แบ่งการทำงานออกเป็น 4 ส่วนหลักคือ

  • Cloud Controller (CLC) มีลักษณะเป็นเว็บเซอร์วิส เขียนด้วย Java เป็นส่วนที่มีไว้เพื่อติดต่อกับผู้ใช้งานระบบ และควบคุมการทำงานของคอมโพเนนท์อื่นๆ ติดต่อใช้งานผ่าน https พอร์ท 8443
  • Cluster Controller (CC) มีลักษณะการทำงานเป็นเซอร์วิส ทำงานที่พอร์ต 8774 ทำหน้าที่ควบคุมการทำงานของ Node Controller
  • Node Controller (NC) ควบคุมการทำงานของ Virtual Matchine (VM) ในแต่ละคอมพิวเตอร์ ที่งานที่พอร์ต 8775
  • Storage Controller (SC) เป็นส่วนเก็บข้อมูลของระบบใช้ Walrus เป็นหลัก

สำหรับวิธีการติดตั้งนี้จะแยกเครื่องคอมพิวเตอร์ที่ใช้ติดตั้งออกเป็นสองส่วนคือส่วนที่เป็น front-end และส่วนที่เป็น compute-node โดยที่เครื่องที่ทำหน้าที่เป็น front-end จะติดตั้ง CLC CC และ SC เอาไว้ และส่วนที่เป็น compute-node จะติดตั้ง NC สำหรับการติดตั้งนี้เน้นการติดตั้งตามเพกเกจที่มีอยู่ในคลังของเดเบียนเท่านั้น ทดสอบติดตั้งบน sid แต่ในขณะที่เขียนนี้เพกเกจ libhibernate3 ในคลัง sid ใช้การไม่ได้จึงเลี่ยงไปใช้ libhibernate3 ในคลังของ testing แทน เพกเกจกับคอมโพเนนท์สามารถจับคู่ได้ดังนี้

  • CLC คือ eucalyptus-cloud
  • SC คือ eucalyptus-sc และ eucalyptus-walrus
  • CC คือ eucalyptus-cc
  • NC คือ eucalyptus-nc

Debian Live บน USB

หากต้องการใช้งาน debian บน USB flash drive เพื่อพกพาไปใช้งานบนคอมพิวเตอร์เครื่องอื่น โดยไม่ต้องติดตั้งลงบนเครื่องนั้นๆ เราสามารถทำได้โดย การสร้างอิมเมจเพื่อติดตั้งลง USB สำหรับขั้นตอนการติดตั้งนั้นสามารถทำได้ 2 วิธีคือ ใช้ command line และ GUI โดยในที่นี้จะแนะนำผ่านทาง command line ซึ่งมีขั้นตอนดังต่อไปนี้

ติดตั้งแพกเกจสำหรับสร้างอิมเมจเพื่อติดตั้งลง USB

$ sudo aptitude install live-helper

ติดตั้ง Debian ด้วย USB Memory Stick

ก่อนอื่นขอทำความเข้าใจก่อนว่า USB memory stick ก็คือ flash drive หรือ thumb drive หรือ handy drive นั้นเอง เพื่อให้เข้าใจง่ายต่อไปจะแทนด้วย flash drive ก็แล้วกันนะครับ

ในขั้นแรกเสียบ flash drive เข้าไปที่เครื่อง desktop หากไม่ผิดพลาด GNOME จะจัดการ mount flash drive ให้โดยอัตโนมัติ ซึ่งเราต้อง unmount โดยอาจจะใช้วิธี คลิกเมาส์ปุ่มขวาที่ flash drive ที่เราต้องการ แล้วเลือก Unmount Volume หรือจะใช้ command line ก็ได้

Debian Installer daily built images เมื่อวันที่ 14 กันยายน 2552

จากการติดตั้ง Debian ซึ่งเป็น daily built images เมื่อวันที่ 14 กันยายน 2552 มีการเปลี่ยนแปลงที่น่าสนใจดังต่อไปนี้

  • linux kernel ที่ติดตั้งมาให้โดยปริยายคือ 2.6.30-1
  • สามารถเลือกพาร์ทิชันเป็น ext4 ได้ทุกพาร์ทิชัน แม้แต่พาร์ทิชันที่เป็น master boot record
  • Grub เปลี่ยนเป็น 1.69 พร้อมพื้นหลังลายสีฟ้าสดใสมี Logo Debian ด้วย
  • สามารถติดตั้งจาก CD หากติดตั้งจาก USB Stick จะเจอปัญหา unicode จาก โดย kbd_mode (ทดสอบโดย iso amd64 business เท่านั้น)

การติดตั้ง Debian เป็น Desktop ด้วยโหมดกราฟิก

แนะนำการติดตั้ง Debian เป็นเดสก์ท็อปอย่างง่ายในโหมดกราฟฟิก โดยอ้างอิงจากการติดตั้งจากแผ่น 501-i386-netinst โดยในที่นี้จะเน้นการติดตั้งเป็นเดสก์ท็อปเท่านั้น

เนื่องจากแสดงการติดตั้งแบบกราฟฟิกโดยเลือกเป็นภาษาที่ใช้ติดตั้งเป็นภาษาไทยอยู่แล้ว จึงสามารถอ่านจากภาพได้ โดยไม่ต้องบรรยายทุกภาพ ตัวอย่างการติดตั้งนี้ พยายามใช้พื้นที่ขนาดเล็ก หากติดตั้งจริงโปรดกำหนดเองตามความเหมาะสมของผู้ใช้งาน

เริ่มการติดตั้ง โดยเลือกเมนู Graphical install
เริ่มการติดตั้ง โดยเลือกเมนู Graphical install

การติดตั้ง Debian เป็น Desktop

แนะนำการติดตั้ง Debian เป็นเดสก์ท็อปอย่างง่าย โดยอ้างอิงจากการติดตั้งจากแผ่น 501-i386-netinst โดยเน้นการติดตั้งเป็นเดสก์ท็อปเท่านั้น

เมื่อดาวน์โหลดซีดีมาเรียบร้อยแล้ว ก็เขียนซีดีมาบูต ก็จะปรากฏหน้าจอติดตั้งขึ้นมา โดยในที่นี้จะเลือกการติดตั้งแบบ text mode
หน้าจอแรกหลังจาก boot

การติดตั้ง svn server ร่วมกับ apache อย่างง่าย

หากเราต้องการใช้งาน Subversion เพื่อช่วยให้เราเขียนโค๊ดได้อย่างมีประสิทธิภาพขึ้น ใน debian แล้วเราสามารถทำได้ง่ายๆ เพียงแค่พิมพ์

# aptitude install subversion

หากเราต้องการติดตั้ง svn server เพื่อใช้เป็นที่เก็บข้อมูลต่างๆ แล้ว เราสามารถใช้ svnserve ได้ทันที แต่การใช้งานวิธีนี้อาจไม่เหมาะสม เช่น ไม่สามารถใช้งานได้บนระบบเครือข่ายที่ติดตั้ง proxy บางโปรแกรม และไม่ค่อยเป็นที่นิยม บนระบบอินเตอร์เน็ตนิยมใช้งานผ่านโปรโตคอล http มากกว่า ซึ่งมีคนใจดีทำโมดูลให้สามารถใช้งาน SVN ร่วมกับ apache webserver ได้ จึงขอแนะนำในที่นี้

เริ่มแรกต้องติดตั้ง apache และ โมดูลที่ใช้งานก่อน

# aptitude install apache2 libapache2-svn

เมื่อติดตั้งเรียบร้อยแล้วตรวจสอบดูก่อนว่า apache ได้ enable โมดูล dav_svn ไว้ให้แล้วหรือยัง โดยใช้

# a2enmod dav_svn

Driver printer HP LaserJet 1020

โดยปรกติหากเราใช้งาน printer เราสามารถลงโปรแกรม CUPS ได้ ซึ่งมันจะเรียกแพกเกจ foo2zjs และ foomatic มาให้เรียบร้อย เราสามารถใช้งาน printer ได้เลยแทบจะไม่ต้อง config อะไรเพิ่มเติม แต่ foo2zjs ก็ยังมีปัญหาบ้างกับ printer บางรุ่น โดยรุ่นที่ยกตัวอย่างนี้คือ 1020 ซึ่ง foo2zjs ที่เป็นแพกเกจของ debian ใน repository สามารถตรวจพบ printer ได้เป็นอย่างดี แต่ไม่สามารถใช้งานได้ เราต้องพึ่งพา driver ไม่ฟรีบ้างเพื่อให้ใช้งานได้ครับ โดยหากมี foo2zjs อยู่แล้วก็ให้เอาออกก่อน

# apt-get remove foo2zjs

หลังจากนั้นให้ทำตามเว็บนี้นะครับ http://foo2zjs.rkkda.com/

$ wget -O foo2zjs.tar.gz http://foo2zjs.rkkda.com/foo2zjs.tar.gz
$ tar zxf foo2zjs.tar.gz
$ cd foo2zjs
$ make

ปรับแต่งค่าให้ Apache รู้จักไฟล์ jsp

โดยปรกติเมื่อเราลง Tomcat เรียบร้อยแล้วก็ยังไม่สามารถเรียกใช้ไฟล์ jsp จาก Apache ผ่านทางพอร์ต 80 ได้โดยตรง เรายังต้องเรียกใช้ผ่านพอร์ต 8180 อยู่ หากเราต้องการให้ Apache รู้จักไฟล์ jsp และทำให้ jsp สามารถทำงานได้โดยใช้ Tomcat เป็นตัวจัดการกับไฟล์เหล่านี้อีกทีนึง เราสามารถทำได้โดยการเพิ่ม mod_jk ให้กับ Apache มีวิธีดังต่อไปนี้

เพิ่มมอดูลให้กับ Apache โดยถ้าเป็น Apache 2 ก็สั่ง:

# aptitude install libapache2-mod-jk

ถ้าหากต้องการใช้กับ Apache 1 ก็เป็นแพกเกจชื่อ libapache-mod-jk

เมื่อลงเสร็จเรียบร้อยแล้ว หากเราเข้าไปที่ /etc/apache2/mods-available จะปรากฏ jk.load ขึ้น คราวนี้เราต้องสร้างไฟล์คอนฟิก mod_jk สำหรับ Apache ขึ้นมา โดยให้ชื่อว่า jk.conf

# vi /etc/apache2/mods-available/jk.conf
Syndicate content
Creative Commons License ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น
ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้