實作五: Eucalyptus 安裝
【前言】
- 小提醒
- 確認無任何的 VM 再執行
- 確定 pcXXX 和 pcYYY 的 /etc/hosts 有彼此的資訊
- Front-end、Node 和 Client 的時鐘需同步 (可使用 sudo ntpdate time.stdtime.gov.tw 來校正時間)
- 防火牆需允許 8443、8773、8774(Front-end) 和 8775(Node) (若是要讓防火牆外的 administrator/user使用時,可請網管開啟這些 port)
- 正確的 locales (可用 dpkg-reconfigure locales 選擇正確的語系)
- Eucalyptus 安裝和執行需由 root 執行 (只有 root 可以控制 Eucalyptus)
- 若是提供給外面的使用者註冊,需設定好管理者的 Mail Agent
- 軟體清單:
OS | Debian GNU/Linux 5.0.3 (lenny) |
Kernel (support Xen) | 2.6.26-amd64 |
Xen | 3.2 |
Eucalyptus | 1.5.2 |
NVIDIA_Driver | Linux x64 (AMD64/EM64T) Ver.190.42 |
【Step 0: 流程】
- 本教學方便學員,使用 Eucalyptus 提供的套件來簡化安裝流程
- pcXXX 作為 Eucalyptus Server,pcYYY作為 Eucalyptus Node
【Step 1:設定 Eucalyptus 套件庫】
- pcXXX 和 pcYYY 安裝 Eucalyptus 相依的套件
$ su root -c 'echo deb http://debian.osuosl.org/debian lenny non-free >> /etc/apt/sources.list' $ sudo aptitude update $ sudo aptitude -y install ca-certificates sun-java6-jre $ sudo mkdir -p /etc/ssl/certs/java/ $ sudo ln -sf /etc/java-6-sun/security/cacerts /etc/ssl/certs/java/cacerts
- 下載 Eucalyptus 套件 & 新增 Eucalyptus 套件庫
(因下載套件需要一些時間,已先幫學員加入套件庫了,可省略此步驟)$ su root # cd # wget http://eucalyptussoftware.com/downloads/releases/eucalyptus-1.5.2-lenny-amd64.tar.gz # tar zxvf eucalyptus-1.5.2-lenny-amd64.tar.gz # cd eucalyptus-1.5.2-lenny-amd64 # echo deb file://${PWD} ./ >> /etc/apt/sources.list [CTRL + D]
- 使用 aptitude search 指令搜尋 Eucalyptus 有哪些套件
$ sudo aptitude update $ sudo aptitude search eucalyptus p eucalyptus-cc - Elastic Utility Computing Architecture - Cluster controller p eucalyptus-cloud - Elastic Utility Computing Architecture - Cloud controller p eucalyptus-common - Elastic Utility Computing Architecture - Common files p eucalyptus-gl - Elastic Utility Computing Architecture - Logging service p eucalyptus-javadeps - Eucalyptus Java libraries dependencies p eucalyptus-nc - Elastic Utility Computing Architecture - Node controller
【練習時間】
- 重複以上動作到你的 pcYYY (slave)
- 或是到 slave 下載以下 script 來簡化以上流程
$ scp 192.168.1.254:~/setup_Euca.sh . $ sudo ./setup_Euca.sh
【Step 2:安裝 CLoud Controller/Cluster? Controller/Node? Controller 元件】
- 想一下我們的架構設計:
- pcXXX(Master) - 安裝 CLoud Controller 和 Cluster Controller
$ sudo aptitude update $ sudo aptitude -y install eucalyptus-cloud eucalyptus-cc dhcp3-server $ sudo passwd eucalyptus
- pcYYY(Slave) - 安裝 Node Controller
$ sudo aptitude update $ sudo aptitude -y install eucalyptus-nc $ sudo passwd eucalyptus
- pcXXX(Master) - 安裝 CLoud Controller 和 Cluster Controller
【Step 3:設定 Eucalyptus 的網路架構】
- 設定也分為兩部份 pcXXX 和 pcYYY 的設定 (設定檔的位置接放於 /etc/eucalyptus/eucalyptus.conf)
- Eucalyptus 目前只支援 Xen 的 Bridge 架構,可分為4種網路架構,本範例使用 STATIC MODE (若是對其他網路架構有性可參考此篇)
- pcXXX
$ sudo gedit /etc/eucalyptus/eucalyptus.conf
132 VNET_INTERFACE="eth0" 139 #VNET_BRIDGE="eth0" 181 #VNET_MODE="SYSTEM" 193 VNET_MODE="STATIC" 194 VNET_SUBNET="192.168.1.0" 195 VNET_NETMASK="255.255.255.0" 196 VNET_BROADCAST="192.168.1.255" 197 VNET_ROUTER="192.168.1.254" 198 VNET_DNS="140.110.16.1" 199 VNET_MACMAP="00:16:00:00:00:VM1=192.168.1.VM1 00:16:00:00:00:VM2=192.168.1.VM2 00:16:00:00:00:VM3=192.168.1.VM3"
- pcYYY
$ sudo gedit /etc/eucalyptus/eucalyptus.conf
132 VNET_INTERFACE="peth0" 139 VNET_BRIDGE="eth0" 181 #VNET_MODE="SYSTEM" 193 VNET_MODE="STATIC"
【Step 4: 設定 Eucalyptus Cluster】
- 在我們作為 Server (pcXXX) 的那台新增 Cluster Name
- euca_conf -addcluster <clustername> <clusterhost>
$ sudo euca_conf -addcluster Euca_Cluster pcXXX
- euca_conf -addcluster <clustername> <clusterhost>
- 新增 Nodes (一樣在 pcXXX 上)
- euca_conf -nodes "<nodehost1> ... <nodehostN>"
$ sudo euca_conf -nodes "pcYYY" $ sudo euca_conf -synckeys
- euca_conf -nodes "<nodehost1> ... <nodehostN>"
【Step 5:啟動 Eucalyptus】
- pcXXX 啟動 CLoud Controller & Cluster Controller (可用 start/restart/stop)
$ sudo /etc/init.d/eucalyptus-cloud restart $ sudo /etc/init.d/eucalyptus-cc restart
- pcYYY 啟動 Node Controller
$ sudo /etc/init.d/eucalyptus-nc restart
- 測試 CLoud Controller 網頁是否啟動 https://localhost:8443
【討論 & 休息】
Last modified 14 years ago
Last modified on Oct 5, 2010, 10:39:47 AM
Attachments (1)
- login.png (34.5 KB) - added by rock 15 years ago.
Download all attachments as: .zip