Ana içeriğe atla

Cloud Architecture

The cloud providers actually have the physical data centers to provide virtualized services to their users through Internet. The cloud providers often provide separation between application and data. This scenario is shown in the Figure 2. The underlying physical machines are generally organized in grids and they are usually geographically distributed. Virtualization plays an important role in the cloud scenario. The data center hosts provide the physical hardware on which virtual machines resides. User potentially can use any OS supported by the virtual machines used.

 Operating systems are designed for specific hardware and software. It results in the lack of portability of operating system and software from one machine to another machine which uses different instruction set architecture. The concept of virtual machine solves this problem by acting as an interface between the hardware and the operating system called as system VMs . Another category of virtual machine is called process virtual machine which acts as an abstract layer between the operating system and applications. Virtualization can be very roughly said to be as software translating the hardware instructions generated by conventional software to the understandable format for the physical hardware. Virtualization also includes the mapping of virtual resources like registers and memory to real hardware resources. The underlying platform in virtualization is generally referred to as host and the software that runs in the VM environment is called as the guest. The Figure 3 shows very basics of virtualization. Here the virtualization layer covers the physical hardware. Operating System accesses physical hardware through virtualization layer. Applications can issue instruction by using OS interface as well as directly using virtualizing layer interface. This design enables the users to use applications not compatible with the operating system.

Virtualization enables the migration of the virtual image from one physical machine to another and this feature is useful for cloud as by data locality lots of optimization is possible and also this feature is helpful for taking back up in different locations. This feature also enables the provider to shut down some of the data center physical machines to reduce power consumption.

Comparison between Cloud Computing and Grid Computing 

Most of the cloud architectures are built on Grid architecture and utilizes its service. Grid is also a form of distributed computing architecture where organizations owning data centers collaborate with each other to have mutual benefit. Although if apparently seen it seems that cloud computing is no different from its originator in the first look but there are substantial difference between them in spite of so many similarities. The relation between Grid and cloud computing is discussed in Table 1.

Relation between Cloud Computing and Utility Computing 

The cloud users enjoy utility computing model for interacting with cloud service providers. This Utility computing is essentially not same as cloud computing. Utility computing is the aggregation of computing resources, such as computation and storage, as a metered service similar to a traditional public utility like electricity, water or telephone network. This service might be provided by a dedicated computer cluster specifically built for the purpose of being rented out, or even an under-utilized supercomputer. And cloud is one of such option of providing utility computing to the users.

Types of utility cloud services 

Utility computing services provided by the cloud provider can be classified by the type of the services. These services are typically represented as XaaS where wecan replace X by Infrastructure or Platform or Hardware or Software or Desktop or Data etc. There are three main types of services most widely accepted - Software as a Service, Platform as a Service and Infrastructure as a Service. These services provide different levels of abstraction and flexibility to the cloud users. This is shown in the Figure 4.

Table 1: Comparison between Grid & Cloud computing 

 Characteristics
 Grid Computing
 Cloud Computing



 Business Model
 Adopts project oriented business model. The participating parties agree to share a certain amount of resource with others and gain the opportunity of using all other grids’ resources
 Uses Pay-as-you-go model.



Resource Management
 Schedules dedicated resources by a queuing service. Until all the resources are available as specified by the LRM (Local Resource Manager) the job waits in the queue. Thus interactive and latency intensive applications are not executed efficiently in grid.
 Share all resources simultaneously to all the users at the same time. This allows latency intensive and interactive applications run naively in cloud.





 Virtualization
 No virtualization, as the data centers are handled by the individual organizations of their own. So they generally manage those usually physically but not by virtualization. Although there are some efforts being given by some companies like Nimbus for virtualization to make dynamic deployment and abstraction available.
 For cloud computing one of the essential components is virtualization. This is for providing abstraction and encapsulation to the users of the cloud.

 Application model
 Executing tasks may be small or large, loosely coupled or tightly coupled, compute intensive or data intensive.
 Supports only loosely coupled and transaction oriented, mostly interactive jobs.


Security model
 Grids build on the assumption that resources are heterogeneous and dynamic. Thus security is engineered in fundamental grid infrastructure
 Cloud security is now in its infancy.
 

1. SaaS (Software as a service) 

Delivers a single application through the web browser to thousands of customers using a multitenant architecture. On the customer side, it means no upfront investment in servers or software licensing; on the provider side, with just one application to maintain, cost is low compared to conventional hosting. Under SaaS, the software publisher (seller) runs and maintains all necessary hardware and software. The customer of SaaS accesses the applications through Internet. For example Salesforce.com with yearly revenues of over $300M, offers on-demand Customer Relationship Management software solutions. 

This application runs on Salesforce.com’s own infrastructure and delivered directly to the users over the Internet. Salesforce does not sell perpetual licenses but it charges a monthly subscription fee starting at $65/user/month. Google docs is also a very nice example of SaaS where the users can create, edit, delete and share their documents, spreadsheets or presentations whereas Google have the responsibility to maintain the software and hardware. E.g. - Google Apps, Zoho Office.

2. PaaS (Platform as a service) 

Delivers development environment as a service. One can build his/her own applications that run on the provider’s infrastructure that support transactions, uniform authentication, robust scalability and availability. The applications built using PaaS are offered as SaaS and consumed directly from the end users’ web browsers. This gives the ability to integrate or consume third-party web-services from other service platforms. E.g. - Google App Engine.

3. IaaS (Infrastructure as a Service) 

IaaS service provides the users of the cloud greater flexibility to lower level than other services. It gives even CPU clocks with OS level control to the developers. E.g. - Amazon EC2 and S3.


Bu blogdaki popüler yayınlar

Cloud Computing Reference Architecture: An Overview

The Conceptual Reference Model Figure 1 presents an overview of the NIST cloud computing reference architecture, which identifies the major actors, their activities and functions in cloud computing. The diagram depicts a generic high-level architecture and is intended to facilitate the understanding of the requirements, uses, characteristics and standards of cloud computing. As shown in Figure 1, the NIST cloud computing reference architecture defines five major actors: cloud consumer, cloud provider, cloud carrier, cloud auditor and cloud broker. Each actor is an entity (a person or an organization) that participates in a transaction or process and/or performs tasks in cloud computing. Table 1 briefly lists the actors defined in the NIST cloud computing reference architecture. The general activities of the actors are discussed in the remainder of this section, while the details of the architectural elements are discussed in Section 3. Figure 2 illustrates the intera

CLOUD COMPUTING – An Overview

Resource sharing in a pure plug and play model that dramatically simplifies infrastructure planning is the promise of „cloud computing‟. The two key advantages of this model are easeof-use and cost-effectiveness. Though there remain questions on aspects such as security and vendor lock-in, the benefits this model offers are many. This paper explores some of the basics of cloud computing with the aim of introducing aspects such as: Realities and risks of the model  Components in the model  Characteristics and Usage of the model  The paper aims to provide a means of understanding the model and exploring options available for complementing your technology and infrastructure needs. An Overview Cloud computing is a computing paradigm, where a large pool of systems are connected in private or public networks, to provide dynamically scalable infrastructure for application, data and file storage. With the advent of this technology, the cost of computation, application hosting, c