[[PageOutline]]
{{{
#!html
實作二: Xen 虛擬化叢集安裝操作
}}}
----
= 【前言】 =
* '''''安裝前的小叮嚀__'''''
* ONE 只需安裝在 '''''node01''''' 即可 (ONE 的指令都在 node01 上執行)
* node01 為 '''''ONE Server''''' 和 '''''NFS Server'''''
* 此練習不用考慮'''''網路架構和IP分配''''' (網路架構採用 Bridge 和 IP 交由 DRBL Server 動態分配)
* 共享的 Storagr 採用 '''''NFS''''' (才能做 Migrate 和 Live Migrate )
----
= 【Step 1: 安裝需要的套件】 =
{{{
$ sudo aptitude install ruby sqlite3 libsqlite3-0 libsqlite3-dev libsqlite3-ruby libxmlrpc-c3 libxmlrpc-c3-dev scons g++ flex bison
}}}
----
= 【Step 2: 下載並安裝One】 =
### 在node01 上執行 (ONE 只需安裝在 node01 上) ###
{{{
$ wget http://opennebula.org/files/one-1.2.0.tar.gz
$ tar zxvf one-1.2.0.tar.gz
$ cd one-1.2.0
$ scons
$ sudo mkdir /home/one
}}}
### 配置 ONE 環境變數 ###
{{{
$ vim ~/.profile
}}}
{{{
export ONE_LOCATION=/home/one
export ONE_XMLRPC=http://localhost:2633/RPC2
export PATH=$PATH:$ONE_LOCATION/bin
}}}
{{{
$ source ~/.profile
$ sudo ./install.sh -d /home/one
}}}
----
= 【Step 3: 編輯 ONE 設定檔】 =
### 在 node01 上編輯,將 160~164 行註解掉,打開 169~173 行 ###
{{{
$ cd /home/one
}}}
{{{
$ vim etc/oned.conf
}}}
23 VM_POLLING_INTERVAL = 1
160 #TM_MAD = [
161 #name = "tm_ssh",
162 #executable = "one_tm",
163 #arguments = "tm_ssh/tm_ssh.conf",
164 #default = "tm_ssh/tm_ssh.conf" ]
169 TM_MAD = [
170 name = "tm_nfs",
171 executable = "one_tm",
172 arguments = "tm_ssh/tm_nfs.conf",
173 default = "tm_ssh/tm_nfs.conf" ]
}}}
----
= 【Step 4: 啟動 ONE】 =
* 啟動 ONE 前的小叮嚀
* 確認 node01 和 node02 已執行 xend start
* 兩台都可讓 root 自動登入
* 只需在 node01 啟動 ONE 即可
### 在 node01 上執行 ###
{{{
$ one start
}}}
----
= 【Step 5: 新增 node01 和 node02 到 ONE Pool】 =
### 在 node01 上執行 ###
{{{
$ onehost add node01 im_xen vmm_xen tm_nfs
$ onehost add node02 im_xen vmm_xen tm_nfs
$ sudo onehost list
}}}
----
= 【Step 6: 使用 ONE 來開啟 VM】 =
### 在 node01 上執行 ###
### 編輯 xen01 的設定檔 ###
{{{
$ vim /home/domains/xen01.one
}}}
{{{
NAME = xen01
CPU = 1
MEMORY = 156
OS = [ kernel = /boot/vmlinuz-2.6.22.9-rock,
initrd = /boot/initrd.img-2.6.22.9-rock,
root = sda2,
kernel_cmd = "ro xencons=tty console=tty1"]
DISK = [ source = /home/domains/xen01/disk.img,
clone = no,
target = sda2,
readonly = no]
DISK = [ type = swap,
size = 512,
target = "sda1",
readonly = "no" ]
NIC = [mac=""]
}}}
### 使用 ONE 來開啟 xen01 ###
{{{
$ sudo onevm create xen01.one
$ sudo onevm deploy xen01 node02
$ sudo onevm list
}}}
* 練習:請在開啟一個虛擬機器名為 xen02
* 法一:複製 xen01 的 image,再修改參數
* 法二:使用 xen-create-image 指令
----