You are on page 1of 13

installed cenos on the eucalyptus a complete tutorial and problem solving.

doc
This document combined with eucalyptus official website description, and problems during installation solutions sorting out a complete installation documentation for your in the source code to install eucalyptus . The document describes the idea is as follows:

First instructions in the cc machine First: in the pre-installation preparation work: the xen : general linux installation allows users to select the installer xen related choose to. Test xen installed properly: Command: xm list Results: The name ID Mem (MiB) VCPUs State Time (s) Domain- 0 0 1721 1 r ----- 1 If the test is not correct, you need to re-uninstall and xen , this online reference xeninstallation documentation 2, the test dhcp server running state Command: service dhcp status 3, yum install, run the command yum install gcc and other problems as follows:

Could not retrieve the mirrorlist http://mirrorlist.centos.org/?release=5&arch=i386&repo=addons error was [Errno 4] IOError: <urlopen error (-3, '/ xe5/x9f/x9f/xe5/x90/x8d the / xe8/xa7/xa3/xe6/x9e/x90/xe6/x9a/x82/xe6/x97/xb6/xe5/xa4/xb1/xe8/xb4/xa5 ')> Error: Can not find a valid baseurl for repo: addons Solution on this issue, see the website http://centos.ustc.edu.cn/ to normal use 4 the the installation vblade package, the official website stated:
For persistent dynamic block storage (aka EBS) to work, the front end will need to have the following software packages installed: a) b)

lvm2

package (eg, command the

lvm

should work)

aoetools the
nodesmodprobe to add that.

package The aoe module needs to be loaded on the front end The as well as all

aoe

If your kernel does not have the ATA-over-Ethernet support, you will have

c)

vblade

package

I must first download a vblade installation package, and then view the in the installation package .

Step 2: Install the eucalyptus 1, the first installation tool to install the package: yum install-y java-1.6.0-openjdk-devel ant ant-nodeps libvirt-devel curldevel httpd httpd-devel apr-devel openssl-devel dhcp libxml2 libxml2-devel gnutls gnutls-devel xen-devel libgcrypt-devel zlib- devel perl-ConvertASN1 perl-Crypt-OpenSSL-RSA perl-Crypt-OpenSSL-Random chkfontpath scsitarget-utils fuse-libs swig gcc 2 See the official website of the installation instructions to install ( 1 ) first root install eucalyptus : mkdir zyq The first definition version of the environment variable :
2.0.2 export VERSION =

( 2 ) Download the source code file, the


eucalyptus-2.0.2-src-offline.tar.gz and eucalyptus-2.0.2-src-deps.tar.gz

Upload it to the folder you created ZYQ extract the source files:
cd / root / zyq

tar zvxf eucalyptus-$ VERSION-src.tar.gz

( 3 ) to set the environment variable: Command to run:


pwd cd eucalyptus-$ VERSION export EUCALYPTUS_SRC = `pwd` export EUCALYPTUS = / opt / eucalyptus

( 4 ) Installation dependencies
cd $ EUCALYPTUS_SRC tar zvxf .. / eucalyptus-$ VERSION-src-deps.tar.gz mkdir-p $ EUCALYPTUS / packages /

Install axis2
cd $ EUCALYPTUS / packages tar zxvf $ EUCALYPTUS_SRC/eucalyptus-src-deps/axis2-1.4.tgz

Installing the Axis2 / C : first set environment variables:


export APACHE_INCLUDES = / usr / include / httpd / export APR_INCLUDES = / usr/include/apr-1 /

Installation:
export AXIS2C_HOME = $ EUCALYPTUS/packages/axis2c-1.6.0 cd $ EUCALYPTUS_SRC / eucalyptus-src-deps / tar zvxf axis2c-src-1.6.0.tar.gz cd axis2c-src-1.6.0 CFLAGS = "-w". / Configure - prefix = $ {AXIS2C_HOME} - with-apache2 = $ APACHE_INCLUDES - withapr = $ APR_INCLUDES - enable-multi-thread = no make; make install

Installation Rampart / C
export AXIS2C_HOME = $ EUCALYPTUS/packages/axis2c-1.6.0 export LD_LIBRARY_PATH = $ {AXIS2C_HOME} / lib: $ LD_LIBRARY_PATH cd $ EUCALYPTUS_SRC / eucalyptus-src-deps / tar zvxf rampartc-src-1.3.0-0euca1.tar.gz cd rampartc-src-1.3.0 . / Configure - prefix = $ {AXIS2C_HOME} - enable-static = no - with-axis2 = $ {AXIS2C_HOME} / include/axis2-1.6.0 make; make install

After installation, modify the file $ AXIS2C_HOME/axis2.xml vi $ AXIS2C_HOME/axis2.xml


In the 'inflow' section, change:
<! - Phase name = "Security" / -> the

to

<phase name="Security"/>

In the 'outflow' section, change:


<! - Phase name = "Security" / -> the

to

<phase name="Security"/>

( 5 ) Install eucalyptus Make sure


JAVA_HOME whether defined, export JAVA_HOME = "/ usr / lib / jvm / java-openjdk /" export JAVA = "$ JAVA_HOME / jre / bin / java"

Install eucalyptus :
cd $ EUCALYPTUS_SRC . / Configure - with-axis2 = $ EUCALYPTUS/packages/axis2-1.4 - with-axis2c = $ EUCALYPTUS/packages/axis2c-1.6.0 - enable-debug - prefix = $ EUCALYPTUS make; make install

( 6 ) the deployment of eucalyptus The official website describes as follows:


rsync-a $ EUCALYPTUS / root @ {node-host-1}: $ EUCALYPTUS / rsync-a $ EUCALYPTUS / root @ {node-host-2}: $ EUCALYPTUS /

Achieve the function is / opt / eucalyptus nc nodes, simply copy the files, so in nc must install the official website of the in those packages installation instructions, I used this installed above will in nc also installed again, but if you have multiple nc , doing so will greatly reduce efficiency, but must ensure that the nc nodes conforming to the installation requirements. (7) the host configuration Add User eucalyptus
useradd eucalyptus

configuration , we use libvirt to manage xen virtualization Test:

virsh list Correct result: Id name of the ---------------------------------0 Domain-0 2 i-5691096D running idle state

Incorrect results: Error: connect to the management program fails The solution is to modify the configuration file, as described below the xen configuration file:
vi / etc / xend / xend-config.sxp ( Note that some machines folder is the xen instead Once xend is)

Modified as follows:
(Xend-http-server yes) (Xend-unix-server yes) (Xend-unix-path / var / lib / xend / xend-socket) (Xend-address localhost) (Network-script network-bridge) (Vif-script vif-bridge) (Dom0-min-mem 196) (Dom0-cpus 0) (Vncpasswd'')

Libvirt Test libvirt :


virsh list

Modify the libvirt configuration file: vi / etc / libvirt / libvirtd.conf The the # unix_sock_group = "libvirt" => unix_sock_group, = "libvirt" <# Unix_sock_ro_perms = "0777" => unix_sock_ro_perms = "0777" The # unix_sock_rw_perms = "0770" => unix_sock_rw_perms = "0770" To restart finished modifying c configure network There are four network modes, we have adopted the system mode d. configuration Eucalyptus components

On all nodes, run the following command : $ EUCALYPTUS / usr / sbin / euca_conf-d $ EUCALYPTUS - hypervisor xen instances / usr / local / eucalyptus - user eucalyptus - setup Function Description:
-D specifies the root of Eucalyptus installation ($ EUCALYPTUS) - The hypervisor specifies the the hypervisor ( 'xen' or 'kvm' ) must choose their own use virtualization technology to keep in mind here - Instances specifies where, on a compute NODES, instance files will be stored - User specifies the user that you created the for running Eucalyptus - Setup invokes the first-time setup tasks

e Distribution-specific post configuration steps (the centos installation which does not require modificationsfor some special linux system) f. configuration startup script If you want to reboot the system so cc , cloud , nc automatically start in cc and nc run the command:
ln-sf $ EUCALYPTUS / etc / init.d / eucalyptus-cloud / etc / init.d / eucalyptus-cloud ln-sf $ EUCALYPTUS / etc / init.d / eucalyptus-cc / etc / init.d / eucalyptus-cc ln-sf $ EUCALYPTUS / etc / init.d / eucalyptus-nc / etc / init.d / eucalyptus-nc

(8)

running eucalyptus The Eucalyptus installation includes five parts: cloud CONTROLLER (CLC), the

Walrus, cluster CONTROLLER (CC) Storage CONTROLLER (SC), and the node controller (s) (NCs) to the CLC , the Walrus , CC , SC installed in one machine, nc installed on another machine. The confirmed $ EUCALYPTUS / etc / eucalyptus / eucalyptus.conf configuration is correct, to determine correctly execute the following command:
$ EUCALYPTUS / usr / sbin / euca_conf-d $ EUCALYPTUS-setup $ EUCALYPTUS / usr / sbin / euca_conf-d $ EUCALYPTUS - enable cloud - enable walrus - enable sc

Cc and nc start eucalyptus :


# Start enabled front-end services

$ EUCALYPTUS / etc / init.d / eucalyptus-cloud start # Start the cluster controller $ EUCALYPTUS / etc / init.d / eucalyptus-cc start

In ncs start:
$ EUCALYPTUS / etc / init.d / eucalyptus-nc start

Note: If we modify the $ EUCALYPTUS / etc / eucalyptus / eucalyptus.conf file, you must reboot the clc andcc , and the cc must use cleanrestart to restart. The installation process in the problems and solutions: 1 , in the implementation of the $ EUCALYPTUS / etc / init.d / eucalyptus-cloud start to appear the following results: error : the EBS is the enabled and vblade is not found. Reason: did not see installation requirements before installing For persistent dynamic block storage (aka EBS) to work, the front end will need to have the following software packages installed: lvm2 package (eg, command lvm should work) aoetools package. The aoe module needs to be loaded on the front end as well as all nodes (modprobe aoe). If your kernel does not have ATA-over-Ethernet support, you will have to add that. vblade package Solution: Download a vblade installation package, install and then run $ EUCALYPTUS / etc / init.d / eucalyptus-cloud start to $ EUCALYPTUS / etc / init.d / eucalyptus-nc start the following results: eucalyptus not configred. Reasons: because the installation did not use synchronous so nc the eucalyptus.conf file in some local configuration does not Solution: contrast the cc on configuration files and then can be modified ( must be to clean ccand clc)

Step 3: configure eucalyptus 1 , First-time Setup (2.0)

( 1 ) need to register installed components, so they can only be able to communicate:


First, you will need to register various front end components. To do this, run the following commands on the front end.
$ EUCALYPTUS / usr / sbin / euca_conf - register-walrus <front end IP address> $ EUCALYPTUS / usr / sbin / euca_conf - register-cluster <clustername> <front end IP address> $ EUCALYPTUS / usr / sbin / euca_conf - register-sc <clustername> <front end IP address>

Which <front end IP address> modify cc 's ip address, you can name your own
clustername

Finally, you need to register nodes with the front end. To do so, run the following command on the front end,
$ EUCALYPTUS / usr / sbin / euca_conf - register-nodes "<Node 0 IP address> <Node 1 IP address> ... <Node N IP address>" <Node 0 IP address>

nc address, if there is more than one nc directly tied listed

can ( 2 ) Initial Configuration In the browser, enter:


https://front-end-ip:8443

First login user name and password for the admin login operation:
1. change the admin password 2. set the admin's email address, and . confirm the IP of the Cloud the Controller host.

For details, please refer to the Kanguan Network Help Note: After modifying the future we will see 'Credentials bar, want to use the command-line tools must be downloaded from the certificate 'Download Credentials', the downloaded file in a directory, execute the following operations:
mkdir $ HOME / .euca unzip euca2-admin-x509.zip-d $ HOME / .euca source $ HOME / .euca / eucarc

Want to use the command-line tool in the machine after each time you log must run the command:source
$ HOME / .euca / eucarc

2, the Hypervisor Configuration Has been introduced in the front 3, Eucalyptus the Network Configuration Briefly earlier, want to know eucalyptus network mode Tell me what network Description 4, EBS Configuration There are currently no related to Step 4: Management eucalyptus Modified before this first installation euca2ools http://open.eucalyptus.com/wiki/Euca2oolsGuide described best direct installation using the installation package installs Managing the Eucalyptus Images (2.0) (detailed description Add mirror process) 2, Web-Based Management 3, Command-Line-Based Management 4, Backup of Eucalyptus (2.0) (yet not used) Step Five: The Troubleshoot Eucalyptus
Cloud Controller (CLC), the Walrus and Storage Controller (SC) : cloud-debug.log cloud-error.log cloud-output.log

Cluster Controller (CC) cc.log axis2c.log httpd-cc_error_log

Node Controller (NC)

nc.log axis2c.log httpd-nc_error_log euca_test_nc.log

Relevant log files for errors Step 6: create an instance Download the certificate: Download certificate on euca folder, euca can be placed root , can also be placed in the root folder
mkdir ~ /. euca cd ~ /. euca unzip name-of-the-key-zip.zip chmod 0700 ~ /. euca chmod 0600 ~ /. euca / * source ~ / .euca/euca2- * / eucarc

2, Creating key-pairs
euca-add-keypair mykey | tee mykey.private chmod 0600 mykey.private

3 , create an instance:
euca-run-instances-k mykey-n <number of instances to start> <emi-id>

4 , the view of the state of the instance:


euca-describe-instances

5, Log in virtual machine


euca-authorize-P tcp-p 22-s 0.0.0.0 / 0 default ssh-i mykey.private root @ <accessible-instance-ip> <accessible-instance-ip> instance ip address Displayed correctly: The authenticity of host ip address (ip address) 'can not be established. RSA key fingerprint is bc: f0: 34:9 d: e9: e6: 96:76:84:3 d: 0b: ac: 28:9 f: 65:10. Are you sure you want to continue connecting (yes / no)? Yes Warning: Permanently added 'ip address' (RSA) to the list of known hosts. -Bash-3.2 # In this direct input command

Create an instance of problems: 1 can not create an instance running Reason: / usr / local / eucalyptus permissions for root , so you can not run, be the owners modified toeucalyptus can 2, can not obtain ip address: Reason: dhcp problem, need nc on the dhcp so generate instances can be assigned to the ipaddress Sometimes appear before a few can be assigned to the ip address, followed by generation an instance can not be assigned to the ip , because ip range of settings, expand assigned to solve this problem 3 ip address can not log in to the virtual machine, because some permission issues First error: ssh port 22: Connection timed out: connect to host ip address Solution: Must be before euca-delete-keypair the mykey well mykey.private of ( 1 ) the end of the current instance ( 2 ) to re-download the certificate ( 3 ) the certificate decompression, ( 4 ) must change the permissions of the certificate on ( 5 ) chmod 0700 / root / .euca chmod 0600 / in root / .euca / * ( 6 ) regenerate mykey ( 7 ) to create an instance The second error conditions: The authenticity of host ip address (ip address) 'can not be established. RSA key fingerprint is 54:69: a5: 10: b8: 43:5 b: c5: 16:50:78:6 f: 09:16: c6: 45. Are you sure you want to continue connecting (yes / no)? Yes Warning: Permanently added 'ip address' (RSA) to the list of known hosts. Enter passphrase for key 'mykey.private': The solution: with the first solution again reComplete command: service dhcpd status 1000 / opt / eucalyptus / etc / init.d / eucalyptus-cloud restart

1001 / opt / eucalyptus / etc / init.d / eucalyptus-cc cleanrestart 1002 mkdir /. euca The 1003 deldir /. euca 1004 rm-rf / root / .euca / 1005 mkdir /. euca 1006 cp / root/euca2-admin-x509.zip / root / .euca / 1007 cd /. euca 1008 unzip euca2-admin-x509.zip 1009 chmod 0700 ~~ the /. euca 1010 chmod 0600 ~~ the /. euca / * The 1011 . ~~ / .euca/euca2- / eucarc 1012 . ~~ the / .euca / eucarc 1013 / usr / bin / euca-describe-images 1014 / usr / bin / euca-describe-key-pairs 1015 / usr / bin / euca-delete-keypair mykey 1016 / usr / bin / euca-delete-keypair mykey.private 1017- unzip euca2-admin-x509.zip 1018 chmod 0700 ~~ the /. euca 1019 chmod 0600 ~~ the /. euca / * 1020 . ~~ the / .euca / eucarc 1021 / usr / bin / euca-describe-key-pairs 1022 / usr / bin / euca-add-keypair mykey> mykey.private 1023 / usr / bin / euca-describe-key-pairs 1024 chmod 0600 mykey.private 1025 pwd 1026 / usr / bin / euca-run-instances-k mykey emi-1C6915A6 1027 / usr / bin / euca-describe-instances 1028 / usr / bin / euca-describe-instances 1029 / usr / bin / euca-describe-instances 1030 / usr / bin / euca-describe-instances 1031 / usr / bin / euca-describe-instances 1032 ping ip address 1033 euca-the authorize-P tcp-p 22-s 0.0.0.0 / 0 default

1034 / usr / bin / euca-authorize-P tcp-p 22-s 0.0.0.0 / 0 default The the 1035 ssh-i mykey.private the root _AT_ ip address

You might also like