opennebula搭建之初嘗試

1.opennebula簡介python

OpenNebula是一款爲雲計算而打造的開源工具箱。它容許你與Xen,KVM或VMware ESX一塊兒創建和管理私有云,同時還提供Deltacloud適配器與Amazon EC2相配合來管理混合雲。mysql

目前可支持XEN、KVM和VMware,以及實時存取EC2和 ElasticHosts,它也支持印象檔的傳輸、複製和虛擬網絡管理網絡。c++

OpenNebula能夠構建私有云、混合雲、公開雲。web

Opennebula整體架構圖:sql

關於opennebula更加詳細介紹請參考:http://www.open-open.com/news/view/1e4272e數據庫

2.opennebula的搭建vim

環境:Centos6.4 x86_64瀏覽器

須要源碼包:ruby-2.0.0-p247.tar.gz    opennebula-4.2.0.tar.gzruby

控制節點主機IP:192.168.0.127bash

計算節點主機IP:192.168.0.204

(1)在控制節點和計算節點主機上:


建立oneadmin用戶和屬組,而且設置oneadmin用戶的密碼:

groupadd -g 600 oneadmin

useradd -u 600 -g oneadmin oneadmin


設置oneadmin用戶的密碼(這裏設爲:oneadmin):

passwd oneadmin


配置oneadmin用戶,使其具備sudo權限:

vim /etc/sudoers    

#在原來的root用戶下,增長以下一行

oneadmin ALL=(ALL) NOPASSWD: ALL

#註釋掉

#Defaults    requiretty

(2)配置控制節點和計算節點之間的互信,即ssh不要密碼便可互相通訊:

# su - oneadmin

$ssh-keygen -t rsa               #出現提示一路回車便可

此時在.ssh目錄下生成兩個文件,即公鑰和私鑰:


$ cat .ssh/id_dsa.pub >> .ssh/authorized_keys

$ chmod 644 ~/.ssh/authorized_keys

$ chmod 755 ~/.ssh

$vi ~/.ssh/config

StrictHostKeyChecking no

$ chmod 600 ~/.ssh/config


$sudo  scp -r ~/.ssh oneadmin@192.168.0.204:~/

//拷貝過程須要輸入密碼,輸入oneadmin便可

(3)測試兩臺主機的互通性:

不須要輸入密碼便可登陸192.168.0.204主機。

(4)在控制節點安裝須要的軟件包:

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

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

# yum install mysql-server mysql-devel.x86_64 sqlite-devel.x86_64


(5)控制節點環境變量設置:

#su - oneadmin

$ mkdir ~/.one

$ vi ~/.one/one_auth  //登陸密碼存放位置

oneadmin:oneadmin


$ vim ~/.bash_profile

export ONE_LOCATION=/opt/nebula/ONE

export ONE_AUTH=$HOME/.one/one_auth

export ONE_XMLRPC=http://localhost:2633/RPC2

export PATH=$ONE_LOCATION/bin:$PATH:.

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:.


(6)在控制節點和計算節點上執行以下操做,用sda3做爲datastore,能夠根據本身實際狀況而定:

# mkdir /data0

# mount /dev/sda3 /data0

# chown oneadmin:oneadmin /data0 -R

(7)編譯安裝opennebula:

ruby安裝:

因爲直接yum install ruby,因爲版本低的緣由,可能致使opennebula沒法正常安裝,須要從http://www.ruby-lang.org/en/downloads下載ruby-2.0.0-p247.tar.gz進行源碼編譯安裝:

#su - oneadmin

$tar -xvf   ruby-2.0.0-p247.tar.gz

$cd ruby-2.0.0-p247

$./configure

$make && make install


opennebula安裝:

$tar -xvf opennebula-4.2.0.tar.gz

$cd opennebula-4.2.0

$scons -j2 mysql=yes syslog=yes

$/install.sh -d /opt/nebula/ONE

$cd share/install_gems

$./install_gems sunstone  

出現以下安裝界面:

根據實際狀況選擇操做。

注意:若是gem install --no-ri --no-rdoc rack sinatra thin sqlite3 nokogiri出現問題或者長時間沒反映,查了一下,說是被和諧了,建議使用使用taobao的,具體操做以下:

$ gem sources --remove https://rubygems.org/

$ gem sources -a http://ruby.taobao.org/

$ gem sources -l

而後從新執行$./install_gems sunstone,便可完成安裝。  

(8)啓動mysql服務,並建立opennebula庫:

#service mysqld start

#mysqladmin -uroot password '123456' // 設置mysql登陸密碼

(9)修改opennebula的配置文件

vim /opt/nebula/ONE/etc/oned.conf    //opennebula的主要配置文件

#DB = [ backend = "sqlite" ]

# Sample configuration for MySQL  // 修改數據庫爲mysql,並修改mysql的訪問密碼

DB = [ backend = "mysql",

       server  = "localhost",

       port    = 0,

       user    = "root",

       passwd  = "123456",

       db_name = "opennebula" ]

修改datastores的路徑:

DATASTORE_LOCATION = /data0

保存退出。


vim /opt/nebula/ONE/etc/sunstone-server.conf  //web登陸管理界面配置文件

修改host便可。

而後以oneadmin用戶啓動:

$one start

$sunstone-server start

查看進程:

(10)瀏覽器登陸:http://192.168.0.127:9869

會出現以下界面:


輸入用戶名和密碼,便可完成登陸。

管理界面以下圖,默認爲英文界面,4.2版本支持中文設置。


3.物理主機的添加:

在計算節點主機上:

(1)建立oneadmin用戶和屬組

groupadd -g 600 oneadmin

useradd -u 600 -g oneadmin oneadmin

設置oneadmin用戶的密碼(這裏設爲:oneadmin)

passwd oneadmin

配置oneadmin用戶,使其具備sudo權限

vim /etc/sudoers    

#在原來的root用戶下,增長以下一行

oneadmin ALL=(ALL) NOPASSWD: ALL

#註釋掉

#Defaults    requiretty

新建組 "libvirt"

groupadd libvirt

將oneadmin 添加到組 libvirt  

usermod -a -G libvirt oneadmin

(2)安裝kvm

#yum install ruby kvm

#ln -sf /usr/libexec/qemu-kvm /usr/bin/kvm

(3)安裝libvirt:

#wget http://libvirt.org/sources/libvirt-1.0.6.tar.gz

#tar zxf libvirt-1.0.6.tar.gz

#cd libvirt-1.0.6

#yum -y install libnl-devel libxml2-devel device-mapper-devel libpciaccess-devel python-devel

#yum -y remove libvirt

#./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc

#make; make install; ldconfig; cd ..

#service libvirtd start

#chkconfig libvirtd on


(4)修改配置文件:

vim /etc/libvirt/libvirtd.conf

unix_sock_group = "libvirt"

unix_sock_ro_perms = "0777"

unix_sock_rw_perms = "0770"

(5)建立新策略文件

#mkdir -p /etc/polkit-1/localauthority/50-local.d/

#vi /etc/polkit-1/localauthority/50-local.d/org.libvirt.unix.monitor.pkla

[Allow fred libvirt management permissions]

Identity=unix-user:oneadmin

Action=org.libvirt.unix.manage

ResultAny=yes

ResultInactive=yes

ResultActive=yes

保存退出

#/etc/init.d/libvirtd restart

(6)進行物理主機的添加,此過程可在web界面操做:

在基礎設施欄選擇物理機,進行主機添加:

ps:opennebula安裝操做過程對用戶的要求比較嚴格,必定注意root和oneadmin用戶之間的切換。後續會繼續介紹虛擬主機的安裝及操做。

相關文章
相關標籤/搜索