eucalyptus 3.1 源码安装教程 及问题汇总

1.官网安装说明

https://github.com/eucalyptus/eucalyptus/blob/master/INSTALL

2.eucalyptus 3.1 源码下载地址

https://github.com/eucalyptus/eucalyptus/downloads

----------------------------------------------------------------------------------------

以下安装环境为centos6.0

3.安装源码编译依赖(注意数据库已改为postgresql9.1,可能要删除源里自带的8.4版本,否则clc有可能启动冲突。)

1)Install the EPEL repository://添加第三方源
 
yum --nogpg install http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch.rpm
 
2)Install the ELRepo repository (needed on the Walrus host only)://仅walrus需要,我是都添加了
 
yum --nogpg install http://elrepo.org/linux/elrepo/el6/x86_64/RPMS/elrepo-release-6-4.el6.elrepo.noarch.rpm

3)下载axis2c,rampartc依赖包,下载全部包。

4.安装依赖
1)首先,安装yum源软件
yum install gcc make ant ant-nodeps git jpackage-utils libvirt-devel libxml2-devel libxslt-devel python-devel python-setuptools swig velocity xalan-j2-xsltc gawk java-devel java-devel openssl-devel curl-devel dhcp dhclient python-boto iscsi-initiator-utils perl-Crypt-OpenSSL-RSA perl-Crypt-OpenSSL-Random sudo which jpackage-utils java lvm2 velocity drbd84-utils.x86_64 kmod-drbd84.x86_64 drbd euca2ools dejavu-serif-fonts bridge-utils iptables vtun device-mapper coreutils e2fsprogs file parted util-linux rsync PyGreSQL curl httpd libvirt scsi-target-utils vconfig wget qemu-kvm

Dependencies Resolved

=========================================================================================================
 Package                           Arch         Version                              Repository     Size
=========================================================================================================
Installing:
 PyGreSQL                          x86_64       3.8.1-2.el6                          base           63 k
 ant-nodeps                        x86_64       1.7.1-13.el6                         base          781 k
 dejavu-serif-fonts                noarch       2.30-2.el6                           base          827 k
 dhclient                          x86_64       12:4.1.1-31.P1.el6                   base          316 k
 drbd                              x86_64       8.4.1-32.el6                         atrpms        277 k
 drbd84-utils                      x86_64       8.4.1-2.el6.elrepo                   elrepo        278 k
 euca2ools                         noarch       1.3.1-12.el6                         epel          104 k
 gcc                               x86_64       4.4.6-4.el6                          base           10 M
 kmod-drbd84                       x86_64       8.4.1-2.el6.elrepo                   elrepo        166 k
 libcurl-devel                     x86_64       7.19.7-26.el6_2.4                    base          243 k
 libxml2-devel                     x86_64       2.7.6-4.el6_2.4                      base          1.1 M
 libxslt-devel                     x86_64       1.1.26-2.el6                         base          559 k
 python-devel                      x86_64       2.6.6-29.el6_2.2                     base          166 k
 swig                              x86_64       1.3.40-6.el6                         base          1.1 M
 velocity                          noarch       1.4-10.7.el6                         base          338 k
 vtun                              x86_64       3.0.1-7.el6                          epel           57 k
 xalan-j2-xsltc                    noarch       2.7.0-9.8.el6                        base          1.2 M
Updating:
 coreutils                         x86_64       8.4-19.el6                           base          3.0 M
 curl                              x86_64       7.19.7-26.el6_2.4                    base          192 k
 device-mapper                     x86_64       1.02.74-10.el6                       base          135 k
 dhcp                              x86_64       12:4.1.1-31.P1.el6                   base          817 k
 e2fsprogs                         x86_64       1.41.12-12.el6                       base          551 k
 file                              x86_64       5.04-13.el6                          base           46 k
 gawk                              x86_64       3.1.7-9.el6                          base          774 k
 httpd                             x86_64       2.2.15-15.el6.centos.1               base          813 k
 iptables                          x86_64       1.4.7-5.1.el6_2                      base          246 k
 iscsi-initiator-utils             x86_64       6.2.0.872-41.el6                     base          654 k
 java-1.6.0-openjdk                x86_64       1:1.6.0.0-1.48.1.11.3.el6_2          updates        25 M
 java-1.6.0-openjdk-devel          x86_64       1:1.6.0.0-1.48.1.11.3.el6_2          updates       8.5 M
 lvm2                              x86_64       2.02.95-10.el6                       base          613 k
 make                              x86_64       1:3.81-20.el6                        base          389 k
 openssl-devel                     x86_64       1.0.0-20.el6_2.5                     base          1.1 M
 parted                            x86_64       2.1-18.el6                           base          605 k
 python-boto                       noarch       2.5.1-1.el6                          epel          889 k
 rsync                             x86_64       3.0.6-9.el6                          base          334 k
 scsi-target-utils                 x86_64       1.0.24-2.el6                         base          170 k
 sudo                              x86_64       1.7.4p5-12.el6_3                     updates       423 k
 util-linux-ng                     x86_64       2.17.2-12.7.el6                      base          1.5 M
 which                             x86_64       2.19-6.el6                           base           38 k
Installing for dependencies:
 apache-tomcat-apis                noarch       0.1-1.el6                            base          164 k
 avalon-framework                  x86_64       4.1.4-7.el6                          base          127 k
 avalon-logkit                     noarch       1.2-8.2.el6                          base           83 k
 cloog-ppl                         x86_64       0.15.7-1.2.el6                       base           93 k
 cpp                               x86_64       4.4.6-4.el6                          base          3.7 M
 dhcp-common                       x86_64       12:4.1.1-31.P1.el6                   base          140 k
 drbd-kmdl-2.6.32-279.el6          x86_64       8.4.1-32.el6                         atrpms        139 k
 jakarta-commons-collections       noarch       3.2.1-3.4.el6                        base          523 k
 jakarta-oro                       x86_64       2.0.8-6.6.el6                        base          191 k
 jlex                              x86_64       1.2.6-9.5.el6                        base          137 k
 kernel                            x86_64       2.6.32-279.el6                       base           25 M
 libgcrypt-devel                   x86_64       1.4.5-9.el6_2.2                      base          118 k
 libgpg-error-devel                x86_64       1.7-4.el6                            base           14 k
 libidn-devel                      x86_64       1.18-2.el6                           base          137 k
 mpfr                              x86_64       2.4.1-6.el6                          base          157 k
 portreserve                       x86_64       0.0.4-9.el6                          base           23 k
 ppl                               x86_64       0.10.2-11.el6                        base          1.3 M
 sg3_utils                         x86_64       1.28-4.el6                           base          471 k
 sg3_utils-libs                    x86_64       1.28-4.el6                           base           51 k
 werken-xpath                      noarch       0.9.4-4.beta.12.6.el6                base           75 k
 xinetd                            x86_64       2:2.3.14-34.el6                      base          121 k
Updating for dependencies:
 acl                               x86_64       2.2.49-6.el6                         base           75 k
 coreutils-libs                    x86_64       8.4-19.el6                           base           47 k
 device-mapper-event               x86_64       1.02.74-10.el6                       base           88 k
 device-mapper-event-libs          x86_64       1.02.74-10.el6                       base           83 k
 device-mapper-libs                x86_64       1.02.74-10.el6                       base          162 k
 e2fsprogs-libs                    x86_64       1.41.12-12.el6                       base          119 k
 expat                             x86_64       2.0.1-11.el6_2                       base           76 k
 file-libs                         x86_64       5.04-13.el6                          base          310 k
 httpd-tools                       x86_64       2.2.15-15.el6.centos.1               base           70 k
 iptables-ipv6                     x86_64       1.4.7-5.1.el6_2                      base           93 k
 kernel-firmware                   noarch       2.6.32-279.1.1.el6                   updates       8.7 M
 libacl                            x86_64       2.2.49-6.el6                         base           23 k
 libblkid                          x86_64       2.17.2-12.7.el6                      base          112 k
 libcom_err                        x86_64       1.41.12-12.el6                       base           36 k
 libcom_err-devel                  x86_64       1.41.12-12.el6                       base           31 k
 libcurl                           x86_64       7.19.7-26.el6_2.4                    base          163 k
 libgcc                            x86_64       4.4.6-4.el6                          base          100 k
 libgcrypt                         x86_64       1.4.5-9.el6_2.2                      base          228 k
 libgomp                           x86_64       4.4.6-4.el6                          base          117 k
 libgpg-error                      x86_64       1.7-4.el6                            base           59 k
 libss                             x86_64       1.41.12-12.el6                       base           40 k
 libuuid                           x86_64       2.17.2-12.7.el6                      base           65 k
 libxml2                           x86_64       2.7.6-4.el6_2.4                      base          795 k
 libxml2-python                    x86_64       2.7.6-4.el6_2.4                      base          320 k
 lvm2-libs                         x86_64       2.02.95-10.el6                       base          678 k
 mod_ssl                           x86_64       1:2.2.15-15.el6.centos.1             base           87 k
 openssl                           x86_64       1.0.0-20.el6_2.5                     base          1.4 M
 python                            x86_64       2.6.6-29.el6_2.2                     base          4.8 M
 python-libs                       x86_64       2.6.6-29.el6_2.2                     base          623 k

Transaction Summary
=========================================================================================================
Install      38 Package(s)
Upgrade      51 Package(s)

Total size: 116 M
Total download size: 316 k
Is this ok [y/N]: y

2)安装euca deps rpm包
从这里下载依赖包:http://downloads.eucalyptus.com/software/eucalyptus/build-deps/3.1/
进入刚才下载好的包目录,文件如下:
[root@nfscloud other_deps]# ls
axis2c-1.6.0-0.4.el6.x86_64.rpm            python-boto-2.4.1-0.1.el6.noarch.rpm
axis2c-devel-1.6.0-0.4.el6.x86_64.rpm      rampartc-1.3.0-0.5.el6.x86_64.rpm
bea-stax-1.2.0-0.8.rc1.el6.noarch.rpm      rampartc-devel-1.3.0-0.5.el6.x86_64.rpm
bea-stax-api-1.2.yum install *.rpm --nogpg0-0.8.rc1.el6.noarch.rpm  relaxngDatatype-1.0-3.el5.noarch.rpm
jpp5
--------------------------------------------------------------------------------------------------------------
yum install *.rpm --nogpg
cd jpp5/
yum install *.rpm --nogpg
 
3)安装postgresql9.1,eucalyptus3.1必须使用9.1以上版本
访问:http://yum.pgrpms.org/repopackages.php
安装postgresql9.1 repo源
wget http://yum.pgrpms.org/9.1/redhat/rhel-6-x86_64/pgdg-centos91-9.1-4.noarch.rpm
rpm -ivh pgdg-centos91-9.1-4.noarch.rpm
yum install postgresql91 postgresql91-server

4)创建 euca-WSDL2C.sh
vim /opt/euca-WSDL2C.sh
#!/bin/sh
CLASSPATH=$(build-classpath axis2 backport-util-concurrent commons-logging ws-commons-axiom ws-commons-XmlSchema ws-commons-neethi wsdl4j xalan-j2 xsltc) java org.apache.axis2.wsdl.WSDL2C $*

 

 
5)安装euca2ool工具

yum install -y http://downloads.eucalyptus.com/software/euca2ools/2.1/centos/6/x86_64/euca2ools-release-2.1.noarch.rpm --nogpg

yum install euca2ools

 

6)bitstream-vera-fonts 安装(可能只是字体文件吧,可选安装)
这里使用添加源的方式,也可以直接下载rpm包。
wget http://dl.atrpms.net/el6-i386/atrpms/stable/atrpms-repo-6-5.el6.i686.rpm
rpm -ivh atrpms-repo-6-5.el6.i686.rpm
yum install bitstream-vera-fonts-common

5.编译eucalyptus源码
我从git打包下载的是这个版本
~]#  tar zxvf eucalyptus-eucalyptus-3.1.0-0-g2273d7f.tar.gz
~]#cd eucalyptus-eucalyptus-2273d7f/
 
设置环境变量,根据自己机器的实际路径设置
export JAVA_HOME="/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64"
export JAVA="/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java"
export EUCALYPTUS="/opt/eucalyptus" (测试使用,部署时使用"/")

运行configure脚本:
./configure '--with-axis2=/usr/include/axis2-*' --with-axis2c=/usr/lib64/axis2c --prefix=/opt/eucalyptus/ --with-apache2-module-dir=/usr/lib64/httpd/modules --with-db-home=/usr/pgsql-9.1 --with-wsdl2c-sh=/opt/euca-WSDL2C.sh
make
make install
 
6.配置eucalyptus,启动服务。环境为搭建在1台PC上。
vim /opt/eucalyptus/etc/eucalyptus/eucalyptus.conf

EUCALYPTUS="/opt/eucalyptus/"
EUCA_USER="eucalyptus" CLOUD_OPTS="" LOGLEVEL="DEBUG" NC_PORT="8775" CC_PORT="8774" SCHEDPOLICY="ROUNDROBIN" NODES="" NC_SERVICE="axis2/services/EucalyptusNC" HYPERVISOR="kvm" USE_VIRTIO_ROOT="1" USE_VIRTIO_DISK="1" USE_VIRTIO_NET="1" INSTANCE_PATH="/usr/local/eucalyptus/" VNET_MODE="MANAGED-NOVLAN" VNET_PRIVINTERFACE="br0" VNET_PUBINTERFACE="br0" VNET_BRIDGE="br0" VNET_PUBLICIPS="192.168.5.230-192.168.5.240" VNET_SUBNET="192.150.0.0" VNET_NETMASK="255.255.0.0" VNET_ADDRSPERNET="32" VNET_DNS="124.16.136.254" VNET_LOCALIP="192.168.5.185" VNET_DHCPDAEMON="/usr/sbin/dhcpd"

ln -s /opt/eucalyptus/usr/sbin/euca_conf /sbin/

euca_conf --setup

]# euca_conf --initialize          (euca_conf --initialize --debug  //可以检查错误)
Initializing Database...
Initialize command succeeded

新鲜出炉的eucalyptusv 3.1就可以使用了。
-----------------------------------------------------------------------------

/opt/eucalyptus/etc/init.d/eucalyptus-cloud start

/opt/eucalyptus/etc/init.d/eucalyptus-cc start
/opt/eucalyptus/etc/init.d/eucalyptus-nc start

------------------------------------------------------------------------------

注册组件:

export EUCALYPTUS="/opt/eucalyptus/"

euca_conf --help 进行组件的注册。euca_conf 脚本已经改为python语言。

------------------------------------------------------------------------------

问题汇总;

1.make的过程中,会使用git命令下载clc代码,注意yum安装git命令。

2.clc启动不了,要先执行euca_conf --initialize 命令,并且成功。失败的话,是因为postgresql启动失败,或者版本不是9.1以上。

3.nc启动不了,根据上面的教程安装euca2ools工具。

posted on 2012-07-18 10:43  longzhao&&dilanlx  阅读(1902)  评论(1)    收藏  举报

导航