1 Juju介紹:
1.1 Juju是一個open source的雲端環境上管理軟體的工具。
1.2 Juju透過一種叫做「charms」的指令集來快速部署、整合和擴充軟體到雲端運算環境上。
1.3 Juju與Ubuntu都是由 Canonical Ltd.這家公司所開發。
2 Juju Charms之介紹:
2.1 Juju Charms是一連串YAML檔案的集合,只要使用者下載了所需要的Juju Charm,許多如軟體安裝手續、部屬程序、啟動/暫停服務、或是設定Charm與Charm之間的對應關係、Charm的升級、擴充等等複雜的程序,都可以用簡單的指令所取代。
2.2 因為使用Charm這樣建置的標準程序,所以開發人員使用 charms 建置的環境就可以直接給維運人員,透過 charms,維運人員就可以很容易地將開發環境部署到正式的營運環境中。
2.3 Juju Charms可以由任何ubuntu作業系統支援之程式語言撰寫,如bash, python, perl, php等等,且任何人皆可上傳自己設計的Charm到Charm store。
3 Charm Store
3.1 Charm開發者可以將自己開發的Charm或是Charm Bundles上傳至Charm Store供其他人下載或是修改。
4 Juju Client and Environments:
4.1 Juju主要有兩個元件:client跟bootstrap node。
4.2 目前可執行Client的環境包含Ubuntu, Mac and Windows。當安裝了Juju Client後,該client可於單點控制一個或多個雲環境,如Amazon Web Services, HP Cloud Services, Microsoft Windows Azure, 以及OpenStack等。
心得建議
1. Juju 的特性是可以在一個單點作業環境經由簡單的指令進行VM的新增/刪除,以及其上軟體的部署,適合時常需進行重複部署工作之維運人員,若可導入hicloud內部使用,應可節省許多人力與時間。
2. 目前Juju尚無支援hicloud,建議請TL研擬如何讓Juju能與hicloud界接,可提高hicloud之曝光程度。
3. 許多客戶可能於hicloud CaaS/VPC申請了VM後,有部建服務的困難,如架設網站、連結資料庫等。若能夠將這些動作寫成相對應的Charm,供客戶下載,則可大幅提升客戶使用hicloud之意願。
簡單應用:如何再AWS上架設WordPress網站
1 安裝Juju client於本機(OS: ubuntu12.04)。
2 修改environments.yaml檔案,選擇要產生instance於AWS的哪個Region(ex: us-west-1),並輸入於AWS帳號所產生之key pair。
3 由command line於本機下指令如下,並同時顯示EC2 console變化(參見圖示):
Juju bootstrap (會先產生了一個instance為Juju bootstrap node) juju deploy wordpress juju deploy mysql juju add-relation wordpress mysql
(上述指令多產生了兩個instance跑wordpress與mysql服務,並且產生關聯)
juju expose wordpress(現在可透過54.219.143.14連到WordPress網站) http://ec2-54-219-144-157.us-west-1.compute.amazonaws.com/wp-admin/install.php juju destroy-environment –e amazon (demo完成,經由一個指令destroy amazon上部建的環境,三台instances同時被terminate了)。