Skip to content
Newer
Older
100644 332 lines (223 sloc) 19.7 KB
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
1 http://open.eucalyptus.com/wiki/EucalyptusInstallationSource_v2.0
2
3 1. Prerequisites
4 ================
5 What follows is a comprehensive list of dependencies that must be satisfied before building Eucalyptus or running it. While we provide distribution-specific installation instructions that help satisfy these dependencies, this list should be useful if you are installing or building Eucalyptus on an unsupported distribution. NOTE - If you are upgrading from a Eucalyptus 1.6.2 or older installation, please consult the Upgrade Documentation for instructions that will explain how to preserve user account information, images, volumes and snapshots.
6
7 Prerequisites for compiling from source
8
9 * C compilers
10 * Java Developer Kit (SDK) version 1.6 or above
11 * Apache ant 1.6.5 or above
12 * libc development files
13 * pthreads development files
14 * libvirt development files
15 * Axis2C and rampart development files (included with Eucalyptus)
16 * Curl development files
17 * openssl development files
18 * Optional: zlib development files
19
20 Prerequisites for running Eucalyptus
21
22 There are a few different Eucalyptus components that run on either the 'front-end or 'node'. There are different run-time dependencies for 'front-end' and 'node' components. One physical machine can play the role of the front-end and the node.
23
24 Front-end run-time dependencies
25
26 * Java 6 is needed by the Eucalyptus components running on the front end. Note that GNU Compiler for Java (gcj), included by default with some Linux distributions, is not sufficient. Make sure that your JAVA_HOME environment variable is set to the location of your JDK.
27 * Perl is used by helper scripts
28 * The head node must run a server on port 25 that can deliver or relay email messages to cloud users' email addresses. This can be Sendmail, Exim, or postfix, or even something simpler, given that this server does not have to be able to receive incoming mail. Many Linux distributions satisfy this requirement out of the box. To test whether you have a properly functioning mail relay for localhost, try to send email to yourself from the terminal using "mail".
29 * Dependencies for network support differ depending on the mode used (see Eucalyptus Network Configuration for details). For full functionality satisfy all of them:
30 o For all modes:
31 + iproute and iptables packages (ip and iptables commands must work)
32 o For all modes except SYSTEM:
33 + DHCP Server compatible with ISC DHCP Daemon version 3.0.X (dhcp3-server)
34 o For MANAGED and MANAGED-NOVLAN modes:
35 + bridge-utils package (brctl command must work)
36 + vtun package, for multi-cluster configurations
37 o Additionally, for MANAGED mode:
38 + vlan package (vconfig command must work)
39 * For persistent dynamic block storage (aka EBS) to work, the front end will need to have the following software packages installed:
40 o lvm2 package (e.g., command lvm should work)
41 o 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.
42 o vblade package
43
44 Node run-time dependencies
45
46 * Perl scripts are invoked by the Node Controller
47 * Two hypervisors are supported:
48 1. Xen (version >= 3.0.x)
49 o Furthermore, xen-utils package is needed (xm command must work)
50 2. KVM
51 * Dependencies for network support differ depending on the mode used (see Eucalyptus Network configuration for details). For full functionality satisfy all of them:
52 o For all modes:
53 + iproute and iptables packages (ip and iptables commands must work)
54 o For MANAGED and MANAGED-NOVLAN modes:
55 + bridge-utils package (brctl command must work)
56 o Additionally, for MANAGED mode:
57 + vlan package (vconfig command must work)
58 * libvirt package (potentially with libvirtd, depending on hypervisor configuration)
59
60 All Eucalyptus components
61
62 * You must be root to install and start Eucalyptus components (by default they will run under a different user after start). This document assumes that all commands will be executed as root.
63
64 Attention CentOS users:The version of OpenJDK that is bundled with CentOS-5 cannot compile the version of GWT that comes with Eucalyptus as a dependency. You will need to install JDK 1.6.0 "manually". We use Sun's JDK, which can be found at http://java.sun.com/javase/downloads/index.jsp. Be sure to set your JAVA_HOME and PATH properly before running the Eucalyptus 'configure' script.
65
66 Distribution-specific examples
67
68 What follows is a superset of all packages necessary for building and running Eucalyptus on each supported distribution:
7183c5b from CVS
graziano obertelli authored
69
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
70 * For Opensuse 11.2, download and install RPMs the appropriate OpenSUSE RPM dependency package from the Eucalyptus website, then run the following command to install all required dependency packages:
7183c5b from CVS
graziano obertelli authored
71
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
72 zypper -n install curl bzr python-paramiko make gcc ant apache2 apache2-prefork apache2-devel java-1_6_0-openjdk java-1_6_0-openjdk-devel libvirt-devel libcurl-devel vlan dhcp-server bridge-utils ant-contrib ant-nodeps openssl libvirt libcurl-devel vlan apache2 perl-Crypt-OpenSSL-Random perl-Crypt-OpenSSL-RSA libfuse2 tgt swig
7183c5b from CVS
graziano obertelli authored
73
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
74 * For Ubuntu 10.04, run the following command to install all required dependency packages:
7183c5b from CVS
graziano obertelli authored
75
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
76 apt-get install bzr gcc make apache2-threaded-dev ant openjdk-6-jdk\
77 libvirt-dev libcurl4-openssl-dev dhcp3-server vblade apache2 unzip curl vlan\
78 bridge-utils libvirt-bin kvm vtun
dd71609 test
graziano obertelli authored
79
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
80 * For CentOS 5 and Fedora 12, download and install RPMs the appropriate CentOS or Fedora RPM dependency package from the Eucalyptus website, then run the following command to install all required dependency packages:
81
82 yum install -y java-1.6.0-openjdk-devel ant ant-nodeps libvirt-devel curl-devel httpd httpd-devel apr-devel openssl-devel dhcp libxml2 libxml2-devel gnutls gnutls-devel xen-devel libgcrypt-devel zlib-devel perl-Convert-ASN1 perl-Crypt-OpenSSL-RSA perl-Crypt-OpenSSL-Random chkfontpath scsi-target-utils fuse-libs swig gcc
83
84 * For Debian, run the following command to install all required dependency packages:
85
86 apt-get install gcc make apache2-threaded-dev ant openjdk-6-jdk\
87 libvirt-dev libcurl4-dev dhcp3-server vblade apache2 unzip curl vlan\
88 bridge-utils libvirt-bin kvm sudo vtun
89
90 Please, consult the distribution-specific pages for detailed installation instructions.
91
92 Tools for interacting with Eucalyptus
93
94 To interact with Eucalyptus, you need to install EC2-compatible command-line tools. The instructions in Eucalyptus documentation rely on the euca2ools command-line tools distributed by the Eucalyptus Team. Many other third-party tools can also be used for some of the tasks, as described on the ecosystem page.
95
96 2. Download Eucalyptus and supplied dependencies
97 ================================================
98 In what follows substitute the desired version (e.g., 2.0.1) for $VERSION either manually or by setting a shell variable.
7183c5b from CVS
graziano obertelli authored
99
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
100 Download either
db9d106 Version is now 1.5.0. Dependencies for the cloud is in the open: need…
graziano obertelli authored
101
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
102 * eucalyptus-$VERSION-src.tar.gz (Eucalyptus source with included java libraries)
db9d106 Version is now 1.5.0. Dependencies for the cloud is in the open: need…
graziano obertelli authored
103
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
104 or
7183c5b from CVS
graziano obertelli authored
105
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
106 * eucalyptus-$VERSION-src-online.tar.gz (Eucalyptus source that will download java libraries at build-time)
7183c5b from CVS
graziano obertelli authored
107
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
108 and for both
7183c5b from CVS
graziano obertelli authored
109
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
110 * eucalyptus-$VERSION-src-deps.tar.gz (Eucalyptus C library dependency packages)
7183c5b from CVS
graziano obertelli authored
111
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
112 All packages can be found on the Eucalyptus Web site:
7183c5b from CVS
graziano obertelli authored
113
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
114 * http://open.eucalyptus.com/downloads
7183c5b from CVS
graziano obertelli authored
115
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
116 Unpack the Eucalyptus source:
7183c5b from CVS
graziano obertelli authored
117
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
118 tar zvxf eucalyptus-$VERSION-src.tar.gz
7183c5b from CVS
graziano obertelli authored
119
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
120 Now you should have a directory eucalyptus-$VERSION. To simplify the remainder of the installation, define EUCALYPTUS_SRC environment variable to be the top of the source tree of eucalyptus and the variable EUCALYPTUS to be the directory where eucalyptus will be installed (we recommend using /opt/eucalyptus/):
7183c5b from CVS
graziano obertelli authored
121
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
122 cd eucalyptus-$VERSION
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
123 export EUCALYPTUS_SRC=`pwd`
124 export EUCALYPTUS=/opt/eucalyptus
7183c5b from CVS
graziano obertelli authored
125
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
126 3. Build Dependencies
127 =====================
128 To install Eucalyptus, you need to build packages that Eucalyptus depends on, which we provide in the above-mentioned package eucalyptus-$VERSION-src-deps.tar.gz. For the sake of this discussion, we are going to assume that all packages have been untarred inside "$EUCALYPTUS_SRC/eucalyptus-src-deps/" as above and will be installed in "$EUCALYPTUS/packages".
7183c5b from CVS
graziano obertelli authored
129
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
130 Unpack the dependencies and create the directory you'll use to install them:
7183c5b from CVS
graziano obertelli authored
131
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
132 cd $EUCALYPTUS_SRC
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
133 tar zvxf ../eucalyptus-$VERSION-src-deps.tar.gz
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
134 mkdir -p $EUCALYPTUS/packages/
135
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
136 Build and install the dependencies. The following instructions work on some Linux distributions, but aren't universal. Please, consult the documentation for the specific packages for help with building them on your distribution.
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
137
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
138 a. Axis2
139 --------
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
140 cd $EUCALYPTUS/packages
141 tar zxvf $EUCALYPTUS_SRC/eucalyptus-src-deps/axis2-1.4.tgz
142
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
143 b. Axis2/C
144 ----------
145 To compile Axis2/C, you will need to locate development headers for Apache and for APR. On some distributions (e.g., Ubuntu and Debian) the following values should work:
146
147 export APACHE_INCLUDES=/usr/include/apache2
148 export APR_INCLUDES=/usr/include/apr-1.0
149
150 On CentOS 5, the headers should be in the following location:
151
152 export APACHE_INCLUDES=/usr/include/httpd/
153 export APR_INCLUDES=/usr/include/apr-1/
154
155 while on OpenSuse 11 you may find them at:
156
157 export APACHE_INCLUDES=/usr/include/apache2/
158 export APR_INCLUDES=/usr/include/apr-1/
159
160 With the two environment variables set, you can build and install Axis2/C as follows:
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
161
f2bdded updated INSTALL to reflect new version numbers of C dependencies (axi…
root authored
162 export AXIS2C_HOME=$EUCALYPTUS/packages/axis2c-1.6.0
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
163 cd $EUCALYPTUS_SRC/eucalyptus-src-deps/
f2bdded updated INSTALL to reflect new version numbers of C dependencies (axi…
root authored
164 tar zvxf axis2c-src-1.6.0.tar.gz
165 cd axis2c-src-1.6.0
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
166 CFLAGS="-w" ./configure --prefix=${AXIS2C_HOME} --with-apache2=$APACHE_INCLUDES --with-apr=$APR_INCLUDES --enable-multi-thread=no
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
167 make ; make install
168
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
169 c. Rampart/C
170 ------------
f2bdded updated INSTALL to reflect new version numbers of C dependencies (axi…
root authored
171 export AXIS2C_HOME=$EUCALYPTUS/packages/axis2c-1.6.0
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
172 export LD_LIBRARY_PATH=${AXIS2C_HOME}/lib:$LD_LIBRARY_PATH
173 cd $EUCALYPTUS_SRC/eucalyptus-src-deps/
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
174 tar zvxf rampartc-src-1.3.0-0euca1.tar.gz
f2bdded updated INSTALL to reflect new version numbers of C dependencies (axi…
root authored
175 cd rampartc-src-1.3.0
176 ./configure --prefix=${AXIS2C_HOME} --enable-static=no --with-axis2=${AXIS2C_HOME}/include/axis2-1.6.0
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
177 make ; make install
7183c5b from CVS
graziano obertelli authored
178
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
179 Next, change the following in $AXIS2C_HOME/axis2.xml. In the 'inflow' section, change:
7183c5b from CVS
graziano obertelli authored
180
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
181 <!--phase name="Security"/-->
7183c5b from CVS
graziano obertelli authored
182
183 to
184
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
185 <phase name="Security"/>
7183c5b from CVS
graziano obertelli authored
186
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
187 In the 'outflow' section, change:
7183c5b from CVS
graziano obertelli authored
188
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
189 <!--phase name="Security"/-->
7183c5b from CVS
graziano obertelli authored
190
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
191 to
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
192
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
193 <phase name="Security"/>
7183c5b from CVS
graziano obertelli authored
194
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
195 4. Building Eucalyptus
196 =======================
197 First, make sure JAVA_HOME is defined. For example, on Centos 5:
7183c5b from CVS
graziano obertelli authored
198
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
199 export JAVA_HOME="/usr/lib/jvm/java-openjdk/"
200 export JAVA="$JAVA_HOME/JRE/bin/java"
7183c5b from CVS
graziano obertelli authored
201
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
202 then, build Eucalyptus:
7183c5b from CVS
graziano obertelli authored
203
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
204 cd $EUCALYPTUS_SRC
f2bdded updated INSTALL to reflect new version numbers of C dependencies (axi…
root authored
205 ./configure --with-axis2=$EUCALYPTUS/packages/axis2-1.4 --with-axis2c=$EUCALYPTUS/packages/axis2c-1.6.0 --enable-debug --prefix=$EUCALYPTUS
d2e41d5 final INSTALL file that mirrors the website documentation
root authored
206 make ; make install
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
207
208 5. Deploying Eucalyptus
209 =======================
210 At this point, if you plan to use Eucalyptus on more than one node, you're ready to push the software out to the other nodes (although not all software components are required on all nodes, it is simpler to just mirror everything and selectively enable components via start-up scripts). If you installed Eucalyptus in its own directory, you can just sync the entire package to all of the hosts listed above using whatever mechanism you typically use to push changes to nodes (rsync, for instance).
211
212 rsync -a $EUCALYPTUS/ root@{node-host-1}:$EUCALYPTUS/
213 rsync -a $EUCALYPTUS/ root@{node-host-1}:$EUCALYPTUS/
7183c5b from CVS
graziano obertelli authored
214 ...
215
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
216 On installations without a root user, such as Ubuntu, it may be easier to pull the software from each node one at a time:
7183c5b from CVS
graziano obertelli authored
217
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
218 node1# rsync -a {user}@{front-end}:$EUCALYPTUS/ $EUCALYPTUS/
219 node2# rsync -a {user}@{front-end}:$EUCALYPTUS/ $EUCALYPTUS/
220 ...
7183c5b from CVS
graziano obertelli authored
221
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
222 NOTE: Installing Eucalyptus in the same directory on all nodes will make it easier to manage it, so we strongly advise you to do so.
223 6. Configure Hosts
7183c5b from CVS
graziano obertelli authored
224
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
225 a. Set up a 'eucalyptus' user on all machines
226 ---------------------------------------------
227 Eucalyptus will run as regular user on your systems, which you'll need to add before running Eucalyptus (we will use eucalyptus) on all machines. For most distributions, this task is accomplished by running the command:
7183c5b from CVS
graziano obertelli authored
228
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
229 useradd eucalyptus
7183c5b from CVS
graziano obertelli authored
230
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
231 For OpenSUSE, use:
7183c5b from CVS
graziano obertelli authored
232
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
233 groupadd eucalyptus
234 useradd eucalyptus -m -g eucalyptus
7183c5b from CVS
graziano obertelli authored
235
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
236 b. Configure your hypervisor
237 ----------------------------
238 Ensure that this user can control your hypervisor through libvirt on all compute nodes. On some distributions, this can be accomplished by adding eucalyptus to group libvirt or libvirtd in file /etc/group. Please consult the documentation for libvirt on your distribution for instructions. See Hypervisor Configuration for more detailed information.
7183c5b from CVS
graziano obertelli authored
239
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
240 c. Configure your network
241 -------------------------
242 Eucalyptus provides several networking modes from which to choose, depending on your local network setup, capabilities, and the networking features that you wish to take advantage of within Eucalyptus. Most networking options require that, on your node controllers, the primary interface is configured to be a bridge (this is the default configuration with some distribution's Xen hypervisor configuration). See Network Configuration for more information and set-up instructions. Once you have decided which network mode you will be using, you may be required to set up ethernet bridges on Eucalyptus component machines. Example bridge configuration steps can be found here.
7183c5b from CVS
graziano obertelli authored
243
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
244 d. Configure Eucalyptus components
245 ----------------------------------
246 On your compute nodes, create a local directory where VM images are to be placed temporarily while VMs are running (images will be cached under the same path, too). It is important that the directory is empty as everything in it will be removed. Be sure to pick a partition with ample disk space as VM images can be large. We use /usr/local/eucalyptus in the example below.
6081744 changed version to 1.6.1 for full testing with correct version number
root authored
247
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
248 Place the mandatory parameters (including the type of hypervisor you plan to use) into the configuration file and set up the permissions on Eucalyptus files appropriately on all nodes. Both tasks can be accomplished with flags to euca_conf tool:
6081744 changed version to 1.6.1 for full testing with correct version number
root authored
249
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
250 * -d specifies the root of Eucalyptus installation ($EUCALYPTUS)
251 * --hypervisor specifies the hypervisor ('xen' or 'kvm')
252 * --instances specifies where, on compute nodes, instance files will be stored
253 * --user specifies the user that you created for running Eucalyptus
254 * --setup invokes the first-time setup tasks
6081744 changed version to 1.6.1 for full testing with correct version number
root authored
255
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
256 $EUCALYPTUS/usr/sbin/euca_conf -d $EUCALYPTUS --hypervisor kvm --instances /usr/local/eucalyptus --user eucalyptus --setup
6081744 changed version to 1.6.1 for full testing with correct version number
root authored
257
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
258 e. Distribution-specific post configuration steps
259 -------------------------------------------------
260 Some linux distributions require that the admin perform a few extra steps before bringing up Eucalyptus. This section details some of these steps:
6081744 changed version to 1.6.1 for full testing with correct version number
root authored
261
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
262 For Ubuntu, apparmor needs to be configured to allow dhcpd3 to write to the filesystem. Add the following lines to '/etc/apparmor.d/usr.sbin.dhcp3':
7183c5b from CVS
graziano obertelli authored
263
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
264 /opt/eucalyptus/var/run/eucalyptus/net/ r,
265 /opt/eucalyptus/var/run/eucalyptus/net/** r,
266 /opt/eucalyptus/var/run/eucalyptus/net/*.pid lrw,
267 /opt/eucalyptus/var/run/eucalyptus/net/*.leases* lrw,
268 /opt/eucalyptus/var/run/eucalyptus/net/*.trace lrw,
7183c5b from CVS
graziano obertelli authored
269
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
270 where you substitute '/opt/eucalyptus' with the path to where you have chosen to install Eucalyptus. Then, restart apparmor (NOTE: sometimes changes don't take effect right away - either wait or reboot the system to be sure):
7183c5b from CVS
graziano obertelli authored
271
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
272 /etc/init.d/apparmor stop
273 /etc/init.d/apparmor start
7183c5b from CVS
graziano obertelli authored
274
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
275 Also, since Ubuntu DHCP daemon is configured to run as 'dhcpd' and not root, ensure that the following two variables are set as follows in the $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf file on the Cluster head-node:
7183c5b from CVS
graziano obertelli authored
276
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
277 VNET_DHCPDAEMON="/usr/sbin/dhcpd3"
278 VNET_DHCPUSER="dhcpd"
7183c5b from CVS
graziano obertelli authored
279
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
280 At this point you should be ready to start Eucalyptus processes on all nodes but before doing so you may want to configure the Eucalyptus network: you can read more about it at Network Configuration.
7183c5b from CVS
graziano obertelli authored
281
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
282 f. Configure your startup scripts
283 ---------------------------------
284 If you want to have eucalyptus started automatically when your machines are (re)booted, you can add the following symlinks on the appropriate hosts: add eucalyptus-cloud on the Cloud head-node, add eucalyptus-cc on the Cluster head-node(s), and add eucalyptus-nc on the compute node(s)
285
286 ln -sf $EUCALYPTUS/etc/init.d/eucalyptus-cloud /etc/init.d/eucalyptus-cloud
287 ln -sf $EUCALYPTUS/etc/init.d/eucalyptus-cc /etc/init.d/eucalyptus-cc
288 ln -sf $EUCALYPTUS/etc/init.d/eucalyptus-nc /etc/init.d/eucalyptus-nc
289
290 and then add the symlinks to the distribution's booting process. This process differs from distribution to distribution. For example if you have update-rc.d available you can run:
291
292 update-rc.d eucalyptus-cloud defaults
7183c5b from CVS
graziano obertelli authored
293
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
294 or if you have chkconfig available you can run:
7183c5b from CVS
graziano obertelli authored
295
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
296 chkconfig eucalyptus-cloud on
7183c5b from CVS
graziano obertelli authored
297
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
298 7. Running Eucalyptus
299 =====================
300 Eucalyptus comes with the euca_conf script for configuring Eucalyptus. For some requests it modifies the configuration file located in '$EUCALYPTUS/etc/eucalyptus/eucalyptus.conf' (which can also be edited manually), for other requests it modifies the database maintained by the Cloud Controller (much of that functionality is duplicated in the Web interface, to be described later).
7183c5b from CVS
graziano obertelli authored
301
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
302 In addition to modifying the configuration, euca_conf attempts to synchronize x509 credentials across the nodes of a Eucalyptus installation by relying on rsync and scp. We highly recommend setting up password-less SSH access for the root user across all nodes of your Eucalyptus installation (otherwise, euca_conf will prompt you for remote system passwords).
7183c5b from CVS
graziano obertelli authored
303
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
304 As explained in the overview, a Eucalyptus installation consists of five types of components: cloud controller (CLC), Walrus, cluster controller (CC), storage controller (SC), and the node controller(s) (NCs). In following instructions we assume that all components except the NCs are co-located on one machine that we refer to as the front end and that NCs run on one or more other machines referred to ascompute nodes.
7183c5b from CVS
graziano obertelli authored
305
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
306 To run Eucalyptus, first, make sure that you have all of the runtime dependencies of Eucalyptus installed, based on your chosen set of configuration parameters. If there is a problem with runtime dependencies (for instance, if Eucalyptus cannot find/interact with them), all errors will be reported in log files located in $EUCALYPTUS/var/log/eucalyptus. For more information on Eucalyptus log files and error reports, please see Troubleshooting Eucalyptus.
7183c5b from CVS
graziano obertelli authored
307
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
308 Next, inspect the contents of $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf carefully, on each machine, to make sure that the settings are appropriate for your environment. Once you have confirmed that everything is configured properly, enable the cloud services on the front-end:
7183c5b from CVS
graziano obertelli authored
309
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
310 # enable services on the front-end
311 $EUCALYPTUS/usr/sbin/euca_conf -d $EUCALYPTUS --setup
312 $EUCALYPTUS/usr/sbin/euca_conf -d $EUCALYPTUS --enable cloud --enable walrus --enable sc
7183c5b from CVS
graziano obertelli authored
313
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
314 BEFORE STARTING EUCALYPTUS SERVICES! If you are upgrading from Eucalyptus 1.6.2 to Eucalyptus 2.0, return now to the Upgrade Instructions, and proceed with running the upgrade commands for the front-end and nodes as specified. If you are performing a first-time installation, you may proceed with the following steps and start Eucalyptus services:
7183c5b from CVS
graziano obertelli authored
315
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
316 Start each component on the appropriate host.
7183c5b from CVS
graziano obertelli authored
317
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
318 # start enabled front-end services
319 $EUCALYPTUS/etc/init.d/eucalyptus-cloud start
7183c5b from CVS
graziano obertelli authored
320
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
321 # start the cluster controller
322 $EUCALYPTUS/etc/init.d/eucalyptus-cc start
323
324 And on each of the compute nodes run:
325
326 $EUCALYPTUS/etc/init.d/eucalyptus-nc start
7183c5b from CVS
graziano obertelli authored
327
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
328 To stop them you call the script with stop instead of start.
7183c5b from CVS
graziano obertelli authored
329
ecd6a92 updated INSTALL and CHANGELOG (for 2.0.1).
Neil authored
330 NOTE: if you later decide to make changes to $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf that will effect the cluster-controller, make sure to use the 'cleanstart', 'cleanstop', and/or 'cleanrestart' directives to the init scripts (as opposed to start/stop/restart). This will both remove all existing CC state, and will cause it to re-read the configuration file.
7183c5b from CVS
graziano obertelli authored
331
Something went wrong with that request. Please try again.