มาเล่น Ubuntu Core บน Google Compute Engine กันบ้าง ตามที่ Canonical ประกาศว่า Ubuntu Core ทำงานบน Cloud ได้ บน IoT Devices ก็ได้ แต่ Snappy เหมือนจะไม่มีอะไรให้เล่นเลย ครั้งนี้มาลองใช้งาน Ubuntu Core บน Google Compute Engine และติดตั้ง MQTT Broker เพื่อรองรับงาน Internet of Thing กันดูบ้าง จะได้รู้กันไปเลยว่า Ubuntu Core ทำได้ ตัวอย่างอาจจะแปลกไปสักหน่อย ครั้งหน้าจะแนะนำบน Raspberry Pi 2 B+ ก็แล้วกันครับ ครั้งนี้มาลองเล่นบน GCE กันก่อน สร้าง project บน Google Developer Console ให้เรียบร้อย

สำหรับท่านที่ยังไม่มี command line tools แนะนำให้ติดตั้งให้เรียบร้อย สำหรับ Ubuntu 14.04 ติดตั้งตามนี้ได้เลย

sudo apt-add-repository "http://archive.canonical.com/ubuntu partner"

sudo apt-get update

sudo apt-get install google-cloud-sdk

เมื่อติดตั้งเสร็จให้สั่ง authen เพื่อเข้าใช้งานผ่าน command line

gcloud auth login

browser จะเปิดขึ้นมาให้เรา login Google Account และขออนุญาติเข้าใช้งาน Google Compute Engine จากนั้นกลับมาที่ command line กำหนดค่า default ที่จะต้องใช้ ได้แก่ project-id, compute zone, compute region ดังนี้

gcloud config set project ubuntu-snappy01

gcloud config set compute/zone us-central1-f

gcloud config set compute/region us-central1

เพิ่ม ssh-key สำหรับใช้ ssh ไปยัง project บน GCE ดังนี้

gcloud compute project-info add-metadata \
--metadata-from-file sshKeys=~/.ssh/id_rsa.pub

จากนั้นสร้างไฟล์ cloud.cfg เขียน cloud config ลงไป เพื่อสั่งให้ snappy เปิดการใช้งาน ssh

#cloud-config
    snappy:
       ssh_enabled: True

จากนั้นหา ubuntu core image ที่เราจะใช้งาน

gcloud compute images list --no-standard-images --project ubuntu-snappy01

เราจะใช้ build ล่าสุดคือ ubuntu-core-devel-v20141215 จากนั้นสั่งสร้าง instance ได้เลยดังนี้

gcloud compute instances create \
snappy-test \
--image-project ubuntu-snappy \
--image ubuntu-core-devel-v20141215 \
--metadata-from-file user-data=cloud.cfg

เราจะได้สถานะของ instance และค่า ip address มา กลับไปดูที่ developer console มี instance เพิ่มขึ้นมาแล้วและพร้อมใช้งาน

ให้ ssh เข้าไปยัง instance ดังนี้

ssh -i ~/.ssh/id_rsa ubuntu@146.148.43.166

ลองหาอะไรมา deploy ดู

snappy search *

ช่วง Alpha มีตัวอย่างอยู่นิดหน่อย มาลองติดตั้ง MQTT Broker จะได้รู้ว่า Ubuntu Core ทำงานกับ Internet of Things ได้

sudo snappy install mosquitto-v135.willcooke

อยากรู้ว่าทำงานหรือยังลองตรวจสอบจาก netstat ดูได้

ลองทดสอบกับ MQTT Spy ดู

พบกว่าใช้งานได้แล้ว :)

Comments are closed.