OpenShift เปิดบริการแหล่งรวมซอฟต์แวร์ชื่อ OpenShift Hub เปิดให้นักพัฒนาสามารถนำเอาซอฟต์แวร์ของตัวเองเอาขึ้นบริการใน OpenShift ได้ สำหรับผู้ใช้งานสามารถเลือก Application ที่ต้องการได้จากหน้า OpenShift Hub และกด Deploy ได้เลย OpenShift จะทำหน้าที่ Deploy Application ที่ต้องการใช้งานให้อัตโนมัติ

สำหรับการใช้งานก็ง่ายมาก ให้คุณเลือก Application ที่คุณต้องการจากหน้า OpenShift Hub เมื่อได้แล้วให้กดเข้าไปดูรายละเอียด

Continue reading

ครั้งที่แล้วพาเล่น Google Cloud Launcher เพื่อไม่ให้น้อยหน้ากัน ลองมาดูของ Azure บ้าง ในส่วนของ Azure จะมี Azure Marketplace ด้วยเช่นกัน คุณสามารถซื้อ Application ที่คุณต้องการพร้อมบริการ Deploy อัตโนมัติบน Cloud ของ Microsoft อย่าง Azure ได้ อย่างง่ายๆ เลยทีเดียว การใช้งานสามารถใช้งานได้ 2 ที่ คือผ่านหน้า Azure Marketplace หรือ Azure Marketplace ใน Azure Portal ก็ได้

สำหรับการเข้าใช้ Azure Marketplace ผ่านหน้า Azure Portal ก็ง่ายมากๆ กด New+ > เลือกบริการสักอันนึง ดูข้างล่างสุดจะมีเมนูให้เลือกเป็น Azure Marketplace อย่ารอช้ากดเข้าไปเลย


Continue reading

Google เปิดบริการใหม่เพื่อให้ผู้ใช้ได้เข้าถึงบริการ Google Cloud Computing ได้รวดเร็วขึ้น ผ่านบริการ Google Cloud Launcher ซึ่งเป็นบริการ Deploy Application ที่เป็นที่นิยมบน Google Cloud Compute ของ Google เอง ซึ่ง Application ที่มีให้เลือกมีมากกว่า 120 ตัวเลยทีเดียว พร้อมทั้งแบ่งหมวดหมู่ให้เข้าถึงได้ง่ายดังนี้

  • Infrastructure
  • Database
  • Developer Tools
  • Blog
  • CMS
  • CRM
  • และอื่นๆ

สำหรับ image ที่ให้บริการส่วนใหญ่เป็น Image มาจาก Bitnami ซึ่งเบื้องต้นเป็นการ Deploy ในรูปแบบ Virtual Machine เป็นหลัก สำหรับ Container Services คงจะค่อยๆ ทะยอยออกมาทีหลัง การใช้งาน Cloud Launcher ก็เหมือนกับการ Click to Deploy ของ Cloud Provider รายอื่นๆ ซึ่ง Application ที่เราเลือกใช้จะไป Deploy บนบริการ Google Cloud Platfrom ที่เราใช้บริการอยู่นั่นเอง


Continue reading

Elastic Beanstalk เป็นเครื่องมือช่วยในการ Deploy Application​ บน Amazon Web Service โดยที่เราไม่ต้องกังวลเรื่อง Instance, OS, Auto Scaling Group, Monitoring ฯลฯ เพราะ Elastic Beanstalk จะเป็นคนจัดการให้ทั้งหมด คุณมีหน้าที่แค่พัฒนา Application แล้วสั่ง deploy เท่านั้น ซึ่ง Application ที่สามารถ deploy ผ่าน Elastic Beanstalk ได้หลายภาษา ทั้ง .NET, Python, PHP, Node.js, Ruby, Tomcat และ Docker

การใช้งาน Docker บน Elastic Beanstalk คุณสามารถสั่ง deploy Dockerfile เปล่าๆ หรือใช้ชุดของ Dockerfile และไฟล์ประกอบต่างๆ ที่บีบอัดในรูปแบบไฟล์ zip ได้เช่นกัน เราจะใช้ Dockerfile ของเกม 2048 กัน


Continue reading

Amazon เป็นผู้ใช้บริการ Cloud Computing รายใหญ่รายหนึ่งซึ่งสนับสนุนการใช้งาน Docker Container ในหลายบริการของตัวเอง เช่น EC2, Elastic Beanstalk, EC2 Container Service (ECS) เป็นต้น ครั้งนี้เราจะมาลองใช้งาน Docker บนบริการ EC2 โดยใช้ความสามารถของ Cloud Init เพื่อสั่งติดตั้ง Docker ขณะสั่งสร้าง instance ได้เลย โดยไม่ต้องติดตั้งตามทีหลัง ซึ่ง Cloud Provider ไหนที่ให้บริการพร้อม Cloud Init ก็ใช้วิธีนี้ได้เหมือนกัน เริ่มจากสร้าง Instance จาก Wizard


Continue reading

Google เปิดให้บริการ Google Container Engine ซึ่งรองรับการใช้งาน Kubernetes และ Docker Container แต่การใช้งานต้องใช้งานตามโครงสร้าง Kubernetes เป็นหลัก ซึ่งโครงสร้างที่ Kubernetes ต้องมีเป็นอย่างน้อย ได้แก่ cluster ของ container host และ pod ซึ่งก็คือ container ที่ต้องการ deploy โดยปกติ ถ้าใช้งาน Kubernetes โดยตรงจะต้องจัดการเรื่อง config ต่างๆ เองทั้งหมด โดยเฉพาะการเชื่อมต่อกับ Cloud Provider ที่ใช้บริการ แต่การใช้งานผ่าน Container Engine และใช้ Google Cloud SDK ด้วยแล้ว การใช้งาน Docker Container บน Container Engine ก็กลายเป็นเรื่องง่าย

การใช้งาน Google Cloud Platform หรือบริการที่อยู่ภายใต้ Google Cloud Compute จะต้องใช้งานผ่าน Google Cloud SDK ซึ่งจะมีชุดคำสั่งที่จะช่วยให้เราสั่งงานผ่าน command line ได้สะดวกมากยิ่งขึ้น หากใครไม่มี Google Cloud SDK ให้ติดตั้งก่อนดังนี้

curl https://sdk.cloud.google.com | bash

จากนั้นสั่ง authentication กับ Google Account ได้เลย

gcloud auth login


Continue reading

Azure เป็นบริการ Cloud Computing ของ Microsoft ซึ่งบริการพื้นฐานอย่างการใช้งาน Virtual Machine เป็นบริการที่ใช้งานได้ง่ายและสะดวกมาก ซึ่ง Microsoft มีบริการระบบปฏิบัติการที่หลากหลาย ทั้ง Linux และ Windows ซึ่งระบบปฏิบัติการที่เป็นที่นิยมใช้กันมากที่สุดบน Azure คือ Ubuntu และระบบปฏิบัติการน้องใหม่มาแรงที่เพิ่งเริ่มให้บริการมาไม่นานมานี้คือ CoreOS ซึ่งคุณสามารถใช้ Docker ได้บน CoreOS ได้เช่นกัน ซึ่งหากใช้ CoreOS จะสามารถใช้งาน Docker ได้เลยโดยไม่ต้องติดตั้งเพิ่มเติม แต่ถ้าใช้ Ubuntu จะต้องติดตั้ง Docker เพิ่มเติม

ลองมาดูวิธีการใช้งาน Docker บน Ubuntu ที่ใช้งานบน Azure กัน เริ่มต้นจากสร้าง Virtual Machine ขึ้นมาก่อน แน่นอนเราจะใช้ Ubuntu กัน


Continue reading

ห้องปฏิบัติการวิจัย vasabilab ภาควิชาวิทยาการคอมพิวเตอร์ มหาวิยาลัยธรรมศาสตร์ มีความประสงค์จะจัดการอบรม OpenStack Tutorial และ OpenStack Birthday Party ในวันจันทร์ที่ 21 ถึงวันพุธที่ 23 กรกฎาคม 2557 ที่ ตึก บร 2 ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี มหาวิทยาลัยธรรมศาสตร์ ศูนย์รังสิต โดยมีกำหนดการข้างล่าง

ผู้สนใจสามารถสอบถามรายละเอียดได้ที่ kasiditchanchio@gmail.com และจองที่นั่งได้โดยใส่ข้อมูลที่ Registration Web Page หรือส่ง ชื่อ นามสกุล หน่วยงานในสังกัด และเบอร์โทรศัพท์ มาที่ kasiditchanchio@gmail.com ภายในวันที่ 15 กรกฎาคม 2557

  • ภาษาที่ไช้ในการอบรม: ไทย
  • ค่าใช้จ่ายในการอบรม 1,000 บาท สำหรับ บุคคลทั่วไป
  • นิสิต นักศึกษา สามารถเข้าอบรมได้ฟรี

เมื่อจบการอบรมแล้วผู้เข้าอบรมจะได้รับ Certificate of OpenStack Training จากคณะวิทยาศาสตร์และเทคโนโลยี มหาวิทยาลัยธรรมศาสตร์


Continue reading

ผมได้มีโอกาสไปเรียน Cloud Computing Specialist ทำให้ผมพบว่า การติดตั้ง OpenStack มันยุ่งจัง ยิ่ง service ของ OpenStack ยิ่งมากขึ้น ก็ต้อง config มากขึ้น อืมมม จริงๆ ก็ไม่ใช่เรื่องแปลกอะไรอ่ะนะ แต่สำหรับคนที่ต้องการสนองความอยากรู้อย่างผม เจ้าหมี Grizzly ก็เล่นเอาถอดใจเหมือนกัน วันนี้็เลยอยากมาแนะนำวิธีการติดตั้งแบบง่ายๆ สำหรับคนที่อยากรู้ว่า OpenStack เป็นยังไงเพื่อจะได้ทดลองเล่นได้ ก่อนจะถึงขั้นตอนติดตั้ง ต้องแนะนำสักหน่อยว่า OpenStack เป็น Cloud Management Platform ประกอบไปด้วย service ที่ทำหน้าที่แตกต่างกัน ดังนี้

  1. Nova ทำหน้าที่จัดการส่วน Compute และ Orchestration อะไรที่ต้องยุ่งกับ VM ก็ดูตัวนี้
  2. Glance ทำหน้าที่เป็นตัวจัดการ Image Respository ของ VM ที่เราจะเอามาใช้งาน
  3. Cinder ทำหน้าที่เป็นตัวจัดการ Block Storage เอาไว้แปะกับ VM เพิ่ม Disk และเก็บข้อมูล
  4. Keystone ทำหน้าที่เป็น Identity Management และ Tenant ให้กับระบบ
  5. Swift ทำหน้าที่เป็น Object Storage เก็บไฟล์ หรือทำ Archive Block Storage ได้
  6. Neutron ทำหน้าที่เป็น Network Sevice จัดการเรื่อง Virtual Switch/Router/Network ได้
  7. Ceilometer ทำหน้าที่เป็น Meter วัดการใช้งาน resources ไม่ว่าจะเป็น CPU, Memory, Storage และ Network ได้
  8. Heat ทำหน้าที่เป็น Orchestration Tools โดยเตรียม Config ต่างๆ ไว้เป็น Template ใช้ในการ Deploy App ได้ง่ายๆ อันนี้ลอกมาจาก Cloud Formation ของ Amazon AWS
  9. Horizon เป็น Dashboard ทำงานผ่านเว็บ ช่วยให้เราไม่ต้องใช้ Command Line เยอะจนเกินไป

สำหรับผู้ที่อยากลองเล่น OpenStack มี 3 ช่องทางให้เลือก คือ

  1. ติดตั้งเอง
  2. ลองเล่นจาก TryStack
  3. ลองเล่นจาก Cloud Provider อย่าง Rackspace, HP Cloud เป็นต้น


สำหรับผู้ที่อยากติดตั้งเองมีอีก 3 ช่องทางให้เลือก

  1. ติดตั้งจาก Package ที่ Linux Distribution มีให้แล้ว Config ทีละ Service ไปเรื่อยๆ Config เหนื่อย ถ้าขยันก็อาจเลือกวิธีนี้ได้ :)
  2. ติดตั้งจากเครื่องมือ DevOps อย่าง เช่น Chef, Puppet, Juju, Crowbar, Foreman เป็นต้น
  3. ติดตั้งจากเครื่องมือสำหรับนักพัฒนาอย่าง DevStack วิธีนี้เหมาะสำหรับ คนที่อยากรู้เฉยๆ restart เครื่องแล้ว service หายนะจ๊ะ

เยอะไปหรือเปล่า T_T เอาเป็นว่าผมเลือกวิธีง่ายๆ และสามารถเอาไปลองเล่นได้นานๆ วิธีที่ว่าคือ การติดตั้งผ่านเครื่องมือ DevOps ซึ่ง RedHat ได้เลือกใช้ Puppet มาเป็นเครื่องมือสำหรับการติดตั้ง OpenStack บน RedHat Enterprise Linux, Fedora 19+ และ CentOS มาดูวิธีการติดตั้งกัน สิ่งที่ต้องมี ได้แก่

  1. RedHat Enterprise Linux 6 Mini หรือ CentOS 6.4 Mini ก็ได้
  2. เครื่องคอมพิวเตอร์ที่มี CPU 2 Cores, RAM 2GB, HDD 160GB เป็นอย่างต่ำ มีสัก 2 เครื่อง ต่อ LAN และออกเน็ตได้

โดย LAN เป็น Network 192.168.0/24 เครื่อง Controller มี IP เป็น 192.168.0.10 เครื่อง Node 1 มี IP เป็น 192.168.0.11

เริ่มจาก Cluster Controller (All in One)

ติดตั้ง CentOS 6.4 Mini ให้เรียบร้อย จากนั้นติดตั้ง RedHat OpenStack Repository ดังนี้

sudo yum install -y http://rdo.fedorapeople.org/openstack-grizzly/rdo-release-grizzly.rpm

จากนั้นติดตั้ง PackStack เครื่องมือที่ใช้ติดตั้ง OpenStack

sudo yum install -y openstack-packstack

เพื่อความแน่ใจ reboot เครื่อง 1 รอบ ให้ Kernel ใหม่ทำงาน จากนั้นก็ ติดตั้ง OpenStack ได้เลยโดยใช้คำสั่ง

packstack --allinone --os-quantum-install=n

รอจนกว่าการติดตั้งจะเสร็จ ตัวติดตั้งจะแจ้งว่าเข้าใช้งาน Dashboard ได้จาก URL อะไร และ Username, Password อะไร

สำหรับเครื่อง Node ทำแบบเครื่อง Controller ติดตั้ง packstack จากนั้น copy file packstack-answer-XXXXXX-XXXX.txt มาไว้ที่เครื่อง Node แก้ไขไฟล์นี้ในส่วน CONFIG_NOVA_COMPUTE_PRIVIF, CONFIG_NOVA_NETWORK_PRIVIF จาก lo เป็น eth0 , CONFIG_NOVA_COMPUTE_HOSTS เป็น IP ของเครื่อง Node คือ 192.168.0.11 แก้ CONFIG_NOVA_NETWORK_FLOATRANGE จาก 10.3.4.0/22 เป็น 192.168.0.128/26 จากนั้นสั่งติดตั้งตาม answer file ดังนี้

packstack --answer-file=packstack-answer-XXXXXX-XXXX.txt

หลังจากการติดตั้งเสร็จ มาลอง Service กันหน่อย ใช้คำสั่ง

source keystone_admin

เพื่อเปิด console และตั้งค่า Environment ให้เครื่องมือบน Command Line จากนั้นใช้คำสั่ง

nova-manage service list

เพื่อดูว่า service ทั้งหมดทำงาน หรือใครอยากจะทดสอบ เป็นราย service โดยการ list ข้อมูลออกมาก็ได้ เช่น nova list, glance index, cinder list เป็นต้น ถ้าลองแล้วไม่มี Error ก็ถือว่าใช้ได้ ลืมบอกไปว่าถ้าจะทำให้ VM ที่สร้างขึ้นมา ต่อกับโลกภายนอกได้ ต้องตั้ง Floating IP แต่ PackStack กำหนดค่าให้เราสำเร็จ ซึ่งเป็นค่าที่ผิด T_T ต้องมาแก้กันก่อน โดยลบของเก่าออกก่อน

nova floating-ip-bulk-delete 10.3.4.0/22

และเพิ่ม Floating IP ที่ถูกต้องลงไป

nova floating-ip-bulk-create 192.168.0.128/26

จากนั้นสร้าง SSH Key สำหรับใช้งานกัน :)

nova keypair-add mykey > mykey.pem

ดาวน์โหลด VM Image สมมติว่าเป็น Ubuntu ละกัน

wget http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.img

และลงทะเบียนเข้าไปใน Glance ดังนี้

glance image-create --name 'precise' --disk-format qcow2 --container-format bare --is-public true < precise-server-cloudimg-amd64-disk1.img

กำหนด security group ให้ ssh และ ping ได้

nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0

nova secgroup-add-rule default tcp 22 22 0.0.0.0/0

เมื่อมีของครบแล้วก็เริ่ม start vm กันได้ โดยใช้คำสั่ง

nova image-list

ดูว่า precise image id เป็นเท่าไร จากนั้นสั่ง boot ด้วยคำสั่ง

nova boot --image <image-id> --key-name mykey --flavor m1.small --security-groups default myprecise

ใช้คำสั่ง nova list ก็จะพบว่า vm ชื่อ myprecise กำลังเริ่ม start แล้ว เมื่อเข้าสู่สถานะ running ก็สามารถ ssh เข้าไปได้ อ้อ ก่อนอื่นกำหนด Floating IP ให้ VM เสียก่อน โดยใช้คำสั่ง

nova add-floating-ip myprecise 192.168.0.129

ใช้คำสั่ง nova list ดูว่า floating ip ไปเกาะกับ vm ของเราหรือยัง ถ้าเกาะเรียบร้อยแล้วก็สามารถ ssh เข้าไปได้โดยใช้คำสั่ง

ssh -i mykey.pem ubuntu@192.168.0.129

เอาแค่นี้ก่อน คุณสามารถใช้งาน OpenStack จาก Dashboard ได้นะครับ

สำหรับใครที่อยากใช้ OpenStack แบบจริงๆ จังๆ หรือต้องการทำ Private Cloud ใช้ในองค์กร แนะนำให้ไปเรียนกับ ClusterKit หรือ อ.อาณัติ หรือ ซื้อบริการ RedHat OpenStack, Ubuntu OpenStack ได้จากตัวแทนจำหน่ายใกล้บ้านท่านครับ :)

Gartner ประกาศเทรนด์เทคโนโลยีประจำปี 2013 และเป็นอย่างที่คาดไว้คือ Cloud Computing ไม่ได้เป็นเทรนด์อีกต่อไปแล้ว เนื่องจาก Cloud Computing กลายเป็นส่วนหนึ่งของเทคโนโลยีในปัจจุบัน ไม่จำเป็นต้องพูดถึงอีกต่อไป จากนี้จะเป็นการเชื่อมโยงข้อมูล ซอฟต์แวร์ต่างๆ ที่มีอยู่ในปัจจุบันเข้ากับ Cloud Computing ที่เป็นเทรนด์เทคโนลยีที่ยาวนานมากกว่า 4 ปี และเช่นเดียวกัน การรับเอาโอเพนซอร์สซอฟต์แวร์มาใช้หรือพัฒนาต่อยอดในการพัฒนาผลิตภัณฑ์และบริการก็ไม่ได้หยิบยกเอามาอ้างอิงอีกต่อไป เพราะโอเพนซอร์สกลายเป็นส่วนหนึ่งของเทคโนโลยีในปัจจุบันไปแล้วเช่นกัน Gartner เคยทำนายเกี่ยวกับเทรนด์เทคโนโลยีในแต่ละปีไว้อย่างน่าสนใจ มีนัยสำคัญ และสอดคล้องกับความเป็นไปในเทคโนโลยีในอีก 5-10 ปีข้างหน้า ดังนั้นองค์กรที่สนใจเกี่ยวกับเทคโนโลยีจะติดตามการายงานเทรนด์เทคโนโลยีในทุกๆ ปี บทความนี้เราจะมาระลึกอดีตถึงเทรนด์เกี่ยวข้องกับซอฟต์แวร์โอเพนซอร์ส เทรนด์ที่เกี่ยวข้องกับ Cloud Computing กัน

เทรนค์ที่เกี่ยวข้องกับซอฟต์แวร์โอเพนซอร์สเริ่มจาก Gartner ทำนายเกี่ยวกับการเติบโตของซอฟต์แวร์โอเพนซอร์สไว้ 3 แง่มุม (เมื่อประมาณ 5 ปีที่แล้ว)

  • องค์กรมีความรู้เกี่ยวกับซอฟต์แวร์โอเพนซอร์สมากขึ้น
  • องค์กรเริ่มรับเอาโอเพนซอร์สซอฟต์แวร์มาใช้ และพัฒนาต่อยอดมากขึ้น
  • นักพัฒนาซอฟต์แวร์โอเพนซอร์สหันมาใช้ IaaS มากขึ้น
  • โครงการซอฟต์แวร์โอเพนซอร์สที่เริ่มทำธุรกิจบน SaaS เริ่มมีการใช้สัญญาอนุญาติแบบ GNU/AGPL

และเทรนค์ที่เกี่ยวข้องกับ Cloud Computing มีหลากหลายแง่มุม (เมื่อประมาณ 4 ปีที่แล้ว)

  • Cloud Computing เริ่มเข้ามามีบทบาท
  • เกิดบริการ IaaS เพื่อรองรับการใช้งาน Virtual Infrastructure เกิดยุค Pay per Use
  • ธุรกิจซอฟต์แวร์เชิงบริการอย่าง SaaS เริ่มมีอนาคต
  • Mobile App เติบโตและสอดรับกับการเติบโตของ SaaS
  • เกิดบริการ Storage บน Cloud มากขึ้น
  • เกิดบริการ BI และเกี่ยวข้องกับ BIG Data บริการ IaaS และ SaaS
  • เกิดบริการ App Store บริการ SaaS

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

  • Linux Server (Debian, Slackware, RedHat, CentOS, Ubuntu etc)
  • Application Server (NFS, Samba, LDAP, Apache, MySQL, PostgreSQL, Perl, PHP etc)
  • Linux Desktop (RedHat, Mandrake, Fedora, Ubuntu)
  • Productivity Suite (OpenOffice.org, LibreOffice, Alfresco, Knowledge Tree)
  • Personal Publishing (Scribus) & Personal Graphic Tools (GIMP)
  • Cluster, High Avilability, HPC (Rock, Hartbeat, Hadoop)
  • Virtualizaion (QEMU, Xen, VirtualBox, KVM)
  • Virtualizaion Management Tools (Virt-manager, VirtualBox GUI, Boxes)
  • Distributed Storage นำไปสู่ Cloud Storage (Gluster, Cept)
  • Open Source Cloud Platform (Eucalyptus, OpenNebula, Cloud Stack, OpenStack, UEC etc)

สำหรับเทรนด์เทคโนโลยีข้างต้น ในปี 2013 ที่กำลังจะเข้ามาถึงนี้จะกลายเป็นเรื่องปกติ(และเก่า)ไปตามกาลเวลา หากท่านใดไม่ทันช่วงใดในรอบ 4-5 ปีที่ผ่านมา สามารถอ่านบทความและ How-to ย้อนหลังได้ในเว็บไซต์ http://thaiopensource.org กันได้