[[PageOutline]] {{{ #!html

2.1 從 Sourece 安裝

}}} ---- == ''__2.1.1 相關套件安裝__'' == {{{ ### 安裝 sun Java ### $ aptitude install sun-java6-jdk $ update-alternatives --config java ### 安裝 ant ### $ aptitude install ant ### 安裝 vlan, dhcp, openssl ### $ aptitude install vlan dhcp3-server libcurl4-openssl-dev ### EC2 tools ### $ wget http://s3.amazonaws.com/ec2-downloads/ec2-ami-tools-1.3-26357.zip $ wget http://s3.amazonaws.com/ec2-downloads/ec2-api-tools-1.3-30349.zip $ unzip ec2-ami-tools-1.3-26357.zip $ unzip ec2-api-tools-1.3-30349.zip }}} {{{ #!sh ### 設定環境變數 ### $ vim ~/.bashrc export JAVA_HOME=/usr/lib/jvm/java-6-sun export ANT_HOME=/usr/share/ant export EC2_HOME=/root/ec2-api-tools-1.3-30349 export EC2_AMITOOL_HOME=/root/ec2-ami-tools-1.3-26357 export PATH=$PATH:$JAVA_HOME/bin:$ANT_HOME/bin:$EC2_HOME/bin:$EC2_AMITOOL_HOME/bin $ source ~/.bashrc }}} == ''__2.1.2 編譯 Euc__'' == * [http://open.eucalyptus.com/downloads 下載 Eucalyptus] -> 下載兩個檔案 (Euceucalyptus-1.5.1-src.tar.gzalyptus source) & eucalyptus-1.5.1-src-deps.tar.gz {{{ #!sh ### 1.解壓縮 ### $ su $ sudo tar zvxf eucalyptus-1.5.1-src.tar.gz -C ~ ### 2.設定環境變數 ### $ echo "export EUCALYPTUS_SRC=/root/eucalyptus-1.5.1" >> /root/.bashrc $ echo "export EUCALYPTUS=/opt/eucalyptus" >> /root/.bashrc $ source /root/.bashrc ### 3.安裝 Euc 相依的軟體 ### $ tar zvxf eucalyptus-1.5.1-src-deps.tar.gz -C $EUCALYPTUS_SRC $ mkdir -p $EUCALYPTUS/packages/ ### 3.1 Axis2 ### $ cd $EUCALYPTUS_SRC/eucalyptus-src-deps/ $ tar zxvf axis2-1.4.tgz -C $EUCALYPTUS/packages/ $ vim ~/.bashrc $ source ~/.bashrc ### 3.2 Apache(httpd) ### $ tar zvxf httpd-2.2.11.tar.gz $ cd httpd-2.2.11 $ CFLAGS="-DBIG_SECURITY_HOLE" ./configure --prefix=$EUCALYPTUS/packages/httpd-2.2.11 --with-included-apr $ make && make install ### 3.3 Axis2/C ### $ cd $EUCALYPTUS_SRC/eucalyptus-src-deps/ $ tar zvxf axis2c-src-1.5.0.tar.gz $ echo "export AXIS2C_HOME=$EUCALYPTUS/packages/axis2c-1.5.0" >> ~/.bashrc ; . ~/.bashrc $ cd axis2c-src-1.5.0 $ ./configure --with-apache2=$EUCALYPTUS/packages/httpd-2.2.11/include --prefix=$AXIS2C_HOME $ make && make install ### 3.4 Rampart/C ### $ cd $EUCALYPTUS_SRC/eucalyptus-src-deps/ $ echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AXIS2C_HOME/lib" >> ~/.bashrc ; . ~/.bashrc $ tar zvxf rampartc-src-1.2.0.tar.gz $ cd rampartc-src-1.2.0 $ ./configure --prefix=$AXIS2C_HOME --enable-static=no --with-axis2=$AXIS2C_HOME/include/axis2-1.5.0 $ make ; make install $ vim $AXIS2C_HOME/axis2.xml ### 3.5 Libvirt ### $ aptitude install libxml2-dev libgnutils-dev $ cd $EUCALYPTUS_SRC/eucalyptus-src-deps/ $ tar zvxf libvirt-0.6.3.tar.gz $ cd libvirt-0.6.3 $ ./configure --prefix=$EUCALYPTUS/packages/libvirt-0.6.3 --without-storage-disk --without-storage-iscsi --without-storage-fs --without-storage-lvm --without-libvirtd --without-remote --without-lxc --without-kvm --without-qemu --without-sasl --without-openvz $ make ; make install }}} == ''__2.1.3 Build Euc__'' == {{{ ### Building Eucalyptus ### $ cd $EUCALYPTUS_SRC $ ./configure --with-axis2=$EUCALYPTUS/packages/axis2-1.4 --with-axis2c=$EUCALYPTUS/packages/axis2c-1.4 --with-libvirt=$EUCALYPTUS/packages/libvirt-0.6.3/ --prefix=$EUCALYPTUS $ make ; make install ### Eucalyptus on multiple machines ### # 設定 Euc 設定檔的位置 # $ $EUCALYPTUS/usr/sbin/euca_conf -d $EUCALYPTUS $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf # 將 $EUCALYPTUS/ 同步複製到其他 nodes # $ rsync -a $EUCALYPTUS/ hostname1:$EUCALYPTUS/ $ rsync -a $EUCALYPTUS/ hostname2:$EUCALYPTUS/ $ ... }}}