Eucalyptus can be installed on Fedora 12 from source or by using binary RPM packages. This document details the steps required to install Eucalyptus from RPMs. In what follows, the value of $VERSION must be set to the version of Eucalyptus you wish to install. For example:
export VERSION=2.0.3
Notice: Before you begin, please ensure that you have an up-to-date Fedora 12 installation on your target machine(s).
If you start with a standard Fedora installation, you will satisfy all prerequisites with the following steps:
Front-end, node and client machine system clocks are synchronized (e.g., using NTP).
yum install -y ntp ntpdate pool.ntp.org
Front-end needs java to manipulate a bridge and the binaries for dhcp server (do not configure it nor run it on the CC):
yum install -y java-1.6.0-openjdk java-devel ant \
ant-nodeps dhcp httpd boto
yum install -y aoetools vblade vtun bridge-utilsInstall KVM and other related tools for the nodes
yum install -y qemu-kvm libvirt aoetools vblade
Firewall rules must permit the Eucalyptus components to communicate with one another, and clients to communicate with Eucalyptus. On the front-end, ports 8443, 8773, 8774 and 9001 must be open; on the node, port 8775 must be open. If you are planning on using Elastic IPs and/or Security Groups, you may want to consider disabling the firewall and use Eucalyptus facilities for enabling custom firewall rules (see Network configuration for more information). On both the front-end and the nodes:
For example, from a text console:
system-config-firewall-tuiDisable SELINUX using your favorite editor to open the SELINUX configuration file. For example:
vi /etc/selinux/config
Edit the configuration file so that SELINUX has the value of "disabled" (SELINUX="disabled").
Eucalyptus binary installation is broken up into several packages: one for each of the components (CLC, Walrus, CC, etc.), as well as a couple of common packages.
There are two options for downloading and installing the packages:
Packages are available from our yum repository. To use this option, create '/etc/yum.repos.d/euca.repo' file with the following four lines:
[euca]
name=Eucalyptus
baseurl=http://www.eucalyptussoftware.com/downloads/repo/eucalyptus/{{VERSION}}/yum/fedora/{{BASEARCH}}
gpgcheck=0{{VERSION}} and {{BASEARCH}} in the baseurl= line above.
Now install eucalyptus on the front-end,
yum install eucalyptus-cloud eucalyptus-cc \
eucalyptus-walrus eucalyptus-scand on the node
yum install eucalyptus-nc
These packages are available in a single tarball, wherein we also include copies of third-party Fedora packages that Eucalyptus depends on (Rampart, Axis2C, many Java libraries), at http://open.eucalyptus.com/downloads (look for a Fedora tarball of the correct Eucalyptus version and architecture).
Untar the bundle in a temporary location:
tar zxvf eucalyptus-$VERSION-*.tar.gz cd eucalyptus-$VERSION-*
In the examples below we use x86_64, which should be replaced with i386 or i586 on 32-bit architectures.
First, on the front end, install third-party dependency RPMs:
yum install -y perl-Crypt-OpenSSL-RSA perl-Crypt-OpenSSL-Random \
scsi-target-utils wget
cd eucalyptus-$VERSION*-rpm-deps-x86_64
rpm -Uvh euca-axis2c-1.6.0-1.x86_64.rpm \
euca-rampartc-1.3.0-1.x86_64.rpm
cd ..then install the -cloud, -walrus, -cc and -sc RPMs:
rpm -Uvh eucalyptus-$VERSION-*.x86_64.rpm \
eucalyptus-common-java-$VERSION-*.x86_64.rpm \
eucalyptus-cloud-$VERSION-*.x86_64.rpm \
eucalyptus-sc-$VERSION-*.x86_64.rpm \
eucalyptus-walrus-$VERSION-*.x86_64.rpm \
eucalyptus-cc-$VERSION-*.x86_64.rpm \
eucalyptus-gl-$VERSION-*.x86_64.rpmNext, on each node, install the dependency packages:
yum install -y perl-Crypt-OpenSSL-RSA \
perl-Crypt-OpenSSL-Random wget
cd eucalyptus-$VERSION*-rpm-deps-x86_64
rpm -Uvh euca-axis2c-1.6.0-1.x86_64.rpm \
euca-rampartc-1.3.0-1.x86_64.rpm
cd ..then install the node controller RPM with dependencies:
rpm -Uvh eucalyptus-$VERSION-*.x86_64.rpm \
eucalyptus-gl-$VERSION-*.x86_64.rpm \
eucalyptus-nc-$VERSION-*.x86_64.rpmOn the node, /etc/libvirt/libvirtd.conf file needs to be modified:
unix_sock_group = "kvm" unix_sock_ro_perms = "0777" unix_sock_rw_perms = "0770" auth_unix_ro = "none" auth_unix_rw = "none"
Once you made the modification, stop and start the libvirt, and make sure the sockets belong to the correct group:
/etc/init.d/libvirtd stop /etc/init.d/libvirtd start chown root:kvm /var/run/libvirt/libvirt-sock chown root:kvm /var/run/libvirt/libvirt-sock-ro
Now, the node should be ready to run.
Now start up your Eucalyptus services. On the front-end:
/etc/init.d/eucalyptus-cloud start /etc/init.d/eucalyptus-cc start
On the node:
/etc/init.d/eucalyptus-nc start
At this point you should be ready to proceed with first-time configuration.