Cloud computing is a newly emerging computing paradigm
powered by virtualization, wherein remote and virtualized computing resources
are utilized by users. It can be defined in more simplified way as
mechanism that enables management of computing and IT infrastructure to be
consolidated in one or more computing units(i.e. data centers, etc) to reduce
the overall cost of operating computing facilities
|
Basic Architecture of a Cloud |
Key
features are:
1. Dynamically
scalable and virtualized Resources
2. Increased
system utilization
3. Massive scaling of IT services as needed
4. Reduced CapEx
5. On demand service provisioning
6. Elastic service
7. Quality of Service
8. Location independent
|
What Cloud Can facilitate you? |
The idea of cloud computing
is based on a very fundamental principal of “reusability of IT capabilities”. The difference that cloud computing brings compared to traditional
concepts of “grid computing”, “distributed computing”, “utility computing” or
“autonomic computing” is to broaden horizons across organizational boundaries.
Since decades, enterprises
have spent time and resources in building an infrastructure that could provide
them a competitive advantage and finally cloud computing had done that. With
cloud computing, excess computing capacity can be put to use and be profitably
sold to consumers or organization according to there need. This transformation
of computing and IT infrastructure into a utility, which could be available to
all, is the basis of cloud computing and virtualization.
Cloud Computing Deployment Models:
Another relevant concept is the cloud deployment models. The most well-known are the following four, but it is important to note that there are other models that derive from these.
Public: Resources are available to the general public over the Internet. In this case, “public” characterizes the scope of interface accessibility, not whether or not resource usage is charged. This environment emphasizes the benefits of scalability, rationalization (since one can use only the required resources and pay just for their use “by the drink”), and operational simplicity (since the environment is hosted by a third party, i.e., the cloud provider). The main issue is security, since the environment is shared and managed by the cloud provider, and, accordingly, the consumer/subscriber has little control over it.
Private: Resources are accessible within a private organization. This environment emphasizes the benefits of scalability, integration, and optimization of hardware investments. The main issue is operational complexity, since the environment is hosted and managed by internal resources. Security is not a major concern when compared to a public cloud as the resources are accessible only through internal interfaces and are interconnected by private networks protected by network firewalls.
Community: Resources on this model are shared by several organizations with a common mission. It may be managed by one of the organizations or a third party.
Hybrid: This model mixes the techniques from public and private clouds. A private cloud can have its local infrastructure supplemented by computer capacity from a public cloud. The benefits and challenges are a combination of the items above.
Cloud Computing Service Models:
1. SaaS (Software as a Service): Software
or an application is hosted as a service and provided to customers across the
Internet. This mode eliminates the need to install and run the application on
the customer’s local computers. SaaS therefore alleviates the customer’s burden
of software maintenance, and reduces the expense of software purchases by on demand
pricing. We have many examples of SaaS applications
like Google Apps, Salesforce.com, Blogger, etc
2. PaaS (Platform as a Service): In PaaS, basically platform is provided for developers to develop their applications and host them on the cloud. Every PaaS has its own development language like Salesforce have APEX or Windows Azure can use .Net framework to develop applications. So, finally PaaS is nothing but Network-hosted software development platform. Secondly, PaaS has very limited scope because there is language constraint for developers to migrate their applications to the cloud.
3. DaaS (Data as a Service): Data in various formats and from multiple sources could be accessed via DaaS by any users on the network. User can just manipulate the remote data just like operate on a local disk or access the data in a semantic way in the Internet. So, in DaaS customer queries against providers’ database. We have many examples of DaaS like Amazon's Simple Storage Service (S3), Google Docs, etc.
4. IaaS (Infrastructure as a Service): Based
on the support of SaaS and DaaS, the cloud computing in addition can deliver
the Infrastructure as a Service (IaaS) for users. Users thus can on-demand
subscribe to their favorite computing infrastructures with requirements of hardware
configuration, software installation and data access demands. So, in IaaS Provider hosts customer VMs or provides network storage. We have
many examples of IaaS providers like Amazon, GoGrid, IBM, CloudWorks, etc
5. HaaS (Hardware as a
Service): Hardware
as a Service was coined possibly in 2006. As the result of rapid advances in
hardware virtualization, IT automation and usage metering and pricing so that users
could buy IT hardware, or even an entire data center, as a pay-as-you-go
subscription service. The HaaS is flexible, scalable and manageable to meet
your needs. We have many examples of HaaS providers like Amazon,
PayPal, IBM, CloudWorks, etc
1. Resource sharing is more efficient
2. Faster time to roll out new services
3. Reduced costs
4. Management moves to cloud provider
5. Dynamic resource availability for crunch
periods
6. Consumption based cost
Cons of Cloud Computing
1. Compliance/regulatory
laws mandate on-site ownership of data or geological constraints
2. Availability
& reliability
3. Uncertainty
around interoperability, portability & lock in
4. Security and
privacy Latency & bandwidth guarantees
Challenges in Cloud Computing
1. Privacy and Security
2. Governance and Compliance
3. Availability
4. Performance
5. Sustainability
If any questions on Cloud Computing, feel free to write an email to sumi.shingavi@gmail.com