Serial No.
Subject
Page no
1
Introduction
1
2
Formal Definition
2
3
Characteristics of Cloud Computing
2
4
Enabling Technologies
4
5
Cloud types
7
6
Cloud computing categories
8
7
Component
9
8
Virtualization
10
9
Users
11
10
Advantages of Cloud Computing
11
11
Working Of Cloud Computing
12
12
Merits & demerits
13
13
Conclusion
14
14
References
15
Introduction
Cloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a metered service over a network (typically the Internet). Computing clouds provide computation, software, data access, and storage resources without requiring cloud users to know the location and other details of the computing infrastructure. Within limits, cloud users can consume any amount of these resources without having first to acquire servers or other computing equipment. A parallel to this concept can be drawn with the electricity grid, wherein end-users consume power without needing to understand the component devices or infrastructure required to provide the service. End users access cloud based applications through a web browser or a light weight desktop or mobile app while the business software and data are stored on servers at a remote location. Cloud application providers strive to give the same or better service and performance as if the software programs were installed locally on end-user computers. In some cases, legacy applications (line of business applications that until now have been prevalent in thin client Windows computing) are delivered via a screen-sharing technology, while the computing resources are consolidated at a remote Data Centre location; in other cases, entire business applications have been coded using web-based technologies such as AJAX. At the foundation of cloud computing is the broader concept of infrastructure convergence (or Converged Infrastructure) and shared services. This type of data Centre environment allows enterprises to get their applications up and running faster, with easier manageability and less maintenance, and enables IT to more rapidly adjust IT resources (such as servers, storage, and networking) to meet fluctuating and unpredictable business demand. Commercial offerings may be required to meet service-level agreements (SLAs), but specific terms are less often negotiated by smaller companies.
1
Formal Definition A model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. Characteristics of Cloud Computing 1. Self Healing Any application or any service running in a cloud computing environment has the property of self healing. In case of failure of the application, there is always a hot backup of the application ready to take over without disruption. There are multiple copies of the same application - each copy updating itself regularly so that at times of failure there is at least one copy of the application which can take over without even the slightest change in its running state.
2. Multi-tenancy With cloud computing, any application supports multi-tenancy - that is multiple tenants at the same instant of time. The system allows several customers to share the infrastructure allotted to them without any of them being aware of the sharing. This is done by virtualizing the servers on the available machine pool and then allotting the servers to multiple users. This is done in such a way that the privacy of the users or the security of their data is not compromised.
3. Linearly Scalable Cloud computing services are linearly scalable. The system is able to break down the workloads into pieces and service it across the infrastructure. An exact idea of linear scalability can be obtained from the fact that if one server is able to process say 1000 transactions per second, then two servers can process 2000 transactions per second.
4. Service-oriented Cloud computing systems are all service oriented - i.e. the systems are such that they are created out of other discrete services. Many such discrete services which are independent of each other are combined together to form this service. This allows re-use of the different services that are available and that are being created. Using the services that were just created, other such services can be created.
2
5. SLA Driven Usually businesses have agreements on the amount of services. Scalability and availability issues cause clients to break these agreements. But cloud computing services are SLA driven such that when the system experiences peaks of load, it will automatically adjust itself so as to comply with the service-level agreements. The services will create additional instances of the applications on more servers so that the load can be easily managed.
6. Virtualized The applications in cloud computing are fully decoupled from the underlying hardware. The cloud computing environment is a fully virtualized environment.
7. Flexible Another feature of the cloud computing services is that they are flexible. They can be used to serve a large variety of workload types - varying from small loads of a small consumer application to very heavy loads of a commercial application.
3
En nabliing Techn T nolog gies Cloud Co omputin ng Appllication n Archittecture
Thiis gives tthe basic c architec cture of a cloud co omputing g applica ation. We e know tha at cloud computin c ng is the shift s of co omputing g to a hosst of hard dware inffrastructu ure tha at is distriibuted in n the clou ud. The commodi c ity hardw ware infra astructure consistts of the t vario ous low co ost data servers s that are connecte c d to the system s and proviide the eir storag ge and prrocessing g and oth her comp puting resources to the ap pplication n. Clo oud comp puting in nvolves running applicatio a ons on virtual serv vers thatt are allo ocated on n this disstributed d hardwarre infrasttructure available e in the cloud. c The ese virtual serverrs are ma ade in such a way y that the differen nt service e level agrreementss and relliability issues are e met. Th here may y be multtiple insta ances of the sam me virtua al server accessin ng the diffferent pa arts of th he hardwa are infrastructure e ava ailable. This T is to make su ure that th here are multiple copies of o the app plications wh hich are rready to take t overr on anotther one’’s failure. The virttual server disstributes the proc cessing between b t infrasstructure the e and the on com mputing is done and a the result r returned. There willl be a wo orkload distributi d ma anagement system m, also kn nown as the grid engine, for mana aging the e differen nt req quests co oming to the virtu ual serve ers. This engine will w take care of the t creattion of multiple m copies and a also the preservation of integrrity of th he data th hat is storred in the t infrasstructure e. This wiill also ad djust itself such th hat even on heaviier load, the 4
pro ocessing is com mpleted as per the requiremen nts. The differen nt worklo oad ma anagement system ms are hidden fro om the users. u Forr the use er, the prrocessing g is don ne and th he resultt is obtaiined. The ere is no o questio on of whe ere it wa as done and a how w it was done. Th he users are bille ed based d on the usage u of the syste em - as said s beffore - th he commodity is now cyc cles and bytes. The T billin ng is usu ually on the bassis of usa age per CPU C per hour h or GB G data transfer t p hour.. per
Server Arrchitectture
Clo oud comp puting makes m use e of a larg ge physical resou urce pool in the cloud. c As said above e, cloud computing serv vices and d applic cations make m use e of virttual serrver insstances b built upon n this resource po ool. There e are two o applica ations wh hich help in ma anaging tthe serve er instanc ces, the resources r s and alsso the ma anageme ent of the ressources by b these virtual server s in nstances. One of these is the Xen hyperviisor wh hich prov vides an abstracti a ion layer between n the harrdware and a the virtual v OS S so tha at the diistributio on of the e resourrces and d the pro ocessing g is welll manag ged. Another ap pplication n that is widely used is the Enom malism server s m managem ment sysstem which is use ed for ma anagemen nt of the infrastru ucture pla atform.
Ma ap Redu uce Ma ap Reduc ce is a sofftware fra amework k develop ped at Google in 2003 to ssupport parrallel com mputations over large l (mu ultiple pe etabyte) data setss on clustters of com mmodity y compute ers. This framewo ork is larrgely take en from ‘map’ ‘ and ‘reduce’
5
functions commonly used in functional programming, although the actual semantics of the framework are not the same. It is a programming model and an associated implementation for processing and generating large data sets. Many of the real world tasks are expressible in this model. Map Reduce implementations have been written in C++, Java and other languages. Programs written in this functional style are automatically parallelized and executed on the cloud. The run-time system takes care of the details of partitioning the input data, scheduling the program’s execution across a set of machines, handling machine failures, and managing the required inter-machine communication. This allows programmers without any experience with parallel and distributed systems to easily utilize the resources of a largely distributed system.
Hadoop Hadoop is a framework for running applications on large cluster built of commodity hardware. The Hadoop framework transparently provides applications both reliability and data motion. Hadoop implements the computation paradigm named Map Reduce which was explained above. The application is divided into many small fragments of work, each of which may be executed or re-executed on any node in the cluster. In addition, it provides a distributed file system that stores data on the compute nodes, providing very high aggregate bandwidth across the cluster. Both Map Reduce and the distributed file system are designed so that the node failures are automatically handled by the framework. Hadoop has been implemented making use of Java. In Hadoop, the combination of the entire JAR files and classed needed to run a Map Reduce program is called a job. All of these components are themselves collected into a JAR which is usually referred to as the job file. To execute a job, it is submitted to a jobTracker and then executed.
6
Clloud Type es
Pu ublic Cloud C Pub blic cloud or exte ernal clou ud descrribes clou ud computing in the t tradittional ma ainstream m. Public clouds are a run by y third parties, an nd applic cations frrom diffferent cu ustomers are likelly to be mixed m tog gether on the clo oud’s serv vers, sto orage sysstems, an nd networrks. A pu ublic clou ud provid des serviices to m multiple cusstomers.
Private clloud: Private clou uds are built b for th he exclusive use of one cllient, pro oviding th he utmosst con ntrol ove er data, se ecurity, and a quality of serrvice. The e compan ny owns the infrrastructu ure and has h contro ol over how h appliications are a deplo oyed on it. Private clo ouds can be built and man naged by y a compa any’s ow wn IT orga anization n or by a clo oud proviider
Hy ybrid clloud: Hybrid clou uds comb bine both h public and private cloud d modelss. This is most ofte en see en with th he use off storage clouds to o supporrt Web 2.0 applic cations.
7
Cloud C d Com mputing Categ C gorie es Gmail, Google Calend dar, IBM Lotus L Live etc c
App plication Servic ces(AaaS)
So oftware Services(SaaS))
P Platform S Services(P PaaS)
Infrrastructurre Service es(IaaS)
Google e App en ngine, AWS, IB BM Virtua al Imagess
Micro osoft Azu ure, IBM Blue House, VMware, V Amazzon EC2
Cloud com mputin ng produ ucts and services can n be cla assified d into 4 ma ajor cattegories: 1. Applicati A ion as s service s (A AaaS): Th hese are the t first kind k of clloud com mputing
serrvices tha at came into i bein ng. Underr this, a service s iss made av vailable to an end duse er. The end-user is i asked to create e an acco ount with h the serv vice prov vider and d sta art using tthe appliication. One O of firrst famou us applica ation wass web-ba ased ema ail serrvice by h hotmail started s in n 1996. Sc cores of such serv vices are e availab ble now on o the e web. 2. Platform P as a Serv vice (Paa aS): Cloud d vendorrs are com mpaniess that offe er cloud
com mputing servicess and pro oducts. One of the e servicess that the ey provid de is calle ed g platforrm such as Paa aS. Unde er this a computin c a operatting syste em is pro ovided to oa cusstomer or end use er on a monthly m rental bassis. Some e of the major m cloud com mputing vendor are a Amazzon, Micrrosoft, Go oogle etc c
8
3. Infrastructure as a service: The cloud computing vendors offer infrastructure
as a service. One may avail hardware services such as processors, memory, networks etc. on agreed basis for specific duration and price. 4. Software as a service (SaaS): Software package such as CRM or CAD/CAM can
be accessed under cloud computing scheme. Here a customer upon registration is allowed to use software accessible through net and use it for his or his business process. The related data and work may be stored on local machines or with the service providers. SaaS services may be available on rental basis or on per use basis.
Component The key to a SOA framework that supports workflows is componentization of its services, an ability to support a range of couplings among workflow building blocks, fault-tolerance in its data- and process-aware service-based delivery, and an ability to audit processes, data and results, i.e., collect and use provenance information. Component-based approach is characterized by reusability (elements can be re-used in other workflows), substitutability (alternative implementations are easy to insert, very precisely specified interfaces are available, run-time component replacement mechanisms exist, there is ability to verify and validate substitutions, etc), extensibility and scalability (ability to readily extend system component pool and to scale it, increase capabilities of individual components, have an extensible and scalable architecture that can automatically discover new functionalities and resources, etc),customizability (ability to customize generic features to the needs of a particular scientific domain and problem), and composability (easy construction of more complex functional solutions using basic components, reasoning about such compositions, etc.). There are other Characteristics those also are very important. Those include reliability and availability of the components and services, the cost of the services, security, total cost of ownership, economy of scale, and so on. In the context of cloud computing we distinguish many categories of components. From differentiated and undifferentiated hardware, to general-purpose and specialized software and applications, to real and virtual ―imagesǁ, to environments, to no-root Differentiated resources, to workflow-based environments and collections of services, and soon. 9
Virtua V alization
Virtua alization is anothe er very useful con ncept. It allows a ab bstraction n and iso olation of lower-le evel functtionalitie es and un nderlying g hardwa are. This e enables porrtability of higherr-level fu unctions and a sharing and//or aggre egation of o the phy ysical resources. The virtu ualization n concep pt has been aroun nd in som me form sin nce 1960ss (e.g., in n IBM mainframe systems) s ). Since th hen, the concept has ma atured co onsiderab bly and itt has bee en applie ed to all aspects a o computing – of that IT me emory, sttorage, processor p rs, softwa are, netw works, as well as services s offe ers. It is tthe comb bination of o the gro owing ne eeds and d the rece ent advan nces in th he IT architect a tures and d solution ns that is now brin nging the e virtualizzation to the true com mmodity y level. Virtualizat V tion, thro ough its economy e y of scale,, and its a ability to o offe er very a advanced d and com mplex IT servicess at a rea asonable cost, is poised p to o bec come, along with h wirelesss and hig ghly distrributed and a perva asive com mputing dev vices, su uch as sen nsors and d person nal cell-based acc cess deviices, the driving tec chnology y behind the next wave in IT growtth .Not su urprising gly there are doze ens of virtualiza v ation products, an nd a num mber of sm mall and large companiess that mak ke the em. Some e examplles in the e operatin ng system ms and software applicati a ions spac ce are e VMware e1, Xen - an open n source Linux-ba ased prod duct dev veloped by b Xen nSource2 2, and Microsoft virtualiza v ation prod ducts, to mention n a few. Major M IT pla ayers hav ve also sh hown a re enewed interest in i the tec chnology y. Classic cal storag ge pla ayers suc ch as EMC C10, NetA App11, IBM12 I an nd Hitach hi13 have e not been standin ng stilll either. In addition, the network n virtualiza v ation marrket is tee eming wiith activity.
10
Users The most important Cloud entity, and the principal quality driver and constraining influence is, of course, the user. The value of a solutions depends very much on the view it has of its end-user requirements and user categories. There four broad sets of nonexclusive user categories: System or Cyber infrastructure (CI) developers, developers (authors) of different component services and underlying applications, technology and domain personnel that integrates basic services into composite services and their orchestrations (workflows) and delivers those to end-users, and finally users of simple and composite services. User categories also include domain specific groups, and indirect users such as stakeholders, policy makers, and so on. Functional and usability requirements derive, in most part, directly from the user profiles.
Advantages of Cloud Computing • Lower computer costs: – You do not need a high-powered and high-priced computer to run cloud computing's web-based applications. – Since applications run in the cloud, not on the desktop PC, your desktop PC does not need the processing power or hard disk space demanded by traditional desktop software. – When you are using web-based applications, your PC can be less expensive, with a smaller hard disk, less memory, more efficient processor... – In fact, your PC in this scenario does not even need a CD or DVD drive, as no software programs have to be loaded and no document files need to be saved.
• Reduced software costs: – Instead of purchasing expensive software applications, you can get most of what you need for free-ish! – That is right - most cloud computing applications today, such as the Google Docs suite, are totally free.
11
• Instant software updates: – Another advantage to cloud computing is that you are no longer faced with choosing between obsolete software and high upgrade costs. – When the application is web-based, updates happen automatically available the next time you log into the cloud. – When you access a web-based application, you get the latest version - without needing to pay for or download an upgrade.
• Unlimited storage capacity: – Cloud computing offers virtually limitless storage. – Your computer's current 200 Gbyte hard drive is small compared to the hundreds of Pbytes available in the cloud. – Whatever you need to store, you can.
• Increased data reliability: – Unlike desktop computing, in which if a hard disk crashes and destroy all your valuable data, a computer crashing in the cloud should not affect the storage of your data. – That also means that if your personal computer crashes, all your data is still out there in the cloud, still accessible. – In a world where few individual desktop PC users back up their data on a regular basis, cloud computing is a data-safe computing platform!
Working Of Cloud Computing: Cloud computing system can be divided it into two sections: the front end and the back end. They connect to each other through a network, usually the Internet. The front end is the side the computer user, or client, sees. The back end is the "cloud" section of the system. On the back end there are various computers, servers and data storage systems that create the "cloud" of computing services. A central server administers the system, monitoring traffic and client demands to ensure everything runs smoothly. It follows a set of rules 12
callled proto ocols Serrvers and d remote e compute ers do most m of the e work an nd store the e data.
Merits M s & Deme D erits: Me erits: Clo oud enab bler techn nologiess like utiliity computing, Grrid Comp puting, R RTI, web infrrastructu ure and others o are e cloud enabled. e 1. Infrastruc I cture serrvice providers arre taking g advanta age of the e Cloud services. s . 2. Informati I ion services, ente ertainmen nt-orientted services such h as video o on dem mand, sim ervices su uch as cu ustomer authentic a cation or identity mple bussiness se ma anagement and co ontextuall services such ass location n or mapp ping serv vices are e possitioned well by using u the e service. 3. Other O serrvices, su uch as co orporate processe es (for ex xample, billing, deduction d n ma anagement and mortgage m calculatiion) and transactiional serrvices (fo or examp ple, fisc cal transa actions), would ta ake longe er to reac ch the clo oud and the main nstream. 4. Cloud C co omputing g infrastru uctures allows a effficient usse of theirr IT hard dware and d sofftware inv vestments 5. A cloud infrastruc i cture can n be a cosst efficien nt modell for deliv vering in nformatio on serrvices, re educing IT I manag gement complexi c ity.
13
6. The Cloud makes it possible to launch Web 2.0 applications quickly and to scale up applications as much as needed when needed.
Demerits: 1. Stored data might not be secure: With cloud computing, all our data is stored on the cloud. The unauthorized users gain access to our confidential data. 2. Dependent on internet connection: Internet connectivity isn’t completely stable and reliable. 3. It’s not platform agnostic: Most clouds force participants to rely on a single platform or host only one type of product. 4. Can be slow: Even on a fast connection, web based application scan sometimes be slower than accessing a similar software program on our desktop PC.
Conclusion ―Cloud computing builds on decades of research in virtualization, distributed computing, utility computing, and more recently networking, web and software services. It implies a service oriented architecture, reduced information technology overhead for the end-user, great flexibility, reduced total cost of ownership, on demand services and many other things. In today's global competitive market, companies must innovate and get the most from its resources to succeed. Cloud computing infrastructures are next generation platforms that can provide tremendous value to companies of any size. They can help companies achieve more efficient use of their IT hardware and software investments and provide a means to accelerate the adoption of innovations. Cloud computing increases profitability by improving resource utilization. Costs are driven down by delivering appropriate resources only for the time those resources are needed. Cloud computing has enabled teams and organizations to streamline lengthy procurement processes. Cloud computing enables innovation by alleviating the need of innovators to find resources to develop, test, and make their innovations available to the user community. Innovators are free to focus on the innovation rather than the logistics of finding and managing resources that enable the innovation.
14
References 1. http://www.infoworld.com/article/08/04/07/15FE-cloud-computingreality_1.html, “What Cloud Computing Really Means” 2. http://www.spinnakerlabs.com/CloudComputing.pdf “Welcome to the new era of cloud computing PPT” 3. http://www.johnmwillis.com/ 4. “Demystifying Clouds” - discusses many players in the cloud space 5. www.ibm.com/developerworks/websphere/zones/hipods/library.html\ 6. http://communication.howstuffworks.com/cloud-computing2.html 7. www.thbs.com 8. http://www.wikipedia.org/
15