วันพุธที่ 14 สิงหาคม พ.ศ. 2556

มาเล่น Juju กัน

Juju เป็นเครื่องมือสำหรับ Deploy Service หรือ Application บน Cloud Provider ใดๆ ก็ได้ ซึ่งตอนนี้รองรับทั้ง AWS, HP Cloud, OpenStack และ Azure นอกจากนี้ยังรองรับการทำงานบน MAAS (Metal as a Service) ด้วย Juju สามารถติดตั้ง Ubuntu, ติดตั้ง Software, Config Service ต่างๆ แถมด้วยการบริหารจัดการ Serice นั้นๆ ได้ด้วย เช่นการทำ Scaling เป็นต้น อาจจะเข้าใจยากไปหน่อยลองดูวิดีโอข้างล่างได้ครับ





วิธีการติดตั้ง



หากไม่มี ssh key ก็สร้างขึ้นมาก่อนด้วยคำสั่ง



ssh-keygen -t rsa -b 2048



จากนั้นติดตั้ง Juju จาก PPA ดังนี้



sudo add-apt-repository ppa:juju/stable



sudo apt-get update && sudo apt-get install juju-core



เริ่มใช้งานกัน ผมยกตัวอย่างการ Deploy Application บน Amazon AWS (https://juju.ubuntu.com/get-started/amazon/) ก็แล้วกันนะครับ ให้ Juju สร้าง config ไฟล์ขึ้นมาอัตโนมัติโดยใช้คำสั่ง



juju init -w



จากนั้นแก้ไฟล์ ~/.juju/environments.yaml แก้ตรง access-key และ secret-key นะครับ ทั้ง 2 ค่านี้จะอยู่ตรง AWS Account (http://aws.amazon.com/account) คลิกที่ "Security Credentials" และคลิกที่ "Access Credentials" เมื่อแก้ไขไฟล์ config แล้ว จะได้หน้าตาแบบนี้



default: amazon
environments:
amazon:
type: ec2
access-key: YOUR-ACCESS-KEY-GOES-HERE
secret-key: YOUR-SECRET-KEY-GOES-HERE
control-bucket: juju-8dd7debec38abb42c6ed14018d09f966
admin-secret: 81a1e7429e6847c4k671fda7591246594
default-series: precise



หลังจากแก้ไขเรียบร้อยแล้วให้ลองทดสอบดู โดยใช้คำสั่ง



juju bootstrap



คำสั่งนี้จะไปสร้าง instance โดยใช้ ami ที่เป็น Ubuntu 12.04 LTS บน EC2 ให้อัตโนมัติ เขาจะสร้าง instance ที่ us-east-1 นะครับ ใครไม่ชอบก็เปลี่ยน zone ได้ เทคนิคง่ายถ้าอยากให้ Juju แสดงการทำงานในแต่ละคำสั่งให้ใส่ -v ต่อท้ายครับ สำหรับการตรวจสอบสถานะ ของ services ที่ run อยู่บน AWS ให้ใช้คำสั่ง



juju status



คำสั่งนี้จะรอนานสักหน่อยประมาณ 2-3 นาทีได้ คุณก็จะได้ข้อมูลของ instance ที่ deploy bootstrap ไป ทีนี้ลองมา deploy application กันบ้าง มาลอง deploy mediawiki กัน หรือใครอยากลอง deploy application อื่นๆ ให้เข้าไปดูที่ jujucharm.com ได้ครับ อ่ะ มาลอง deploy mediawiki กัน



juju deploy mediawiki
juju deploy mysql



ถ้าคุณดู juju status ตอนนี้คุณจะได้ instance 3 อัน คือ bootstrap, wordpress และ mysql จากนั้นสั่ง add releation ระหว่าง mediawiki และ mysql ขั้นตอนนี้เป็นการ config mediawiki และ mysql



juju add-relation mysql:db mediawiki:db



จากนั้นสั่ง juju expose เพื่อตั้งค่า Security Group เพื่อกำหนด port ที่ต้องใช้งานและปิด port ที่ไม่จำเป็น



juju expose mediawiki



จากนั้นก็ดู public dns จาก juju status เท่านี้ก็ได้ mediawiki ใช้แล้ว



วิดีโอ Getting Start เผื่ออ่านแล้วไม่ค่อยเข้าใจ




วันพุธที่ 31 กรกฎาคม พ.ศ. 2556

Docker Linux Container เล็ก บาง เบา

เมื่ออาทิตย์ที่แล้วเข้าไปใช้งาน dotCloud พบว่า มีการเปิดตัว Docker.io เท่าที่ดูเหมือน dotCloud จะค่อยๆ ปล่อยของเล่นส่วนตัวออกมาเรื่อยๆ เช่น Hipache เป็นต้น Docker พัฒนาจาก LXC เป็น Linux Container ตัวที่เล็กและเบา จุดเด่นของ Docker คือสามารถทำงานในระดับ process ได้ แยก process โดยใช้ namespace ทำให้คุณสามารถเอาไปประกอบ (ไม่ใช่เอามาใช้แล้วจะกลายเป็น dotCloud นะจ๊ะ) เป็น PaaS ได้ง่ายอย่าง dotCloud เป็นต้น ใครงงๆ ก็ดู รายละเอียดจาก Slideshare ข้างล่าง หรือใครอยากอ่านแบบยาวๆ ก็อ่านเรื่องราว ได้ครับ





Docker ใจดีนอกจากจะมีเครื่องมืออย่าง Linux Container มาให้ใช้ ยังมี API และ Image Repository ที่ชื่อ Docker Index มาให้ใช้ด้วย ซึ่ง Docker Index สามารถดึงเอา Container Image มาใช้ได้ และยังสามารถแชร์ Container ของคุณได้ด้วย น่าสนุกมั๊ย สำหรับท่านที่สนใจลองดูตามลิงค์ข้างล่างครับ





Jaff Lindsay เอา Docker ไปใช้งานในการทำ PaaS ขนากเล็กในโครงการ Dokku ซึ่งจำลอง Heroku ขึ้นมา สามารถทำงานได้ทั้ง 3 Platform คือ Ruby, Java และ Node.js


วันจันทร์ที่ 29 กรกฎาคม พ.ศ. 2556

มาดู Commit Log แบบ StarWars กัน

คุณมะระแนะนำมาเกี่ยวกับ StarLogs ที่เอา Commit Log จาก GitHub มาแสดงผลเป็น Animation Title สไตล์ StarWars ผมล่ะชอบเลย ผมว่ามันดูสนุกดีล่ะ ใครนึกภาพไม่ออกก็เป็นแบบรูปข้างล่างครับ





วิธีการเล่นก็ง่ายๆ ไปที่เว็บ http://starlogs.net แล้วใส่ URL ของ Project ที่อยู่ใน GitHub ลงไป เท่านี้คุณก็ได้ Animation Title สไตล์ StarWars แต่เนื้อหาเป็น Commit Log แล้ว สนุกมากมายครับ ใครอยากลองเล่นไปลองเล่นกันได้


แปลง smbpasswd เป็น tdbsam

วันนี้มีคนมาถามเรื่อง SAMBA ทั้งเรื่อง Migration และการใช้งาน ผมตกยุคเรื่อง SAMBA มานานมาก ไม่ได้แตะเลยก็ว่าได้ เดี๋ยวนี้เขามี tdbsam ก็เลยงงๆ เอาเป็นว่าตามไม่ทันก็แล้วกัน ปัญหาคือจะ migrate จาก smbpasswd มาเป็น tdbsam ได้ยังไง วิธีการง่ายๆ ให้เลือกก่อนว่าจะใช้อะไร อยากใช้แบบเดิมๆ ก็ config ในไฟล์ smb.conf ให้เรียกใช้ smbpasswd ถ้าอยากได้ของใหม่แบบ tdbsam ก็ต้องแปลงร่างกันสักหน่อย อ้อลืมไป tdbsam เหมาะสำหรับ user ไม่เกิน 200 คนนะครับ



วิธีการแปลงใช้ pbedit แปลงจาก smbpasswd ไปเป็น passdb.tdb ดังนี้



pdbedit -i smbpasswd:/etc/samba/smbpasswd -e tdbsam:/etc/samba/passdb.tdb



อ้อ อย่าลืมแก้ smb.conf ให้เรียกใช้ tdbsam ด้วยนะครับ สำหรับองค์กรที่มี user มากกว่า 30 คน แนะนำใช้ LDAP ไปเลยจะสะดวกมากกว่าสามารถเอาไปผูกกับบริการอื่นๆ ได้ด้วยครับ :)


วันศุกร์ที่ 26 กรกฎาคม พ.ศ. 2556

มาติดตั้ง LibreOffice 4.1 กัน

LibreOffice 4.1 ออกมาให้เล่นกันแล้วครับ และตามคำเรียกร้องก็ต้องมาแนะนำวิธีการติดตั้งกันสักหน่อย วิธีการมีดังนี้




  1. สำหรับท่านที่ใช้ LibreOffice ที่มาพร้อมกับ Ubuntu ให้สั่ง Uninstall ออกก่อนครับ

  2. ดาวน์โหลด LibreOffice 4.1 ได้ที่ libreoffice.org

  3. แตกไฟล์ LibreOffice ที่ได้มา ด้วยคำสั่ง tar zxvf LibreOffice4.1.0Linuxx86-64deb.tar.gz

  4. เปลี่ยนไปที่ dir LibreOffice4.1.0.4Linuxx86-64deb/DEBS ด้วยคำสั่ง cd LibreOffice4.1.0.4Linuxx86-64deb/DEBS

  5. สั่งติดตั้ง ด้วยคำสั่ง sudo dpkg -i *.deb



เท่านี้ก็ได้ LibreOffice 4.1 ใช้กันแล้ว :)


อัพเกรด Galaxy Nexus เป็น Jelly Bean 4.3

เนื่องจากรอ OTA ไม่ไหวก็เลยอัพเกรดด้วยตัวเอง เครื่องมือที่ต้องมีได้แก่




  1. Android SDK

  2. สาย USB

  3. Image ที่ตรงกับเครื่องของคุณ ของผมเป็น Yukju



วิธีการง่ายๆ มีดังนี้




  1. ตั้งค่า USB Debuging Mode ก่อน ถ้าหาเมนู Developer Options ไม่เจอ ให้ไปกดที่ Build Number ในหน้า About Phone 8 ครั้ง เดี๋ยวเมนูมันจะโผล่อออกมา

  2. ใช้คำสั่ง adb reboot bootloader โทรศัพท์จะ reboot แล้วแสดงหน้าจอมี Android นอนหงายท้องอยู่

  3. ใช้คำสั่ง fastboot oem unlock (ถ้าเป็น Linux ต้องใช้สิทธิ์ root ในการใช้สำสั่งนี้) หน้าจอจะขึ้นมาถามว่าต้องการ unlock bootloader หรือไม่ ตอบ Yes เลยคับ

  4. แตกไฟล์ที่ดาวน์โหลดมา แล้ว run script ชื่อ flash-all.sh แล้วนั่งรอ :) เท่านี้ก็ได้ Jelly Bean 4.3 แล้ว

  5. ใช้คำสั่ง adb reboot bootloader จากนั้นสั่ง lock bootloader โดยใช้คำสั่ง fastboot oem lock


วันจันทร์ที่ 15 กรกฎาคม พ.ศ. 2556

MongoDB as a Service รายแรกของประเทศไทย

Thai MongoDB เปิดบริการ MongoDB as a Service รายแรกของประเทศไทย ให้บริการ MongoDB บน SSD Serverv ให้ความเร็วในการการเข้าถึงข้อมูลได้รวดเร็ว พร้อมบริการสำรองข้อมูลรายวัน (Daily Backup) และสามารถเรียกคืนข้อมูลได้คลอดเวลา (Restore) บริการพิเศษสำหรับผู้ที่ต้องการแยกผู้ใช้บริการออกจากกันด้วย Dedicate MongoDB Instance ไม่ต้องแชร์กับผู้ใช้รายอื่น และบริการช่วยเหลือเมื่อเกิดปัญหาในการใช้งานระบบ



บริการดีๆ แบบนี้ห้ามพลาด ติดต่อสอบถามรายละเอียดได้ที่ Thai MongoDB