วันพุธที่ 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 เผื่ออ่านแล้วไม่ค่อยเข้าใจ




ไม่มีความคิดเห็น:

แสดงความคิดเห็น