The commoditization of technology has reached its pinnacle with the advent of the recent paradigm of Cloud Computing. Infosys Cloud Computing blog is a platform to exchange thoughts, ideas and opinions with Infosys experts on Cloud Computing

« Catalysts influencing the emergence of Cloud Computing | Main | Cloud Computing - Security Concerns - pt1 »

Hands On: Building a Private Cloud using Open Source Solutions Part 1: Setting up Cloud Infrastructure using Eucalyptus Open Cloud Platform

 In this series, I'll blog mainly on our experiences with open source technologies encountered in the course of setting up a fully functional private cloud, using open source technologies, inside Infosys SETLabs, Bangalore. I'll take you through analysis, deployment details and problems encountered while using technologies ranging from Distributed FileSharing Systems to Open Source Cloud Computing Infrastructure Solutions.

For ease of explanation I've divided this blog into parts:

  • Setting up Cloud Infrastructure using Eucalyptus Open Cloud Platform

  • Building Images with different flavors

  • Hadoop on Eucalyptus

This is not a complete list and I'll keep adding the new stuff that we are implementing.

1. Setting up Cloud Infrastructure using Eucalyptus Open Cloud Platform

     The private cloud that we planned to setup was to be completely based on open source solutions. Any enhancements, tools that are to be used for supporting the solution are also open source. While using open source has its huge advantages like ease of avaliablity, ability to freely modify the code to fit your purpose and ofcourse "cost"Cool ; it doesn't come gift wrapped with detailed documentation or support.

 So I'll take you in detail on our approach:

a. Setting up the base environment:

     Networking

  Infosys has a strong and vast intranet spread over multiple continents. This provided a strong networking foundation to our endeavor, taking care of issues like i.p address allocation, bandwidth, security(only upto an extent)etc. We wanted the private cloud to be a part of this intranet(ie: instances accessible to intranet users; installation, mantainence etc can be done remotely etc.) but then there was to be a layer of authorization required to work on the cloud. Just being a part of the intranet shouldn't give you access to the private cloud. Eucalyptus managment console took care of this part very well. Eucalyptus manages user authentication based on ticket generation. Only users with registered tickets can use the cloud infrastructure.

 Operating System and Hypervisior

 Xen was the primary choice for hypervisior layer mainly because that was the only one that Eucalyptus supported at the time(Eucalyptus 1.5 supports both xen and kvm). CentOS is a community-supported, freely-available operating system based on Red Hat Enterprise Linux. It provides a free enterprise class computing platform and maintains 100% binary compatibility with its upstream distribution. The main catch point was that it came bundled with xen. So with a single installation we had our job cut by half. We had the base set to begin Eucalyptus installation.

b. Installing Eucalyptus Open Cloud Platform

 A lot has already been said about Eucalyptus: 1, 2, 3. So I'll just skip over that part and go directly to the deployment part.

  Installing

 The source can be downloaded directly from their site(Eucalyptus has started providing binary installables for popular distributions which makes the job much simpler. But we stuck to the source installation so that the full power of open source like applying patches, upgradation etc could be tapped.). The installation documents provided are pretty straight forward.

But certain assumptions are made in those documents, like unrestricted access to the internet from terminal, absence of firewalls etc. But one of the factors that needs to be considered while setting up a private cloud is that access to the internet may prove to be a security breach. So we planned to setup the whole infrastructure from machines with limited or no access to the internet. The solution that we found was to manually download the packages required and host it on a local Apache server and make the installation point to our server instead of the internet.

 Configuration

 Networking Mode: Due to the fact that we were deploying Eucalyptus on the Infosys Intranet, we decided to use the SYSTEM Networking mode. In this mode Eucalyptus relys on an external DHCP server for address allocation. So an instance created using Eucalyptus will aquire i.p address like any other machine from the DNS server.

 Turning Firewall Off: Firewall configuration present in CentOS didn't allow the Eucalyptus services to be visible outside. So I followed janispike's blog, to turn firewall off.

 Adding Nodes: Nodes were added using the command

$EUCALYPTUS/usr/sbin/euca_conf -nodes "<nodehost1> ... <nodehostN>" $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
$EUCALYPTUS/usr/sbin/euca_sync_key -c $EUCALYPTUS/etc/eucalyptus/eucalyptus.conf
 Now the Eucalyptus Cloud is setup and ready for use. In the next section I'll talk about Creating Images to be hosted on Eucalyptus.

 

TrackBack

TrackBack URL for this entry:
http://www.infosysblogs.com/cloudcomputing-mt/mt-tb.fcgi/12

Comments

Please link to [Eucalyptus Open Cloud Platform
] -->
http://open.eucalyptus.com/

Now, this is fascinating. The power of Cloud Computing is not limited to big players like Microsoft or Amazon. This is a very subtle dimension of Clouting (Cloud Computing)...
Small start-ups/education hubs/network of dedicated consumers like medical stores, accounting firms, etc can be covered in private clouds.

I don't know how much feasible that would be, but a big idea brings in great feasiblity to its derived ideas as well.
Data security can also be ensured as these hubs can be covered like an intranet and because their data is isolated from the Internet, it is more safe.

We have implemented a eucalyptus cloud in our test environment to use for hosting websites and it has worked very well.

Our goal is to use Eucalyptus for our file server and mail server.

I am trying to set up a private cloud using EUCALYPTUS open source. I downloaded the required files as per the document. But the end part of install document is confusing like prerequesting. Is all prerequest a must? If you know any sample cloud, please share the site address. That will help me to understand.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

Please key in the two words you see in the box to validate your identity as an authentic user and reduce spam.

Subscribe to this blog's feed
Off the Shelf: The Retail & CPG blog from Infosys - Visit

Infosys on Twitter