| 7 | | = 【前言】 = |
| 8 | | * '''''安裝前的小叮嚀__''''' |
| 9 | | * ONE 只需安裝在 '''''node01''''' 即可 (ONE 的指令都在 node01 上執行) |
| 10 | | * node01 為 '''''ONE Server''''' 和 '''''NFS Server''''' |
| 11 | | * 此練習不用考慮'''''網路架構和IP分配''''' (網路架構採用 Bridge 和 IP 交由 DRBL Server 動態分配) |
| 12 | | * 共享的 Storagr 採用 '''''NFS''''' (才能做 Migrate 和 Live Migrate ) |
| 13 | | ---- |
| 14 | | = 【Step 1: 安裝需要的套件】 = |
| 15 | | {{{ |
| 16 | | $ sudo aptitude install ruby sqlite3 libsqlite3-0 libsqlite3-dev libsqlite3-ruby libxmlrpc-c3 libxmlrpc-c3-dev scons g++ flex bison |
| 17 | | }}} |
| 18 | | ---- |
| 19 | | = 【Step 2: 下載並安裝One】 = |
| 20 | | {{{ |
| 21 | | ### 在node01 上執行 (ONE 只需安裝在 node01 上) ### |
| 22 | | $ wget http://opennebula.org/files/one-1.2.0.tar.gz |
| 23 | | $ tar zxvf one-1.2.0.tar.gz |
| 24 | | $ cd one-1.2.0 |
| 25 | | $ scons |
| 26 | | $ sudo mkdir /home/one |
| 27 | | |
| 28 | | ### 配置 ONE 環境變數 ### |
| 29 | | $ vim ~/.profile |
| 30 | | export ONE_LOCATION=/home/one |
| 31 | | export ONE_XMLRPC=http://localhost:2633/RPC2 |
| 32 | | export PATH=$PATH:$ONE_LOCATION/bin |
| 33 | | $ source ~/.profile |
| 34 | | |
| 35 | | $ sudo ./install.sh -d /home/one |
| 36 | | }}} |
| 37 | | ---- |
| 38 | | = 【Step 3: 編輯 ONE 設定檔】 = |
| 39 | | {{{ |
| 40 | | ### 在 node01 上編輯,將 160~164 行註解掉,打開 169~173 行 ### |
| 41 | | $ cd /home/one |
| 42 | | $ vim etc/oned.conf |
| 43 | | 23 VM_POLLING_INTERVAL = 1 |
| 44 | | 160 #TM_MAD = [ |
| 45 | | 161 #name = "tm_ssh", |
| 46 | | 162 #executable = "one_tm", |
| 47 | | 163 #arguments = "tm_ssh/tm_ssh.conf", |
| 48 | | 164 #default = "tm_ssh/tm_ssh.conf" ] |
| 49 | | |
| 50 | | 169 TM_MAD = [ |
| 51 | | 170 name = "tm_nfs", |
| 52 | | 171 executable = "one_tm", |
| 53 | | 172 arguments = "tm_ssh/tm_nfs.conf", |
| 54 | | 173 default = "tm_ssh/tm_nfs.conf" ] |
| 55 | | }}} |
| 56 | | ---- |
| 57 | | = 【Step 4: 啟動 ONE】 = |
| 58 | | * 啟動 ONE 前的小叮嚀 |
| 59 | | * 確認 node01 和 node02 已執行 xend start |
| 60 | | * 兩台都可讓 root 自動登入 |
| 61 | | * 只需在 node01 啟動 ONE 即可 |
| 62 | | {{{ |
| 63 | | ### 在 node01 上執行 ### |
| 64 | | $ one start |
| 65 | | }}} |
| 66 | | ---- |
| 67 | | = 【Step 5: 新增 node01 和 node02 到 ONE Pool】 = |
| 68 | | {{{ |
| 69 | | ### 在 node01 上執行 ### |
| 70 | | $ onehost add node01 im_xen vmm_xen tm_nfs |
| 71 | | $ onehost add node02 im_xen vmm_xen tm_nfs |
| 72 | | |
| 73 | | $ sudo onehost list |
| 74 | | }}} |
| 75 | | ---- |
| 76 | | = 【Step 6: 使用 ONE 來開啟 VM】 = |
| 77 | | {{{ |
| 78 | | ### 在 node01 上執行 ### |
| 79 | | ### 編輯 xen01 的設定檔 ### |
| 80 | | $ vim /home/domains/xen01.one |
| 81 | | NAME = xen01 |
| 82 | | CPU = 1 |
| 83 | | MEMORY = 156 |
| 84 | | OS = [ kernel = /boot/vmlinuz-2.6.22.9-rock, |
| 85 | | initrd = /boot/initrd.img-2.6.22.9-rock, |
| 86 | | root = sda2, |
| 87 | | kernel_cmd = "ro xencons=tty console=tty1"] |
| 88 | | DISK = [ source = /home/domains/xen01/disk.img, |
| 89 | | clone = no, |
| 90 | | target = sda2, |
| 91 | | readonly = no] |
| 92 | | DISK = [ type = swap, |
| 93 | | size = 512, |
| 94 | | target = "sda1", |
| 95 | | readonly = "no" ] |
| 96 | | NIC = [mac=""] |
| 97 | | |
| 98 | | ### 使用 ONE 來開啟 xen01 ### |
| 99 | | $ sudo onevm create xen01.one |
| 100 | | $ sudo onevm deploy xen01 node02 |
| 101 | | |
| 102 | | $ sudo onevm list |
| 103 | | }}} |
| 104 | | * 練習:請在開啟一個虛擬機器名為 xen02 |
| 105 | | * 法一:複製 xen01 的 image,再修改參數 |
| 106 | | * 法二:使用 xen-create-image 指令 |