日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
CentOS下安裝并配置OpenNebula具體方法

OpenNebula 是一款為云計算而打造的開源工具箱。它允許你和 Xen、KVM 或 VMware、ESX 一起建立和管理私有云, 同時還提供 Deltacloud 適配器與 Amazon EC2 相配合來管理混合云,本篇文章重點為大家講解一下CentOS下安裝并配置OpenNebula具體方法。

成都網(wǎng)站制作、做網(wǎng)站,成都做網(wǎng)站公司-創(chuàng)新互聯(lián)已向上千家企業(yè)提供了,網(wǎng)站設(shè)計,網(wǎng)站制作,網(wǎng)絡(luò)營銷等服務(wù)!設(shè)計與技術(shù)結(jié)合,多年網(wǎng)站推廣經(jīng)驗,合理的價格為您打造企業(yè)品質(zhì)網(wǎng)站。

以下的安裝過程在 VPSee 的兩臺裝有 CentOS 5.5 系統(tǒng)的服務(wù)器上完成,一臺服務(wù)器做 OpenNubula 前端(node00),另一臺服務(wù)器用來做節(jié)點(node01),搭建一個最小的 “云”,如果想擴展這個云的話,只需要逐步增加節(jié)點(node02, node03, …)就可以了。如果對其他類似的開源云計算平臺感興趣的話可以看看:在 Ubuntu 上安裝和配置 OpenStack Nova.

安裝和配置前端(Front-End)

增加 CentOS Karan 源:

# cd /etc/yum.repos.d
# wget http://centos.karan.org/kbsingh-CentOS-Extras.repo
# yum update

安裝 OpenNebula 需要的軟件包以及編譯 OpenNebula 源代碼所需的工具:

# yum install gcc gcc-c++ make openssl-devel flex bison

# yum install ruby ruby-devel ruby-docs ruby-ri ruby-irb ruby-rdoc
# yum install rubygems
# gem install nokogiri rake xmlparser

# yum install scons
# yum install xmlrpc-c xmlrpc-c-devel

CentOS 自帶的 sqlite 版本不行,需要下載和編譯 sqlite 3.6.17 版本:

# wget http://www.sqlite.org/sqlite-amalgamation-3.6.17.tar.gz
# tar xvzf sqlite-amalgamation-3.6.17.tar.gz
# cd sqlite-3.6.17/
# ./configure; make; make install

下載和編譯 opennebula 2.0.1 源碼包后,解壓、編譯和安裝:

# tar zxvf opennebula-2.0.1.tar.gz
# cd opennebula-2.0.1
# scons
# ./install.sh -d /srv/cloud/one

# ls /srv/cloud/one/
bin etc include lib share var

啟動 OpenNebula 前需要配置 ONE_AUTH 環(huán)境變量,這個環(huán)境變量從 $HOME/.one/one_auth 這個文件讀取,所以要先創(chuàng)建 one_auth 這個文件后再啟動 one(OpenNebula 服務(wù)程序):

# cd /root/
# mkdir .one
# cd .one/
# echo "oneadmin:password" > one_auth

# one start

OpenNebula 支持 KVM, Xen 和 VMware 三種虛擬技術(shù),我們還需要告訴 OpenNebula 我們想用哪種,并重啟 one 以便配置生效:

# vi /etc/one/oned.conf
...
IM_MAD = [
name = "im_xen",
executable = "one_im_ssh",
arguments = "xen" ]

VM_MAD = [
name = "vmm_xen",
executable = "one_vmm_ssh",
arguments = "xen",
default = "vmm_ssh/vmm_ssh_xen.conf",
type = "xen" ]
...

# one stop
# one start

安裝和配置節(jié)點(Compute Node)

需要在每個 node 上都安裝 Xen 或 KVM 的虛擬環(huán)境,具體請參考:在 CentOS 上安裝和配置 Xen 和 在 CentOS 上安裝和配置 KVM,還需要 ruby 運行環(huán)境:

# yum install ruby
交換 ssh Key

因為 OpenNebula Front 和 Nodes 之間是通過 SSH 通訊的,所以 front 和 nodes 之間要設(shè)置成 SSH 無密碼登錄避免 front 運行 node 上腳本或克隆鏡像的時候輸入密碼,首先在 front 和 nodes 上配置 sshd:

# vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes

# /etc/init.d/sshd restart
在 front (node00) 上創(chuàng)建 key 后拷貝到 node (node01):

# ssh-keygen -t rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub node01
在1個 node (node01) 上創(chuàng)建 key 后拷貝到 front (node00):

# ssh-keygen -t rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub node00
onehost
front 和 每個 node 都能無密碼 ssh 溝通后,就可以在 front 上 onehost create 命令來逐個加入 node,并用 onehost list 來查看是否創(chuàng)建成功:

# onehost create node01 im_xen vmm_xen tm_ssh

# onehost list
ID NAME CLUSTER RVM TCPU FCPU ACPU TMEM FMEM stat
1 node01 default 0 400 400 400 3.8G 383M on

如果執(zhí)行 onehost create 報錯,查看 oned.log 日志發(fā)現(xiàn) sudo: sorry, you must have a tty to run sudo 字樣,原因則是 OpenNebula 需要遠(yuǎn)程 ssh/sudo 執(zhí)行命令,而 CentOS 的 sudo 選項 requiretty 是默認(rèn)打開的,ssh 需要一個 tty 才能執(zhí)行,所以遠(yuǎn)程 sudo 就會出錯:

# onehost create node01 im_xen vmm_xen tm_ssh

# tail /var/log/one/oned.log
Tue Feb 22 11:08:58 2011 [InM][I]: command execution fail: 'if [ -x "/var/tmp/one/im/run_probes" ]; then /var/tmp/one/im/run_probes xen 172.16.39.111; else exit 42; fi'
Tue Feb 22 11:08:58 2011 [InM][I]: STDERR follows.
Tue Feb 22 11:08:58 2011 [InM][I]: sudo: sorry, you must have a tty to run sudo
Tue Feb 22 11:08:58 2011 [InM][I]: Error executing xen.rb
...

解決辦法就是關(guān)閉(注釋掉) requiretty 這行:

# chmod 600 /etc/sudoers# vi /etc/sudoers#Defaults requiretty

因為 VPSee 的這兩臺服務(wù)器使用了 HTTP 代理上網(wǎng),所以 OpenNebula 讀取了系統(tǒng)的 http_proxy 環(huán)境變量,在 sched.log 日志里發(fā)現(xiàn)了 HTTP response 錯誤,這時候需要關(guān)閉 http_proxy:

# cat /var/log/one/sched.logTue Feb 22 14:27:39 2011 [host][E]: Exception raised: Unable to transport XML to server and get XML response back. HTTP response: 504Tue Feb 22 14:27:39 2011 [POOL][E]: Could not retrieve pool info from ONE# unset http_proxyonevnet創(chuàng)建和編輯虛擬網(wǎng)絡(luò)配置文件,然后創(chuàng)建一個 OpenNebula 虛擬網(wǎng)絡(luò):# vi small_network.netNAME = "Small network"TYPE = FIXEDBRIDGE = br0LEASES = [ ip="192.168.0.5"]LEASES = [ IP="192.168.0.6"]LEASES = [ IP="192.168.0.7"]# onevnet create small_network.net# onevnet listID USER NAME TYPE BRIDGE P #LEASES0 oneadmin Small network Fixed br0 N 0onevm

創(chuàng)建和編輯虛擬機的啟動配置文件,這里的 centos.5.5.x86.img 可以從 http://stacklet.com/ 下載(收費)或者自己利用 Xen 工具創(chuàng)建一個:

# wget http://stacklet.com/sites/default/files/centos/
centos.5.5.x86.img.tar.bz2
# tar jxvf centos.5.5.x86.img.tar.bz2
# mv centos.5.5.x86.img /srv/cloud/one/var/images/

# vi centos.one
NAME = centos
CPU = 1
MEMORY = 256

DISK = [
source = "/srv/cloud/one/var/images/centos.5.5.x86.img",
target = "sda1",
clone = "yes",
readonly = "no" ]

NIC = [ MAC = "00:16:3E:00:02:64", bridge = xenbr0 ]

OS = [ bootloader = "/usr/bin/pygrub" ]

用 onevm create 命令啟動上面的 VM 配置文件,就會在 node01 上創(chuàng)建一個虛擬機,用 onevm list 查看會看到 prol 狀態(tài),表示正在創(chuàng)建過程中,創(chuàng)建完畢后狀態(tài)會變成 runn:

# onevm create centos.one

# onevm list
ID USER NAME STAT CPU MEM hostname time
1 oneadmin centos prol 0 0K node01 00 00:09:09

# onevm list
ID USER NAME STAT CPU MEM HOSTNAME TIME
1 oneadmin centos runn 0 0K node01 00 00:22:17

就這樣,我們在 node00 (front) 和 node01 (node) 這兩臺服務(wù)器上部署了一個最小的云,并且在 node01 上運行了一個基于 Xen 的虛擬機實例。


網(wǎng)頁題目:CentOS下安裝并配置OpenNebula具體方法
鏈接URL:http://www.dlmjj.cn/article/dhjipsi.html