23
* eucalyptus-1.5.1-src.tar.gz (Eucalyptus source with included java
23
* eucalyptus-1.6.1-src.tar.gz (Eucalyptus source with included java
28
* eucalyptus-1.5.1-src-online.tar.gz (Eucalyptus source that will
28
* eucalyptus-1.6.1-src-online.tar.gz (Eucalyptus source that will
29
29
download java libraries at build-time)
33
* eucalyptus-1.5.1-src-deps.tar.gz (Eucalyptus C library dependency
33
* eucalyptus-1.6.1-src-deps.tar.gz (Eucalyptus C library dependency
36
36
All packages can be found on the Eucalyptus Web site:
40
40
Unpack the Eucalyptus source:
43
tar zvxf eucalyptus-1.5.1-src.tar.gz
43
tar zvxf eucalyptus-1.6.1-src.tar.gz
46
Now you should have a directory eucalyptus-1.5.1. To simplify the
46
Now you should have a directory eucalyptus-1.6.1. To simplify the
47
47
remainder of the installation, define EUCALYPTUS_SRC environment
48
48
variable to be the top of the source tree of eucalyptus and the
49
49
variable EUCALYPTUS to be the directory where eucalyptus will be
50
50
installed (we recommend using `/opt/eucalyptus/`):
54
54
export EUCALYPTUS_SRC=`pwd`
55
55
export EUCALYPTUS=/opt/eucalyptus
61
61
To install Eucalyptus, you need to build packages that Eucalyptus
62
62
depends on, which we provide in the above-mentioned package
63
eucalyptus-1.5.1-src-deps.tar.gz. For the sake of this discussion, we
63
eucalyptus-1.6.1-src-deps.tar.gz. For the sake of this discussion, we
64
64
are going to assume that all packages have been untarred inside
65
65
"$EUCALYPTUS_SRC/eucalyptus-src-deps/" as above and will be installed
66
66
in "$EUCALYPTUS/packages".
148
148
documentation of the dependent package for help (e.g., see apache.org
149
149
Web site for help with compiling the httpd server).
151
Furthermore, you are required to have functioning EC2 command-line
152
tools from Amazon. The latest version of these tools that we support
153
are [http://s3.amazonaws.com/ec2-downloads/ec2-api-tools-1.3-30349.zip
154
ec2-api-tools-1.3-30349] and
155
[http://s3.amazonaws.com/ec2-downloads/ec2-ami-tools-1.3-26357.zip
156
ec2-ami-tools-1.3-26357].
151
Furthermore, you are required to have functioning Euca2ool command-line
152
tools downloaded and installed from the Eucalyptus website.
158
154
3. Building Eucalyptus
159
155
----------------------------------------------------------------------
214
210
=== a. Front-end Configuration ===
216
To connect the Eucalyptus components together, you will need to
217
register the Cluster with the Cloud, and register each Node with the
218
Cluster. On the front-end, do:
221
/opt/eucalyptus/usr/sbin/euca_conf -addcluster <clustername> <clusterhost> /opt/eucalyptus/etc/eucalyptus/eucalyptus.conf
224
where <clustername> is the name your would like to attach to your
225
Cluster, and <clusterhost> is the hostname of the machine or the IP
226
where the Cluster Controller is running. Also on the front-end, add
227
the hostnames on which you plan to run node controllers one-by-one
228
(this involves connecting to the node via SSH to propagate the
229
cryptographic keys, so you may be prompted for a password):
232
$EUCALYPTUS/usr/sbin/euca_conf -addnode <nodehost> $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
235
where <nodehost> is the hostname or IP of your node. Alternatively,
236
you can add nodes all at once with the `-nodes` option, which requires
237
you to explicitly propagate cryptographic keys afterwards:
240
$EUCALYPTUS/usr/sbin/euca_conf -nodes "<nodehost1> ... <nodehostN>" $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
241
$EUCALYPTUS/usr/sbin/euca_sync_key -c $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
212
There are four front-end components (Cloud-controller, Walrus,
213
Storage-controller and Cluster-controller). The CLC, Walrus and the
214
SC are services that must be enabled independently and are all
215
controlled using the 'eucalyptus-cloud' initialization script. To enable the services, on the front-end, run:
218
$EUCALYPTUS/usr/sbin/euca_conf --enable cloud
219
$EUCALYPTUS/usr/sbin/euca_conf --enable walrus
220
$EUCALYPTUS/usr/sbin/euca_conf --enable sc
223
There are correponding '--disable' options for disabling a service. Note that enabling/disabling services requires a (re)start of the 'eucalyptus-cloud' service in order for the change to take effect.
244
225
OPTIONAL: Eucalyptus provides some options when it comes to
245
226
configuring your VM virtual network. By default, we enable the
248
229
DHCP server configured to serve IP addresses to VMs that start on
249
230
cluster nodes. Please consult the the brief explanation in the
250
231
comments of the configuration file and the
251
[http://eucalyptus.cs.ucsb.edu/wiki/EucalyptusNetworking_v1.5
232
[http://eucalyptus.cs.ucsb.edu/wiki/EucalyptusNetworking_v1.6
252
233
Eucalyptus Networking] document if you wish to try other modes that
253
234
will enable more features (security groups, elastic IPs, etc.).
282
263
each of your nodes is configured properly. For instance, correct
283
264
values for VNET_INTERFACE and VNET_BRIDGE may differ from your
285
[http://eucalyptus.cs.ucsb.edu/wiki/EucalyptusNetworking_v1.5
266
[http://eucalyptus.cs.ucsb.edu/wiki/EucalyptusNetworking_v1.6
286
267
Eucalyptus Networking] for more details.
288
269
6. Running Eucalyptus
335
316
chkconfig eucalyptus-cloud on
338
7. First-time Run-time Setup
319
7. Component Registration
320
----------------------------------------------------------------------
322
To connect the Eucalyptus components together, you will need to
323
register the Walrus, Storage-controller, and Cluster-controller with
324
the Cloud-controller, then register each Node-controller with the
325
Cluster-controller. On the front-end, run:
328
$EUCALYPTUS/usr/sbin/euca_conf --register-walrus <front-end-ip> $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
329
$EUCALYPTUS/usr/sbin/euca_conf --register-cluster <clustername> <front-end-ip> $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
330
$EUCALYPTUS/usr/sbin/euca_conf --register-sc <clustername> <front-end-ip> $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
333
where <clustername> is the name your would like to attach to your
334
Cluster, and <front-end-ip> is the hostname of the machine or the IP
335
where the Walrus, Storage-controller, and Cluster-controller are
336
running. Finally, on the front-end, register Node-controllers
337
one-by-one (this involves connecting to the node via SSH to propagate
338
the cryptographic keys, so you may be prompted for a password):
341
$EUCALYPTUS/usr/sbin/euca_conf --register-nodes "<nodehost1> <nodehost2> ... <nodehostn> $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
344
8. First-time Run-time Setup
339
345
----------------------------------------------------------------------
341
347
To configure eucalyptus, after you started all components, login to
359
365
After completing the first-time tasks, you will see the
360
'Configuration' tab. To use the system with the EC2 client tools, you
361
must generate user credentials. Click the 'Credentials' tab and
362
download your certificates via the 'Download certificates' button.
363
You will be able to use these x509 certificates with Amazon EC2 tools
364
and third-party tools like rightscale.com.
366
'Configuration' tab. To use the system with the Euca2ools client
367
tools, you must generate user credentials. Click the 'Credentials'
368
tab and download your certificates via the 'Download certificates'
369
button. You will be able to use these credentials with Euca2ools,
370
Amazon EC2 tools and other third-party tools such as rightscale.com.
366
372
Create a directory, for example $HOME/.euca,
378
384
Note that you will have to source this file every time you intend to
379
use the EC2 command-line tools, or you may add it to your local
385
use the Euca2ools command-line tools, or you may add it to your local
380
386
default environment.
382
8. Adding images to Eucalyptus
388
9. Adding images to Eucalyptus
383
389
----------------------------------------------------------------------
385
391
First off, be sure to source the 'eucarc' file before running the
388
394
To run VMs, one must add a root disk image, a kernel, and, optionally,
389
395
a ramdisk for the kernel. Each is added to Walrus separately, using
390
three EC2 commands. The following example uses the test image that we
396
three Euca2ool commands. The following example uses the test image that we
391
397
provide. Note that this image may or may not work within your local
392
398
hypervisor environment. It is highly recommended that you try to
393
399
manually run the image on your hypervisor before trying to use it
398
404
Add the root filesystem image to Walrus:
400
; ec2-bundle-image -i ttylinux.img
401
; ec2-upload-bundle -b image-bukkit -m /tmp/ttylinux.img.manifest.xml
402
; ec2-register image-bukkit/ttylinux.img.manifest.xml
406
; euca-bundle-image -i ttylinux.img
407
; euca-upload-bundle -b image-bukkit -m /tmp/ttylinux.img.manifest.xml
408
; euca-register image-bukkit/ttylinux.img.manifest.xml
406
; ec2-bundle-image -i vmlinuz-2.6.16.33-xen --kernel true
407
; ec2-upload-bundle -b kernel-bukkit -m /tmp/vmlinuz-2.6.16.33-xen.manifest.xml
408
; ec2-register kernel-bukkit/vmlinuz-2.6.16.33-xen.manifest.xml
412
; euca-bundle-image -i vmlinuz-2.6.16.33-xen --kernel true
413
; euca-upload-bundle -b kernel-bukkit -m /tmp/vmlinuz-2.6.16.33-xen.manifest.xml
414
; euca-register kernel-bukkit/vmlinuz-2.6.16.33-xen.manifest.xml
410
416
Although our test image does not require a ramdisk, one can be added
411
417
in the manner similar to the kernel by using "--ramdisk true" flag.
415
421
'Configuration' tab and add the eki-xxxxxxxx and eri-xxxxxxxx as the
416
422
defaults kernel/ramdisk to be used when no kernel is specified.
418
Now you should be able to run all the EC2 commands.
424
Now you should be able to run all the Euca2ool commands.
421
427
Please see http://open.eucalyptus.com for more info, downloads,