This repository contains kickstart templates and scripts used to build the Eucalyptus Load Balancer EMI.
The easiest way to get load balancer support into your Eucalyptus 3.3 installation is to install the RPM package. The latest milestone release can be obtained from the repository here. Of course, you'll first need to have the Eucalyptus 3.3 milestone 4 release installed on your system. Once that is complete, you can install load balancer support from the same package repository. Run the following command on the box hosting your Cloud Controller:
$ yum install eucalyptus-load-balancer-image-devel
By running that command you'll install the development version of the load balancer image. To install the release version of the image, you can run the following instead:
$ yum install eucalyptus-load-balancer-image
You can read more about the differences between the development and released versions of the image below. Now that you've installed the package, you now need to load the image into Eucalyptus. You can do that with the following commands:
$ cd /usr/share/eucalyptus-load-balancer-image-devel
$ eustore-install-image -t eucalyptus-load-balancer-image-devel.tgz \
-a x86_64 -s loadbalancer -b loadbalancer
Once you've loaded the image, you'll need to find the EMI of the image by describing installed images:
$ . ~/eucarc # source your euca creds
$ euca-describe-images | grep loadbalancer
Find the correct EMI number for the load balancer and use that to configure load balancer support using the configuration instructions below.
You'll notice that in the repository there are two separate kickstart templates:
- eucalyptus-load-balancer-image.ks.in - This kickstart builds the image that will ship with Eucalyptus
- eucalyptus-load-balancer-image-devel.ks.in - This kickstart builds an image that is useful for development (e.g., you can SSH into this one and muck around)
To build a tarball that is compatible with eustore, do the following:
$ scripts/build-eustore-tarball.sh <kickstart-template>
Where kickstart is either the template for the release or development version of the EMI. This tarball can then be packaged as an RPM by running the following commands:
$ scripts/build-rpm.sh
If you're building the development version of the image, run this instead:
$ scripts/build-rpm.sh devel
The RPM packages built will be placed in the results subdirectory.
You'll need to use the eustore tools in order to install the image into your cloud. First, copy the eustore tarball that was created when you ran build-eustore-tarball.sh to your Eucalyptus Cloud Controller. Then run the following command:
$ eustore-install-image -b <bucket_name> -a x86_64 -s loadbalancer -t eucalyptus-load-balancer-image.tgz
Now that the image is installed, you'll need to make sure that you configure properties for the load balancer. At a minimum you will need to configure the EMI of your load balancer, as well as the load balancer instance type.
$ euca-modify-property -p loadbalancing.loadbalancer_emi=emi-12345678
$ euca-modify-property -p loadbalancing.loadbalancer_instance_type=m1.small