Showing posts with label computing. Show all posts
Showing posts with label computing. Show all posts

Wednesday, July 14, 2010

VIT’s very own Cloud Computing Centre #3

ani_thumb[1]
It’s now time for the third article in the series of articles on cloud computing.

This time I will cover Eucalyptus, a Linux based , open-source software infrastructure for the implementation of cloud computing on computer clusters which provides an interface that is compatible with the Amazon EC2 service.

A Eucalyptus cloud setup consists of five types of components. The cloud controller (CLC) and "Walrus" are top-level components, with one of each in a cloud installation. The cloud controller is a Java program that offers EC2-compatible SOAP and "Query" interfaces, as well as a Web interface to the outside world. In addition to handling incoming requests, the cloud controller performs high-level resource scheduling and system accounting. Walrus, also written in Java, implements bucket-based storage, which is available outside and inside a cloud through S3-compatible SOAP and REST interfaces.

Top-level components can aggregate resources from multiple clusters (i.e., collections of nodes sharing a LAN segment, possibly residing behind a firewall). Each cluster needs a cluster controller (CC) for cluster-level scheduling and network control and a "storage controller" (SC) for EBS-style block-based storage. The two cluster-level components would typically be deployed on the head-node of a cluster. Finally, every node with a hypervisor will need a node controller (NC) for controlling the hypervisor. CC and NC are written in C and deployed as Web services inside Apache; the SC is written in Java. Communication among these components takes place over SOAP with WS-security.

Many instructions in this article refer to a single-cluster installation, in which all components except NC are co-located on one machine, which we refer to as front-end. All other machines, running only NCs, will be referred to as nodes. In more advanced configurations, such as those with multiple CCs or with Walrus deployed separately, the front-end will refer to just the machine running the CLC.

Eucalyptus can be installed from source or using a set of packages (RPM and DEB). The former method is more general and should work on practically any Linux system, the latter is easier but will only work on the distributions that Eucalyptus support. As of 1.6 they are:

CentOS 5.4,
Debian squeeze,
OpenSUSE 11, and
Ubuntu 9.04 "Jaunty" and 9.10 "Karmic".


To install eucalyptus on CentOS refer this link : http://open.eucalyptus.com/wiki/EucalyptusInstallationCentos_v1.6

For configuration details refer the following links in order:

http://open.eucalyptus.com/wiki/first-time-setup-16
http://open.eucalyptus.com/wiki/hypervisor-configuration
http://open.eucalyptus.com/wiki/EucalyptusNetworking_v1.6
Once Eucalyptus is installed, the management tools called Euca2ools should be installed. For this refer to http://open.eucalyptus.com/wiki/Euca2oolsCentosInstall_v1.1

To troubleshoot, look at the eucalyptus forums.  You can also ask your questions by commenting on the article.

Next time, we will look into cloud management using Euca2ools.

Tuesday, June 1, 2010

VIT’s very own Cloud Computing Centre #2

ani_thumb[1] This is the second instalment in the series of articles on Cloud Computing. As promised in the previous article, this article will cover two major topics

 

 

 

  • Deployment Models
  • Importance of Interoperability and open standards in Cloud Computing.

Deployment Models:

1. Public Clouds: Public clouds are based on the standard cloud computing model, where a service provider provides resources (Applications, platforms, Infrastructure) to the general public over the Internet. Public cloud services may be free or priced on pay-per-usage model.

Benefits:

  1. Easy access to resources through the Internet
  2. Inexpensive due to the payment model.
  3. Scalability(The most important benefit of cloud computing i.e. elasticity)

Examples of Public Clouds: Amazon EC2 service –> paid service ->provider of Iaas, Google App engine –> paid service –>PaaS, Google Docs –>Free (I'm not sure if they have an enterprise subscription) ->SaaS

2. Private Clouds: Private clouds are similar to Public clouds, except that they are build on private networks. The idea behind private cloud is to deliver the benefits of cloud computing at the same time reducing the security risks that arise with public clouds. Private clouds are best suited for large corporations that are not comfortable with having their data on a public cloud. It is estimated that private clouds will be adopted more in the coming years until all the security concerns are addressed. Eucalyptus is an open source software used to build private clouds. The cloud infrastructure that is being build at VIT by the Linux User Group is powered by Eucalyptus.

3. Hybrid Clouds: Hybrid cloud is an environment in which some resources are kept in-house (may be on a private cloud) and some resources are placed on the public cloud. This setup is also ideal for corporations.

Interoperability:

Interoperability w.r.t Cloud Computing refers to the ability of customers to use the same artefacts (Management tools, OS images, APIs) with a variety of cloud computing vendors. Let me give you two examples:

a) GNU/Linux images running on Amazon EC2 should be able to run on Slicehost without changes.

b) The Office documents created on Google Docs should be editable on other Vendor services.

The idea behind open standards and interoperability is to avoid vendor lock-in so that customers can migrate between vendors depending on their service. It is an important issues as proprietary lock-in can hinder the adoption of cloud computing. If cloud computing is to move ahead, vendors need to put aside their differences and agree on common principles related to security and the interoperability of cloud platforms. A lot of groups and forums have been formed to address these issues of which the important ones are CCIF and DMTF.

In the next article I will cover a step by step procedure to build your own Private Cloud. Till we meet again, Happy reading.

Tuesday, May 25, 2010

VIT’s very own Cloud Computing Centre #1

ani We finally got Anirudh Nair to speak up about the Cloud Computing Centre he and some more students from VIT are working so hard on. The cloud is going to be located at MB 111 (if you’re still in campus, feel free to give them a visit).

The cloud computing centre is a collaborative venture by LUG@VIT.

Setting up a cloud hasn’t been easy, and here we have Anirudh Nair sharing his experiences with you in a series of articles. Enjoy!

This is the first in the series of articles on Cloud Computing. In this article I will cover the basic idea behind cloud and the different services that are possible with cloud computing.

Cloud computing has been a buzzword for quite sometime now. Over the past few years cloud computing has matured from a mere buzzword to a dynamic infrastructure used by hundreds of organizations around the world.  All the major IT companies already have a cloud related product in the market.

The cloud technology is still evolving and a rigid definition of cloud is not possible. In simple terms a Cloud is an infrastructure of dynamic resources which are utilized on demand. They are basically a clusters of computer nodes which are scaled as and when required.

The three fundamental services possible through cloud computing are

         a) Infrastructure as a service (Iaas)
         b) Platform as a service (PaaS)
         c) Software as a service (SaaS)

I'll touch upon each of the services in detail. 

IaaS:

Infrastructure service delivers virtualized hardware(processor, RAM, network adapters)  as a service. So, instead of purchasing a server or data center or network equipments, clients can get these resources as a service. The service is billed on as per the amount of resource consumed. Amazon Web Services (AWS) is the most successful IaaS provider to date. Amazon's Elastic Compute Cloud (EC2) offers, as the name suggests, server power that can grow and contract in line with an organization's demands.

PaaS:

PaaS offerings may include facilities for application design, application development, testing, deployment and hosting as well as application services such as team collaboration, web service integration and marshalling, database integration, security, scalability, storage, persistence, state management, application versioning, application instrumentation and developer community facilitation. These services may be provisioned as an integrated solution over the web. An example of PaaS is Google App Engine.

SaaS:

SaaS,  is software that is deployed over a network. With SaaS, a provider licenses an application to customers as a service on demand, through a subscription or a “pay-as-you-go” model. Saas is also called “software on demand.” SaaS vendors develop, host, and operate software for customer use. Rather than install software on site, customers access the application over the Internet. The most common examples of SaaS are Gmail and Google docs.

Now, in the next article I'll cover the different  deployment models and the importance of open standards in Cloud Computing. The future articles will also contains detailed instructions setting up your own private IaaS using open source tools. Till we meet again, Happy Reading.