Professional Documents
Culture Documents
CHAPTER 1 Introduction
According to the IEEE Computer Society Cloud Computing is: "A paradigm in which information is permanently stored in servers on the Internet and ached temporarily on clients that include desktops, Entertainment centres, table computers, notebooks, wall computers, handhelds, etc." Cloud computing is Internet ("cloud") based development and use of computer technology ("computing"). It is an emerging computing technology that uses the Internet and central remote servers to maintain data and applications. Cloud computing allows consumers and business to use applications without installation and access their personal files at any computer with Internet access. This technology allows for much more efficient computing by centralizing storage, memory, processing and bandwidth. A definition for cloud computing can be given as an emerging computer paradigm where data and services reside in massively scalable data centres in the cloud and can be accessed from any connected devices over the internet. 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. Cloud computing is the next natural step in the evolution of on-demand information technology services and products. To a large extent cloud computing will be based on virtualized resources. The idea of cloud computing is based on a very fundamental principal of reusability of IT capabilities. Computing can be described as any activity of using and/or developing computer hardware and software. It includes everything that sits in the bottom layer, i.e. everything from raw compute power to storage capabilities. Cloud computing ties together all these entities and delivers them as a single integrated entity under its own sophisticated management. Cloud is a term used as a metaphor for the wide area networks (like internet) or any such large networked environment. It came partly from the cloud-like symbol used to represent the complexities of the networks in the schematic diagrams. It represents all the complexities of the network which may include everything from cables, routers, servers, data centres and all such other devices. With cloud computing we come back to the centralized computing infrastructure. It is something which can easily be accessed via the internet and something over which we have all the control.
CLOUD COMPUTING
If the user wishes to create a document using a word processor, for example, the cloud provides a suitable application running on the server which displays work done by the user on the client web browser display. Memory allocated to the client system's web browser is used to make the application data appear on the client system display, but all computations and changes are recorded by the server, and final results including files created or altered are permanently stored on the cloud servers.
Cloud services work on multiple platforms, including Linux, Macintosh, and Windows computers. Smart phones, pads and tablet devices with Internet and World Wide Web access also provide cloud services to telecommuting and mobile users. A service provider may pool the processing power of multiple remote computers in a cloud to achieve routine tasks such as backing up of large amounts of data, word processing, or computationally intensive work. These tasks might normally be difficult, time consuming, or expensive for an individual user or a small company to accomplish, especially with limited computing resources and funds.
With cloud computing, clients require only a simple computer, such as netbooks, designed with cloud computing in mind, or even a Smartphone, with a connection to the Internet, or a company network, in order to make requests to and receive data from the cloud, hence the term "software as a service" (SaaS). Computation and storage is divided among the remote computers in order to handle large volumes of both, thus the client need not purchase expensive hardware or software to handle the task. The outcome of the processing task is returned to the client over the network, dependent on the speed of the Internet connection.
CLOUD COMPUTING
FIG 2.1
CLOUD COMPUTING
FIG 3.1
CLOUD COMPUTING
Infrastructure-as-a-Service provides virtual server instances with unique IP addresses and blocks of storage on demand. Customers use the providers application program interface to start, stop, access and configure their virtual servers and storage. In the enterprise, cloud computing allows a company to pay for only as much capacity as is needed, and bring more online as soon as required. Platform-as-a-service in the cloud is defined as a set of software and product development tools hosted on the provider's infrastructure. Developers create applications on the provider's platform over the Internet. In the software-as-a-service cloud model, the vendor supplies the hardware infrastructure, the software product and interacts with the user through a front-end portal. Even though cloud computing is a pretty new technology, there are many companies offering the above mentioned cloud computing services. Different companies like Amazon, Google, Yahoo, IBM and Microsoft are all players in the cloud computing services industry. But Amazon is the pioneer in the cloud computing industry with services like EC2 (Elastic Compute Cloud) and S3 (Simple Storage Service) dominating the industry. Microsoft has good knowledge of the fundamentals of cloud science and is building massive data centres. IBM, the king of business computing and traditional supercomputers, teams up with Google to get a foothold in the clouds. Google is far and away the leader in cloud computing with the company itself built from the ground up on hardware.
CLOUD COMPUTING
FIG 4.1
CHAPTER 5
Dept. of ECE, College Of Engineering Perumon 6
CLOUD COMPUTING
CLOUD COMPUTING
is still an emerging area of development with some early companies, such as Cast Iron, providing integration of a wide range of cloud-based applications. Ultimately, many customers may decide that the private cloud offers more flexibility and develop new applications themselves.
CLOUD COMPUTING
CHAPTER 6
CLOUD COMPUTING
10
CLOUD COMPUTING
CLOUD COMPUTING
What could we do with 1000 times more data and CPU power? Now thats one very simple question the answer to which we all know. Thats all it took the interviewers to bewilder the confident job applicants at Google. This is a question of relevance because the amount of data that an application handles is increasing day by day and so is the CPU power that one can harness. There are many answers to this question. With this much CPU power, we could scale our businesses to 1000 times more users. Right now we are gathering statistics about every user using an application. With such CPU power at hand, we could monitor every single user click and every user interaction such that we can gather all the statistics about the user. We could improve the recommendation systems of users. We could model better price plan choices. With this CPU power we could simulate the case where we have, say 1, 00,000 users in the system without any glitches. There are lots of other things we could do with so much CPU power and data capabilities. But what is keeping us back. One of the reasons is the large scale architecture which comes with these are difficult to manage. There may be many different problems with the architecture we have to support. The machines may start failing, the hard drives may crash, the network may go down and many other such hardware problems. The hardware has to be designed such that the architecture is reliable and scalable. This large scale architecture has a very expensive upfront and has high maintenance costs. It requires different resources like machines, power, cooling, etc. The system also cannot scale as and when needed and so is not easily reconfigurable. The resources are also constrained by the resources. As the applications become large, they become I/O bound. The hard drive access speed becomes a limiting factor. Though the raw CPU power available may not be a factor, the amount of RAM available clearly becomes a factor. If at all the hardware problems are managed very well, there arises the software problems. There may be bugs in the software using this much of data. The workload also demands two important tasks for two completely different people. The software has to be such that it is bug free and has good data processing algorithms to manage all the data. The cloud computing works on the cloud - so there are large groups of often low-cost servers with specialized connections to spread the data-processing chores among them. Since there are a lot of low-cost servers connected together, there are large pools of resources available. So these offer almost unlimited computing resources. This makes the availability of resources a lesser issue. The data of the application can also be stored in the cloud. Storage of data in the cloud has many distinct advantages over other storages. One thing is that data is spread evenly through the cloud in such a way that there are multiple copies of the data and there are ways by which failure can be detected and the data can be rebalanced on the fly. The I/O operations become simpler in the cloud such that browsing and searching for something in 25GB or more of data becomes simpler in the cloud, which is nearly impossible to do on a desktop.
Dept. of ECE, College Of Engineering Perumon 12
CLOUD COMPUTING
The cloud computing applications also provide automatic reconfiguration of the resources based on the service level agreements. When we are using applications out of the cloud, to scale the application with respect to the load is a mundane task because the resources have to be gathered and then provided to the users. If the load on the application is such that it is present only for a small amount of time as compared to the time its working out of the load, but occurs frequently, then scaling of the resources becomes tedious. But when the application is in the cloud, the load can be managed by spreading it to other available nodes by making a copy of the application on to them. This can be reverted once the load goes down. It can be done as and when needed. All these are done automatically such that the resources maintain and manage themselves.
CLOUD COMPUTING
The primary benefits of using cloud computing are as follows: 1. To deliver a future state architecture that captures the promise of Cloud Computing, architects need to understand the primary benefits of Cloud computing. 2. Decoupling and separation of the business service from the infrastructure needed to run it (virtualization). 3. Flexibility to choose multiple vendors that provide reliable and scalable business services, development environments, and infrastructure that can be leveraged out of the box and billed on a metered basiswith no long term contracts. 4. Elastic nature of the infrastructure to rapidly allocate and de-allocate massively scalable resources to business services on a demand basis. 5. Cost allocation flexibility for customers wanting to move CapEx into OpEx. 6. Reduced costs due to operational efficiencies, and more rapid deployment of new business services.
FIG 9.1
14
CLOUD COMPUTING
1. Customer Perspective
Data Security: Many customers dont wish to trust their data to the cloud. Data must be locally retained for regulatory reasons. Latency: The cloud can be many milliseconds away. Not suitable for real-time applications. Application Availability: Cannot switch from existing legacy applications. Equivalent cloud applications do not exist.
2. Vendor Perspective
1. Service Level Agreements
Security: with the businesses information and critical IT resources outside the firewall, customers worry about their vulnerability to attack. Cloud services dependability: The complex web of interdependency that supports cloud services availability and performance from network availability and performance, to the availability and performance of the cloud service providers systems, and beyond, to the performance and availability of the supply chain of services that the service provider depends on cries out for suppliers who can offer greater transparency of interdependencies as well as credible service level assurances.
2. Business Models SaaS/PaaS models are challenging. Much lower upfront revenue. While customers certainly enjoy the economic and operational benefits of the off-theshelf, standardized nature of many cloud services, this survey shows they nonetheless want greater ability to fit cloud services more tightly into the context of their specific business. Users want to maximize the leverage of their many other critical business systems in-house legacy systems and, increasingly, externally-sourced cloud services by being able to integrate across these systems. SaaS 1.0 systems that lack standard-based APIs, and are effectively islands are of diminishing value; this is why user should be include the requirement for web services APIs in definition of cloud services.
CLOUD COMPUTING
16
CLOUD COMPUTING
CHAPTER 10 Conclusion
Cloud Computing is a vast topic and the above report does not give a high level introduction to it. It is certainly not possible in the limited space of a report to do justice to these technologies. What is in store for this technology in the near future? Well, Cloud Computing is leading the industrys endeavour to bank on this revolutionary technology. Today, with such cloud-based interconnection seldom in evidence, cloud computing might be more accurately described as "sky computing," with many isolated clouds of services which IT customers must plug into individually. Cloud loud Computing is a technology which took the software and business world by storm. The much deserved hype over it will continue for years to come. Cloud computing is a powerful new abstraction for large scale data processing systems which is scalable, reliable and available. In cloud computing, there are large selfmanaged server pools available which reduces the overhead and eliminates management headache. Cloud computing services can also grow and shrink according to need. Cloud computing is particularly valuable to small and medium businesses, where effective and affordable IT tools are critical to helping them become more productive without spending lots of money on inhouse resources and technical equipment. Also it is a new emerging architecture needed to expand the Internet to become the computing platform of the future. Cloud Computing is the next big thing in the arena of computing and storage. There are some concerns about security and its availability. However, different service providers are coming up with various solutions and suggestions in response to customers concerns. In any case, cloud is getting bigger and better, and as long as they are available through web services, without capital infrastructure investment at reasonable price, it is for sure going to proliferate and create robust demand in times to come.
CHAPTER 11
Dept. of ECE, College Of Engineering Perumon 17
CLOUD COMPUTING
Reference
18