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
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
Yorumlar
Yorum Gönder