+ All Categories
Home > Documents > linux project Final Copy

linux project Final Copy

Date post: 17-Jul-2016
Category:
Upload: er-amit-ghadigaonkar
View: 25 times
Download: 3 times
Share this document with a friend
Description:
it is linux project final copy for diploma students. is telling new feature of linux
61
CLOUD COMPUTING - ARMIET CHAPTER 1 INTRODUCTION Mr. Likhesh Kolhe Page 1
Transcript
Page 1: linux project Final Copy

CLOUD COMPUTING - ARMIET

CHAPTER 1

INTRODUCTION

Mr. Likhesh Kolhe Page 1

Page 2: linux project Final Copy

CLOUD COMPUTING - ARMIET

1.1: INTRODUCTION AND MOTIVATION

Cloud computing, to put it simply, means Internet Computing. The Internet is commonly

visualized as clouds; hence the term “cloud computing” for computation done through the Internet.

With Cloud Computing users can access database resources via the Internet from anywhere, for as

long as they need, without worrying about any maintenance or management of actual resources.

Besides, databases in cloud are very dynamic and scalable.

It is a very independent platform in terms of computing. The best example of cloud

computing is Google Apps where any application can be accessed using a browser and it can be

deployed on thousands of computer through the Internet.

The idea with cloud computing is that instead of purchasing discrete physical servers for

compute and storage, you allocate virtual compute nodes to run software, varying the number of

compute nodes as load or other factors change. Cloud just means that you design your application

to run on a set of compute and storage primitives.

Cloud Computing is a model for enabling ubiquitous, convenient, on-demand network access to a

shared pool of configurable computing resources (e.g. storage, applications, and services) that can be rapidly

provisioned and released with minimal management effort or service provider interaction

Disadvantages of non-cloud computing based systems

1. In the past, computing tasks such as word processing were not possible without the

installation of application software on a user's computer.

2. A user bought a license for each application from a software vendor and obtained the right

to install the application on one computer system.

3. With the development of local area networks (LAN) and more networking capabilities, the

client-server model, where server computers with enhanced capabilities and large storage

devices could be used to host application services and data for a large workgroup.

4. Typically, in client-server computing, a network-friendly client version of the application

was required on client computers which utilized the client system's memory and CPU for

processing, even though resultant application data files were stored centrally on the data

servers.

1.2: PROJECT OVERVIEW

Mr. Likhesh Kolhe Page 2

Page 3: linux project Final Copy

CLOUD COMPUTING - ARMIET

The existing cloud systems are all public clouds that are deployed on the internet and are

geographically located far away. These systems provide transparency to the users that access the

services via the World Wide Web.

Whereas, our project is a private cloud. This cloud will enable the users to access resources

and applications on the cloud. This cloud would be accessible only from a PC connected to the

private cloud. Each user has got his/her own volume (storage space) which can be attached to any

of the instances launched by the user.

The system will constantly monitor the load on the Node Controllers and automatically

perform appropriate tasks of Creation or Termination of Instances on the node. Additionally the

GUI will also help in modification of the configuration files of the cloud management. (This

feature will only be used by the Cloud Administrators.).

1.3: LITERATURE REVIEW

1.3.1: Ubuntu Enterprise Cloud (UEC)

Ubuntu Enterprise Cloud (UEC) brings Amazon EC2-like infrastructure capabilities inside the

firewall. The UEC is powered by Eucalyptus, an open source implementation for the emerging

standard of the EC2 API.

Ubuntu identified the EC2, EBS and S3 API as emerging de-facto industry standards.

The paper gives an insight into the software stack selected by Ubuntu that would allow people to

build their own cloud infrastructure which matched these de facto standards. Ubuntu 11.04,

supports an enhanced version of Eucalyptus that uses the KVM hypervisor. This allowed any user

to deploy a cloud that matches the same API that AWS provides.

UEC effectively demonstrates that the hypervisor layer does not need to be the same for portability

to be achieved and that open source does provide viable tools for creation of a cloud. This white

paper tries to provide an understanding of the UEC internal architecture and possibilities offered by

it in terms of security, networking and scalability.

1.3.2: Introduction to Cloud Computing Architecture (SUN)

Mr. Likhesh Kolhe Page 3

Page 4: linux project Final Copy

CLOUD COMPUTING - ARMIET

Cloud computing promises to increase the velocity with which applications are deployed, increase

innovation, and lower costs, all while increasing business agility. Sun takes an inclusive view of

cloud computing that allows it to support every facet, including the server, storage, network, and

virtualization technology that drives cloud computing environments to the software that runs in

virtual appliances that can be used to assemble applications in minimal time. This white paper

discusses how cloud computing transforms the way we design, build, and deliver applications, and

the architectural considerations that enterprises must make when adopting and using cloud

computing technology.

1.4: Deployment models

1.5 :.Cloud computing types

Private cloud

Private cloud is cloud infrastructure operated solely for a single organization, whether managed

internally or by a third-party and hosted internally or externally. Undertaking a private cloud

project requires a significant level and degree of engagement to virtualize the business

environment, and requires the organization to reevaluate decisions about existing resources. When

done right, it can improve business, but every step in the project raises security issues that must be

addressed to prevent serious vulnerabilities

Mr. Likhesh Kolhe Page 4

Page 5: linux project Final Copy

CLOUD COMPUTING - ARMIET

They have attracted criticism because users "still have to buy, build, and manage them" and thus do

not benefit from less hands-on management, essentially "[lacking] the economic model that makes

cloud computing such an intriguing concept".

Comparison between Public and Private Clouds

Public cloud Private cloud

Initial cost Typically zero Typically high

Running cost Unpredictable Unpredictable

Customization Impossible Possible

Privacy No (Host has access to the data) Yes

Single sign-on Impossible Possible

Scaling up Easy while within defined limits Laborious but no limits

Public cloud

A cloud is called a 'Public cloud' when the services are rendered over a network that is open for

public use. Technically there may be little or no difference between public and private cloud

architecture, however, security consideration may be substantially different for services

(applications, storage, and other resources) that are made available by a service provider for a

public audience and when communication is effected over a non-trusted network. Generally, public

cloud service providers like Amazon AWS, Microsoft and Google own and operate the

infrastructure and offer access only via Internet (direct connectivity is not offered).

Community cloud

Community cloud shares infrastructure between several organizations from a specific community

with common concerns (security, compliance, jurisdiction, etc.), whether managed internally or by

a third-party and hosted internally or externally. The costs are spread over fewer users than a public

Mr. Likhesh Kolhe Page 5

Page 6: linux project Final Copy

CLOUD COMPUTING - ARMIET

cloud (but more than a private cloud), so only some of the cost savings potential of cloud

computing are realized.

Hybrid cloud

Hybrid cloud is a composition of two or more clouds (private, community or public) that remain

unique entities but are bound together, offering the benefits of multiple deployment models. Such

composition expands deployment options for cloud services, allowing IT organizations to use

public cloud computing resources to meet temporary needs.[78] This capability enables hybrid

clouds to employ cloud bursting for scaling across clouds.

Cloud bursting is an application deployment model in which an application runs in a private cloud

or data center and "bursts" to a public cloud when the demand for computing capacity increases. A

primary advantage of cloud bursting and a hybrid cloud model is that an organization only pays for

extra compute resources when they are needed.

Cloud bursting enables data centers to create an in-house IT infrastructure that supports average

workloads, and use cloud resources from public or private clouds, during spikes in processing

demands. By utilizing "hybrid cloud" architecture, companies and individuals are able to obtain

degrees of fault tolerance combined with locally immediate usability without dependency on

internet connectivity. Hybrid cloud architecture requires both on-premises resources and off-site

(remote) server-based cloud infrastructure.

Hybrid clouds lack the flexibility, security and certainty of in-house applications. Hybrid cloud

provides the flexibility of in house applications with the fault tolerance and scalability of cloud

based services.

Distributed cloud

Cloud computing can also be provided by a distributed set of machines that are running at different

locations, while still connected to a single network or hub service. Examples of this include

distributed computing platforms such as BOINC and Folding@Home.

1.6 : Cloud management strategies

Mr. Likhesh Kolhe Page 6

Page 7: linux project Final Copy

CLOUD COMPUTING - ARMIET

Public clouds are managed by public cloud service providers, which include the public cloud

environment’s servers, storage, networking and data center operations. Users of public cloud

services can generally select from three basic categories:

User self-provisioning: Customers purchase cloud services directly from the provider, typically

through a web form or console interface. The customer pays on a per-transaction basis.

Advance provisioning: Customers contract in advance a predetermined amount of resources, which

are prepared in advance of service. The customer pays a flat fee or a monthly fee.

Dynamic provisioning: The provider allocates resources when the customer needs them, then

decommissions them when they are no longer needed. The customer is charged on a pay-per-use

basis.

Managing a private cloud requires software tools to help create a virtualized pool of compute

resources, provide a self-service portal for end users and handle security, resource allocation,

tracking and billing. Management tools for private clouds tend to be service driven, as opposed to

resource driven, because cloud environments are typically highly virtualized and organized in

terms of portable workloads. In hybrid cloud environments, compute, network and storage

resources must be managed across multiple domains, so a good management strategy should start

by defining what needs to be managed, and where and how to do it.  Policies to help govern these

domains should include configuration and installation of images, access control, and budgeting and

reporting.

Aspects of cloud management systems

A cloud management system is a combination of software and technologies designed to manage

cloud environments. The industry has responded to the management challenges of cloud computing

with cloud management systems. HP, Novell, Eucalyptus, OpenNebula, Citrix and are among the

vendors that have management systems specifically for managing cloud environments.

At a minimum, a cloud management solution should be able to manage a pool of heterogeneous

compute resources, provide access to end users, monitor security, manage resource allocation and

manage tracking. For composite applications, cloud management solutions also encompass

frameworks for workflow mapping and management.

Mr. Likhesh Kolhe Page 7

Page 8: linux project Final Copy

CLOUD COMPUTING - ARMIET

Enterprises with large-scale cloud implementations may require more robust cloud management

tools that include specific characteristics, such as the ability to manage multiple platforms from a

single point of reference, include intelligent analytics to automate processes like application

lifecycle management. And high-end cloud management tools should also be able to handle system

failures automatically with capabilities such as self-monitoring, an explicit notification mechanism,

and include failover and self-healing capabilities.,

1.7 : Architecture

Cloud computing sample architecture

Cloud architecture, the systems architecture of the software systems involved in the delivery of

cloud computing, typically involves multiplecloud components communicating with each other

over a loose coupling mechanism such as a messaging queue. Elastic provision implies intelligence

in the use of tight or loose coupling as applied to mechanisms such as these and others.

The Intercloud

The Intercloud is an interconnected global "cloud of cloud stand an extension of the Internet

"network of networks" on which it is based.

Mr. Likhesh Kolhe Page 8

Page 9: linux project Final Copy

CLOUD COMPUTING - ARMIET

1.8 : Cloud engineering

Cloud engineering is the application of engineering disciplines to cloud computing. It brings a

systematic approach to the high-level concerns of commercialisation, standardisation, and

governance in conceiving, developing, operating and maintaining cloud computing systems. It is a

multidisciplinary method encompassing contributions from diverse areas such

as systems, software, web, performance, information, security,platform, risk,

and quality engineering.

1.8.1 Issues

Threats and opportunities of the cloud

However, cloud computing continues to gain steam with 56% of the major European technology

decision-makers estimate that the cloud is a priority in 2013 and 2014, and the cloud budget may

reach 30% of the overall IT budget.

According to the TechInsights Report 2013: Cloud Succeeds based on a survey, the cloud

implementations generally meets or exceedes expectations across major service models, such as

Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS)".

Several deterrents to the widespread adoption of cloud computing remain. Among them, are:

reliability, availability of services and data, security, complexity, costs, regulations and legal issues,

performance, migration, reversion, the lack of standards, limited customization and issues of

privacy. The cloud offers many strong points: infrastructure flexibility, faster deployment of

applications and data, cost control, adaptation of cloud resources to real needs, improved

productivity, etc. The early 2010s cloud market is dominated by software and services in SaaS

mode and IaaS (infrastructure), especially the private cloud. PaaS and the public cloud are further

back.

Privacy

Privacy advocates have criticized the cloud model for giving hosting companies' greater ease to

control—and thus, to monitor at will—communication between host company and end user, and

access user data (with or without permission). Instances such as the secret NSA program, working

with AT&T, and Verizon, which recorded over 10 million telephone calls between American

Mr. Likhesh Kolhe Page 9

Page 10: linux project Final Copy

CLOUD COMPUTING - ARMIET

citizens, causes uncertainty among privacy advocates, and the greater powers it gives to

telecommunication companies to monitor user activity. A cloud service provider (CSP) can

complicate data privacy because of the extent of virtualization (virtual machines) and cloud

storage used to implement cloud service. CSP operations, customer or tenant data may not remain

on the same system, or in the same data center or even within the same provider's cloud; this can

lead to legal concerns over jurisdiction. While there have been efforts (such as US-EU Safe

Harbor) to "harmonise" the legal environment, providers such as Amazon still cater to major

markets (typically the United States and the European Union) by deploying local infrastructure and

allowing customers to select "availability zones." Cloud computing poses privacy concerns because

the service provider can access the data that is on the cloud at any time. It could accidentally or

deliberately alter or even delete information.

Compliance

To comply with regulations including FISMA, HIPAA, and SOX in the United States, the Data

Protection Directive in the EU and the credit card industry's PCI DSS, users may have to

adopt community orhybrid deployment modes that are typically more expensive and may offer

restricted benefits. This is how Google is able to "manage and meet additional government policy

requirements beyond FISMA"and Rackspace Cloud or QubeSpace are able to claim PCI

compliance.

Many providers also obtain a SAS 70 Type II audit, but this has been criticised on the grounds that

the hand-picked set of goals and standards determined by the auditor and the auditee are often not

disclosed and can vary widely. Providers typically make this information available on request,

under non-disclosure agreement.

Customers in the EU contracting with cloud providers outside the EU/EEA have to adhere to the

EU regulations on export of personal data.

U.S. Federal Agencies have been directed by the Office of Management and Budget to use a

process called FedRAMP (Federal Risk and Authorization Management Program) to assess and

authorize cloud products and services. Federal CIO Steven VanRoekel issued a memorandum to

federal agency Chief Information Officers on December 8, 2011 defining how federal agencies

should use FedRAMP. FedRAMP consists of a subset of NIST Special Publication 800-53 security

controls specifically selected to provide protection in cloud environments. A subset has been

Mr. Likhesh Kolhe Page 10

Page 11: linux project Final Copy

CLOUD COMPUTING - ARMIET

defined for the FIPS 199 low categorization and the FIPS 199 moderate categorization. The

FedRAMP program has also established a Joint Accreditation Board (JAB) consisting of Chief

Information Officers from DoD, DHS and GSA. The JAB is responsible for establishing

accreditation standards for 3rd party organizations who perform the assessments of cloud solutions.

The JAB also reviews authorization packages, and may grant provisional authorization (to operate).

The federal agency consuming the service still has final responsibility for final authority to operate.

A multitude of laws and regulations have forced specific compliance requirements onto many

companies that collect, generate or store data. These policies may dictate a wide array of data

storage policies, such as how long information must be retained, the process used for deleting data,

and even certain recovery plans. Below are some examples of compliance laws or regulations.

In the United States, the Health Insurance Portability and Accountability Act (HIPAA) requires a

contingency plan that includes, data backups, data recovery, and data access during emergencies.

The privacy laws of the Switzerland demand that private data, including emails, be physically

stored in the Switzerland.

In the United Kingdom, the Civil Contingencies Act of 2004 sets forth guidance for a Business

contingency plan that includes policies for data storage.

In a virtualized cloud computing environment, customers may never know exactly where their data

is stored. In fact, data may be stored across multiple data centers in an effort to improve reliability,

increase performance, and provide redundancies. This geographic dispersion may make it more

difficult to ascertain legal jurisdiction if disputes arise.

Mr. Likhesh Kolhe Page 11

Page 12: linux project Final Copy

CLOUD COMPUTING - ARMIET

CHAPTER 2

PROBLEM DEFINITION

2.1.Problem Statement:

Mr. Likhesh Kolhe Page 12

Page 13: linux project Final Copy

CLOUD COMPUTING - ARMIET

Setting up of Private Cloud to provide IaaS (Providing an Operating System to the user)

And SaaS Services (Web Applications).

FIGURE NO 1: CLOUD COMPUTING

2.2: SCOPE

Cloud computing is a major change, caused by the underlying commoditization of IT. It is

expected to see a future dominance of the open source model in cloud computing, which will solve

the major adoption concerns for users. Even a small private cloud built on our college intranet

gives us an idea of the dominance of cloud computing in near future.

The scope of the cloud built in our project is

Scalable

- Allocate more capacity only when you need it

- Allocate more instances only when you need them.

- Dynamic Instance Creation and Termination upon receiving a request.

Mr. Likhesh Kolhe Page 13

Page 14: linux project Final Copy

CLOUD COMPUTING - ARMIET

CHAPTER 3

PROJECT IMPLEMENTATION

3.1. PROPOSED SYSTEM:

Mr. Likhesh Kolhe Page 14

Page 15: linux project Final Copy

CLOUD COMPUTING - ARMIET

The existing systems specified earlier in the synopsis are all public clouds that are deployed

on the internet and are geographically located far away. These systems provide transparency to the

users that access the services via the World Wide Web.

Whereas, the system proposed in our project is a private cloud, which is deployed on the

intranet of our college. This cloud will enable the users to access resources and applications on the

cloud, built on the systems of the college itself. This cloud would be accessible only from a system

on the college intranet and not via the World Wide Web.

The volumes attached to the user instance would be independent of the instance which the

user is running. Each user has got his/her own volume (storage space) which can be attached to any

of the instances launched by the user.

The system will constantly monitor the load on the Node Controllers and automatically

perform appropriate tasks of Creation or Termination of Instances on the node.

The system starts the Node Controller if the load exceeds a certain specified threshold

(Threshold is assumed at 80%) and shuts down a running Node Controller if the load is below the

specified threshold for certain predetermined period of time.

3.2: MAIN ALGORITHM

Mr. Likhesh Kolhe Page 15

Page 16: linux project Final Copy

CLOUD COMPUTING - ARMIET

The main algortihm of the project is the implementation algorithm for configuring the cloud.

1. Configuration of Interfaces on the Cloud Controller

2. Restarting the Network Services on the Cloud Controller

3. Install the Hypervisor (KVM OR XEN)

4. Create a Virtual Hard Drive

5. Install preferably a Server Operating System on that Virtual Machine

6. Configuration of Interfaces on the Node Controller

7. Restarting the Network Services on the Node Controller

8. Update and install respective Eucalyptus Services on both the Controllers

9. Synchronize the Cloud and the Node Controllers

10. Disable the Firewalls

11. Bridge the Connectivity Ports

12. Check status for each component (both on CC and NC)

13. Register Services on the Cloud Controller

14. Download Credentials from the Localhost on the Cloud

15. Alter the Virtualized Component Specifications

16. Bundle the Images

17. Launch the Instances

3.3: PROGRAMMING LANGUAGES USED FOR IMPLEMENTATION

Mr. Likhesh Kolhe Page 16

Page 17: linux project Final Copy

CLOUD COMPUTING - ARMIET

The following programming languages were used for implementation:

HTML

Used for developing interface of the Word processor

Mysql

Used for creation and management of Databases

PHP

Used for uploading and downloading of user documents

3.4: TOOLS USED FOR IMPLEMENTATION

The following tools were used for implementation:

• Ubuntu Desktop 11.04

- Operating System

• Eucalyptus

- Private Cloud Software

• SSH Server

- Secure Shell (remotely executing commands)

• Shell Script

- Executable Code (.sh files)

Mr. Likhesh Kolhe Page 17

Page 18: linux project Final Copy

CLOUD COMPUTING - ARMIET

FIGURE NO 2:-CLOUD TIERED ARCHITECTURE

Mr. Likhesh Kolhe Page 18

Page 19: linux project Final Copy

CLOUD COMPUTING - ARMIET

CHAPTER 4

FEATURES OF CLOUD

Features:

Mr. Likhesh Kolhe Page 19

Page 20: linux project Final Copy

CLOUD COMPUTING - ARMIET

Cloud Computing exhibits the following key characteristics:-

1 .Agility:- improves with users' ability to re-provision technological infrastructure resources.

2. Cost is claimed to be reduced and in a public cloud delivery model capital expenditure is

converted to operational expenditure.

3. Device and location independent.

4. Scalability.

5. Performance monitoring.

6. Maintenance of cloud applications is easier.

Types of Cloud Services

PaaS:- Platform as a service .Deliver computing platform and solution stack as a service.

SaaS :- Software as s service.

IaaS :- Infrastructure as a service .Delivers computer infrastructure –typically a platform

virtualization environment as a service along with raw block storage and networking.

HaaS :- Hardware as a service. It’s a procurement process similar to licensing. Generally

speaking, a managed service provider remotely monitors and administers hardware on a client's

site on a subscription basis.

Agility improves with users' ability to re-provision technological infrastructure resources.

Application programming interface (API) accessibility to software that enables machines to

interact with cloud software in the same way that a traditional user interface (e.g., a computer

desktop) facilitates interaction between humans and computers. Cloud computing systems

typically use Representational State Transfer (REST)-based APIs.

Cost: cloud providers claim that computing costs reduce. A public-cloud delivery model

converts capital expenditure to operational expenditure. This purportedly lowers barriers to

Mr. Likhesh Kolhe Page 20

Page 21: linux project Final Copy

CLOUD COMPUTING - ARMIET

entry, as infrastructure is typically provided by a third-party and does not need to be purchased

for one-time or infrequent intensive computing tasks. Pricing on a utility computing basis is

fine-grained, with usage-based options and fewer IT skills are required for implementation (in-

house). The e-FISCAL project's state-of-the-art repository contains several articles looking into

cost aspects in more detail, most of them concluding that costs savings depend on the type of

activities supported and the type of infrastructure available in-house.

independence enable users to access systems using a web browser regardless of their location

or what device they use (e.g., PC, mobile phone). As infrastructure is off-site (typically

provided by a third-party) and accessed via the Internet, users can connect from anywhere.

Virtualization technology allows sharing of servers and storage devices and increased

utilization. Applications can be easily migrated from one physical server to another.

Multitenancy enables sharing of resources and costs across a large pool of users thus allowing

for:

centralization of infrastructure in locations with lower costs (such as real estate, electricity,

etc.)

peak-load capacity increases (users need not engineer for highest possible load-levels)

utilisation and efficiency improvements for systems that are often only 10–20% utilised.

Reliability improves with the use of multiple redundant sites, which makes well-designed cloud

computing suitable for business continuity and disaster recovery. Scalability and elasticity via

dynamic ("on-demand") provisioning of resources on a fine-grained, self-service basis near

real-time, without users having to engineer for peak loads. Performance is monitored, and

consistent and loosely coupled architectures are constructed using web services as the system

interface.

Security can improve due to centralization of data, increased security-focused resources, etc.,

but concerns can persist about loss of control over certain sensitive data, and the lack of

security for stored kernels. Security is often as good as or better than other traditional systems,

in part because providers are able to devote resources to solving security issues that many

customers cannot afford to tackle. However, the complexity of security is greatly increased

Mr. Likhesh Kolhe Page 21

Page 22: linux project Final Copy

CLOUD COMPUTING - ARMIET

when data is distributed over a wider area or over a greater number of devices, as well as in

multi-tenant systems shared by unrelated users. In addition, user access to security audit

logs may be difficult or impossible. Private cloud installations are in part motivated by users'

desire to retain control over the infrastructure and avoid losing control of information security.

Maintenance of cloud computing applications is easier, because they do not need to be installed

on each user's computer and can be accessed from different places.

The National Institute of Standards and Technology's definition of cloud computing identifies

"five essential characteristics":

On-demand self-service. A consumer can unilaterally provision computing capabilities, such

as server time and network storage, as needed automatically without requiring human

interaction with each service provider.

Broad network access. Capabilities are available over the network and accessed through

standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g.,

mobile phones, tablets, laptops, and workstations).

Resource pooling. The provider's computing resources are pooled to serve multiple consumers

using a multi-tenant model, with different physical and virtual resources dynamically assigned

and reassigned according to consumer demand. ...

Rapid elasticity. Capabilities can be elastically provisioned and released, in some cases

automatically, to scale rapidly outward and inward commensurate with demand. To the

consumer, the capabilities available for provisioning often appear unlimited and can be

appropriated in any quantity at any time.

Measured service. Cloud systems automatically control and optimize resource use by

leveraging a metering capability at some level of abstraction appropriate to the type of service

(e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be

monitored, controlled, and reported, providing transparency for both the provider and consumer

of the utilized service.

On-demand self-service

Mr. Likhesh Kolhe Page 22

Page 23: linux project Final Copy

CLOUD COMPUTING - ARMIET

On-demand self-service allows users to obtain, configure and deploy cloud services themselves

using cloud service catalogues, without requiring the assistance of IT. This feature is listed by

the National Institute of Standards and Technology (NIST) as a characteristic of cloud

computing. The self-service requirement of cloud computing prompts infrastructure vendors to

create cloud computing templates, which are obtained from cloud service catalogues.

Manufacturers of such templates or blueprints include BMC Software (BMC), with Service

Blueprints as part of their cloud management platform Hewlett-Packard (HP), which names its

templates as HP Cloud Maps  RightScale and Red Hat, which names its templates CloudForms.

The templates contain predefined configurations used by consumers to set up cloud services.

The templates or blueprints provide the technical information necessary to build ready-to-use

clouds. Each template includes specific configuration details for different cloud infrastructures,

with information about servers for specific tasks such as hosting applications, databases,

websites and so on. The templates also include predefined Web service, the operating system,

the database, security configurations and load balancing.

Cloud computing consumers use cloud templates to move applications between clouds through

a self-service portal. The predefined blueprints define all that an application requires to run in

different environments. For example, a template could define how the same application could

be deployed in cloud platforms based on Amazon Web Service, VMware or Red Hat. The user

organization benefits from cloud templates because the technical aspects of cloud

configurations reside in the templates, letting users to deploy cloud services with a push of a

button. Developers can use cloud templates to create a catalog of cloud services.

Mr. Likhesh Kolhe Page 23

Page 24: linux project Final Copy

CLOUD COMPUTING - ARMIET

CHAPTER 5

ADVANTAGES OF CLOUD

COMPUTING SYSTEM

Advantages of cloud computing system:

Mr. Likhesh Kolhe Page 24

Page 25: linux project Final Copy

CLOUD COMPUTING - ARMIET

1.Cloud computing differs from the classic client-server model by providing applications from a

server that are executed and managed by a client's web browser, with no installed client version of

an application required.

2. Centralization gives cloud service providers complete control over the versions of the browser-

based applications provided to clients, which removes the need for version upgrades or license

management on individual client computing devices.

3.The phrase "software as a service" (SaaS) is sometimes used to describe application programs

offered through cloud computing. A common shorthand for a provided cloud computing service (or

even an aggregation of all existing cloud services) is "The Cloud".

Mr. Likhesh Kolhe Page 25

Page 26: linux project Final Copy

CLOUD COMPUTING - ARMIET

CHAPTER 6

CLOUD COMPUTING

IMPLEMENTATION

6.1 What is KVM ?

Mr. Likhesh Kolhe Page 26

Page 27: linux project Final Copy

CLOUD COMPUTING - ARMIET

KVM is the most popular Open Source Virtualization software that allows multiple OS to

run on the same computer hardware concurrently, thereby improving the effective usage

and efficiency of the underlying hardware. It benefits the enterprises with the power of

consolidation, increased utilization and rapid provisioning.

FIGURE NO 3:-CLOUD TIERED ARCHITECTURE(PRIVATE CLOUD)

6.2 Setting up Eucalyptus Cloud on KVM :-

Mr. Likhesh Kolhe Page 27

Page 28: linux project Final Copy

CLOUD COMPUTING - ARMIET

In any Eucalyptus Cloud Installation, there are 2 top-level components: Cloud

Controller(CLC) and Walrus. These 2 components manage the various clusters, where cluster is

asset of physical machines that host the Virtual Instances. In each cluster, there are components.

that interact with the high level components : Cluster Controller (CC) and StorageController (SC).

CC and SC are cluster – level components. Each cluster is composed of various Nodes, or physical

machines. Each Node will run a Node Controller (NC) that will control the hypervisor for

managing the Virtual Instances. For this setup, We have implemented a Single-Cluster Installation,

where all the components except NC are co-located on one machine. As per Eucalyptus

documentation, this co-located system is called : front-end. So in a gist, We have 1 physical

machine which hosts CLC, Walrus, CC, SC, and 5 other machines that hosts NC each.

The Node Controller uses KVM as a hypervisor. The NC service runs on Domain-0 kernel

in the KVM Setup.

Hardware :-

We used 1 Admin Machine with the config : Intel Core 2 Duo Processor 1.8 GHz, with 1

GB RAM , 160 GB HDD, and 5 Node Controllers each with the config : Intel Core 2 Duo

Processor 1.8 Ghz (VT enabled) with 2 GB RAM, 160 GB HDD.

Software :-

Eucalyptus running on Ubuntu 11.04, KVM

6.3 Eucalyptus Front End :-

Mr. Likhesh Kolhe Page 28

Page 29: linux project Final Copy

CLOUD COMPUTING - ARMIET

The Eucalyptus Front End hosts the Cloud Controller, Storage Controller and the Cluster

Controller services. It exposes AWS compatible WS (Web Services) interfaces.

Add the following line in /etc/apt/sources.list file,

Then update it, using

We have setup a static IP address for the Front-end, and for reference, I have the network

interfaces setting as following :-

Then, We installed Eucalyptus CLC, CC, Walrus, SC using the following :-

Install the euca2ools for managing the Cloud :-

1.Update The APT Kit

sudo apt-get update

2. Set Up A Static IP Address For The Front End

sudo nano /etc/network/interfaces

auto eth0

iface eth0 inet static

address 192.168.1.2

netmask 255.255.255.0

network 192.168.1.0

broadcast 192.168.1.255

gateway 192.168.1.1

dns-nameservers 59.185.0.23

3.Restart Networking

Mr. Likhesh Kolhe Page 29

Page 30: linux project Final Copy

CLOUD COMPUTING - ARMIET

sudo /etc/init.d/networking stop

sudo /etc/init.d/networking start

4.Enable The Eucalyptus Component Download

sudo nano /etc/apt/sources.list

deb http://eucalyptussoftware.com/downloads/repo/eucalyptus/2.0.3/debian/ squeeze main

5.Update The APT Kit

sudo apt-get update

6.Set The Time According To NTP

ntpdate-debian -s

7.Install openntpd Package

sudo apt-get install openntpd

8.Flush The iptables

sudo iptables -F

9.Install All Eucalyptus Front End Components

sudo apt-get install eucalyptus-cc

sudo apt-get install eucalyptus-cloud

sudo apt-get install eucalyptus-common

sudo apt-get install eucalyptus-walrus

sudo apt-get install eucalyptus-sc

Also Select "No Configuration" Method During Unpacking

Mr. Likhesh Kolhe Page 30

Page 31: linux project Final Copy

CLOUD COMPUTING - ARMIET

10.Check The Status Of The Newly Installed Front End Components

sudo /etc/init.d/eucalyptus-cc status

sudo /etc/init.d/eucalyptus-cloud status

11.Restart The Cloud And The Cluster Controller

sudo /etc/init.d/eucalyptus-cc restart

sudo /etc/init.d/eucalyptus-cloud restart

12.Check The Status Of The Front End Components

sudo /etc/init.d/eucalyptus-cc status

sudo /etc/init.d/eucalyptus-cloud status

13.Change The Password For Root

sudo passwd root

Change The Password To "cc"

14. Setup Using KVM-Ubuntu 11.04/11.10

Install KVM

sudo apt-get install kvm

6.4 Eucalyptus Node Controller :-

Mr. Likhesh Kolhe Page 31

Page 32: linux project Final Copy

CLOUD COMPUTING - ARMIET

Eucalyptus Node Configuration(Node Configuration)-Ubuntu 11.04

15.Update The APT Kit

sudo apt-get update

16.Set Up A Static IP Address For The Front End

sudo nano /etc/network/interfaces

auto eth0

iface eth0 inet static

address 192.168.1.3

netmask 255.255.255.0

network 192.168.1.0

broadcast 192.168.1.255

gateway 192.168.1.1

dns-nameservers 59.185.0.23

17.Restart Networking

sudo /etc/init.d/networking stop

sudo /etc/init.d/networking start

18.Enable The Eucalyptus Component Download

sudo nano /etc/apt/sources.list

deb http://eucalyptussoftware.com/downloads/repo/eucalyptus/2.0.3/debian/ squeeze main

19.Update The APT Kit

Mr. Likhesh Kolhe Page 32

Page 33: linux project Final Copy

CLOUD COMPUTING - ARMIET

sudo apt-get update

20.Set The Time According To NTP

ntpdate-debian -s

21.Install openntpd Package

sudo apt-get install openntpd

22.Flush The iptables

sudo iptables -F

23.Install All Eucalyptus Node Components

sudo apt-get install eucalyptus-nc

sudo apt-get install eucalyptus-common

24.Create A Bridge For Communication

sudo nano /etc/network/interfaces

auto br0

iface br0 inet static

address 192.168.1.3

netmask 255.255.255.0

network 192.168.1.0

broadcast 192.168.1.255

gateway 192.168.1.1

dns-nameservers 59.185.0.23

6.5 Registering Node Controller on Front End:-

Mr. Likhesh Kolhe Page 33

Page 34: linux project Final Copy

CLOUD COMPUTING - ARMIET

Now, we will start configuring the Cloud Controller, and allow it to register the new Node

that we have setup. For this, we will login to the Eucalyptus Cloud Controller box, and use

the euca_conf application to register the new Node.

Use the following command :-

The IP address mentioned in the above command refers to the machine that had the Eucalyptus

Node Controller service running.

Now we need to obtain the credentials from the command line of the Cloud Controller by doing the

following:-

Eucalyptus Cloud Controller will attempt to register the new Node, and we can check for

successful registration by following command :-

The above command produces the following console output in my setup :- If the above command

works out properly, we are sure that Eucalyptus is working fine. Now we will proceed to run a new

instance of the Cloud.

30.Register The Front End Components And The Nodes

sudo $EUCALYPTUS/usr/sbin/euca_conf --register-walrus 192.168.1.2

sudo $EUCALYPTUS/usr/sbin/euca_conf --register-cluster homecloud 192.168.1.2

sudo $EUCALYPTUS/usr/sbin/euca_conf --register-sc homecloud 192.168.1.2

sudo $EUCALYPTUS/usr/sbin/euca_conf --register-nodes "192.168.1.3"

6.6 Adding VM Images :-

Mr. Likhesh Kolhe Page 34

Page 35: linux project Final Copy

CLOUD COMPUTING - ARMIET

Adding a VM image to the Eucalyptus Cloud requires :-

a) Download a VM Image

b) Add the root disk image, kernel / ramdisk pair to the Walrus (Storage Service)

c) Register the image with Eucalyptus

First, we downloaded an image from http://uec-images.ubuntu.com/releases/ which in

this case is : http://uec-images.ubuntu.com/releases/9.10/rc/ubuntu-9.10-rcuec-

i386.tar.gz

We will now bundle the Kernel, Initrd and the OS Image :-

1) Unpack the Downloaded image from the tarball :

2) We bundle the kernel

3) We upload the kernel bundle

4) Register the kernel bundle with Eucalyptus

5) We bundle the ramdisk

6) We upload the ramdisk bundle

7) Register the ramdisk bundle with Eucalyptus

8) We bundle the image

The above step will take a little time, depending on the size of the image.

9) Upload the image bundle

10) We register the image with Eucalyptus

32.Download Credentials

Mr. Likhesh Kolhe Page 35

Page 36: linux project Final Copy

CLOUD COMPUTING - ARMIET

a)Go To: https://192.168.1.2:8443/

Login:

Username:admin

Password:admin

b)Enter New Password As admin And Enter Administrators E-Mail Address

c)Click On Credentials Tab.Click On Download Credentials Button

d)Save The File To The Desktop

Mr. Likhesh Kolhe Page 36

Page 37: linux project Final Copy

CLOUD COMPUTING - ARMIET

FIGURE NO 4: REGISTERING THE CLOUD

FIGURE NO 5:- Run System Monitor on Cloud Controller:

Mr. Likhesh Kolhe Page 37

Page 38: linux project Final Copy

CLOUD COMPUTING - ARMIET

FIGURE NO 6:- Run System Monitor on node controller:

Mr. Likhesh Kolhe Page 38

Page 39: linux project Final Copy

CLOUD COMPUTING - ARMIET

6.7 Configure Eucalyptus Tools :-

One of the popular tools to manage both Amazon and Eucalyptus EC2 instances is HybridFox.

It is a Mozilla Firefox Plugin, and integrates well with the Eucalyptus Cloud. It allows

to manage the EC2 instances and EBS Volumes. The user can create / stop/ start

instances, attach EBS volumes and even take EBS snapshots. We have covered Hybrid-

Fox in brief through the series of screenshots.

We can download HybridFox from http://code.google.com/p/hybridfox/downloads/list

To install, just drag and drop the HybridFox.xpi file into Mozilla Firefox browser. Once installed,

the plugin can be accessed from the Tools menu of the browser.

We will now cover the configuration part of the HybridFox. The user must click on the Regions

button as shown below, and enter the Region Name and EndPoint URL. The End-

Point URL must point to the IP address of the Cloud Controller. Region Name can be

anything that the user likes.

Mr. Likhesh Kolhe Page 39

Page 40: linux project Final Copy

CLOUD COMPUTING - ARMIET

Once added, we must select the added region from the Regions Drop down.

Now we need to get the credentials that are required for HybridFox to make secure Web

Service calls to the Cloud Controller. For retrieving the Credentials, we must log in to the

Eucalyptus Admin Tool as shown in the next screenshot.

We will use the Query ID and Secret Key available from the Credentials Tab of the AdminConsole.

FIGURE NO 8: EUCALYYPTUS CREDENTIAL

Mr. Likhesh Kolhe Page 40

Page 41: linux project Final Copy

CLOUD COMPUTING - ARMIET

The User must now get back to HybridFox, and click on Credentials button.

The Query ID obtained from above will be the AWS Access Key, and the Secret Key will

be the AWS Secret Access Key. The account name can be anything that the user wants.

Once the credentials are added, the user must select the added credentials from drop

down, and hit refresh for the browser. This will allow HybridFox to access the Cloud Controller

with the config.

The screenshot below shows the list of Images available. The use can select any EMI

and launch an instance for the same. Subsequent screenshot shows the running instance.

Mr. Likhesh Kolhe Page 41

Page 42: linux project Final Copy

CLOUD COMPUTING - ARMIET

FIGURE NO 9:- HYBRID FOX SNAPSHOTS

Mr. Likhesh Kolhe Page 42

Page 43: linux project Final Copy

CLOUD COMPUTING - ARMIET

6.8 IMPLIMENTATION OBJECTIVES

The following tasks can be performed and can enhance the performance of the cloud.

1. Automatically turning node controllers on/off:-Now as we can switch off the idle nodes

from the cloud controller, we have to sense the load from the nodes and then comparing

with the Threshold set, turn them off. Also when a fresh load arises and if there are no free

nodes to handle it, we have to automatically switch on the idle nodes again from the cloud

controller.

2. Dynamic Instance Creation and Termination:-If the number of requests for a particular

service increases the threshold the nodes can serve, then dynamically launching the new

Instance of that service. And if no users are using that service, then dynamically terminating

that instance.

3. More Applications can be provided on the cloud For Example: - Image Processing

Services, video compression, Document format converters.

4. Develop a Word Processor application: Develop a Word Processor application in php and

retrieve the data and show it in database

Mr. Likhesh Kolhe Page 43

Page 44: linux project Final Copy

CLOUD COMPUTING - ARMIET

CHAPTER 7

CONCLUSION

Mr. Likhesh Kolhe Page 44

Page 45: linux project Final Copy

CLOUD COMPUTING - ARMIET

CONCLUSION

Cloud computing is the next big wave in computing. It has many benefits,

such as better hardware management, since all the computers are the same and run the same

hardware. It also provides for better and easier management of data security, since all the data is

located on a central server, so administrators can control who has and doesn't have access to the

files.

There are some down sides as well to cloud computing. Peripherals such as

printers or scanners might have issues dealing with the fact that there is no hard drive attached to

the physical, local machine. If there are machines a user uses at work that aren't their own for any

reason, that require access to particular drivers or programs, it is still a struggle to get this

application to know that it should be available to the user.

If you're looking to implement this, you have two options.  You can host it all

within your network, or you can use a device from a company that provides the server storage, such

as the CherryPal..

Mr. Likhesh Kolhe Page 45

Page 46: linux project Final Copy

CLOUD COMPUTING - ARMIET

REFERENCES

WHITE PAPERS:

Ubuntu Enterprise cloud

Introduction To Cloud Architecture SUN Microsystems

WEBSITES:

http://www.ubuntu.com

http://www.zoho.com

http://www.cacoo.com

http://aws.amazon.com

http://ubuntuforums.org/forumdisplay.php

http://www.ubuntuforums.com

http://www.eucalyptus.com/downloads/whitepapers

http://www.eucalyptus.com/downloads/repo/eucalyptus/2.0.3/natty/universe

http://www.eucalyptus.com/pdf/whitepapers/Cloud_Builder_Guide.pdf

http://www.eucalyptus.com/pdf/whitepapers/IT_Climatology.pdf

http://www.eucalyptus.com/pdf/whitepapers/Five_Steps_Cloud.pdf

http://www.eucalyptus.com/pdf/whitepapers/Eucalyptus_Overview.pdf

Mr. Likhesh Kolhe Page 46


Recommended