The Cloud Thingy
There are as many views on the Cloud as there are people and a lot of companies are struggling with the dilemma whether they must go the cloud. But what is “the Cloud”? Is it just ‘someone else’s computer’, just another marketing buzzword or is there more than meets the eye? Read further to learn more about the subject as well as some of the biggest advantages and disadvantages.
According to the experts
Talking to people (at the lunch table) and searching the internet on the topic of cloud and cloud computing shows a wide variety of definitions and opinions.
“For me the simplest explanation for cloud computing is describing it as, ‘internet-centric software.”
“You can scale your infrastructure on demand within minutes or even seconds, instead of days or weeks, thereby avoiding under-utilization (idle servers) and over-utilization (blue screen) of in-house resources.”
“I view cloud computing as a broad array of web-based services aimed at allowing users to obtain a wide range of functional capabilities on a ‘pay-as-you-go’ basis that previously required tremendous hardware/software investments and professional skills to acquire.”
“The way I understand it, “cloud computing” refers to the bigger picture…basically the broad concept of using the internet to allow people to access technology-enabled services.”
“There really are only three types of services that are cloud based: SaaS, PaaS, and Cloud Computing Platforms. I am not sure if being massively scalable is a requirement to fit into any one category.”
“Cloud Computing refers to both the applications delivered as services over the Internet and the hardware and systems software in the data centers that provide those services. The services themselves have long been referred to as Software as a Service(SaaS), so we use that term.”
“Outsourced, pay-as-you-go, on-demand, somewhere in the internet, etc.”
“Cloud computing is misleading. As a marketing buzzword, it’s used to suggest that something new and better is going on, when in fact there may be nothing new about it.”
“Cloud computing is a general term for anything that involves delivering hosted services over the Internet. These services are broadly divided into three categories: IaaS, PaaS) and SaaS.”
“Cloud Computing is the same as virtualization.”
What is cloud computing?
A lot of companies are jumping on the bandwagon and trying to improve their profit margin by offering services and solutions under the label of cloud (computing). These are the usual suspects like Amazon, Google and Microsoft who have a strong focus on cloud computing, but also vendors such as IDM, VMware, Oracle, SAP and HP. Since the cloud computing industry represents a large ecosystem of models, vendors, and market niches any definition should (attempt) to encompass all of its various facets. Furthermore, Cloud computing is still an evolving paradigm. Its definitions, use cases, underlying technologies, issues, risks, and benefits will be refined in a spirited debate by the public and private sectors. Therefore definitions, attributes, and characteristics will evolve and change over time.
Nevertheless, a thorough and broadly accepted definition of Cloud Computing is provided by the National Institute of Standards and Technology (NIST):
“Cloud computing is a model for enabling ubiquitous, 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. This cloud model is composed of five essential characteristics, three service models, and four deployment models.”
The cloud infrastructure is made available to the general public or a large industry group and is owned by an organization selling cloud services. The cloud infrastructure is operated solely for an organization. It may be managed by the organization or a third party and may exist on premise or off premise. The cloud infrastructure is a composition of two or more clouds (private,
community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enable data and application portability (e.g., cloud bursting for load balancing between clouds). The cloud infrastructure is shared by several organizations and supports a specific community that has shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be managed by the organizations or a third party and may exist on premise or off premise.
The capability provided to the consumer is to use the provider’s applications running on a cloud infrastructure. The applications are accessible from various client devices through a thin client interface such as a web browser (e.g., web-based email). The consumer does not manage or control underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings. The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly application hosting environment configurations. The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls).
The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or data center). Examples of resources include storage, processing, memory, network bandwidth, and virtual machines.
Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs). They (the capabilities) can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out, and rapidly released to quickly scale in. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be purchased in any quantity at any time. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service’s provider.
Advantages of cloud computing
Cloud computing offers organizations high flexibility and high scalability on its IT infrastructure as well as their storage and services capabilities. When moving to the cloud, an organization will have no setup costs (e.g. infrastructure and hardware), which gives them the opportunity for a quick time to market. The financial risks of the organization will be reduced through the pay-per-use policies and clear cost per use. Also, the cost itself can be reduced through administration saving, since no hardware, OS and/or middle-ware administration are needed. Cloud computing also offers the benefits of reduction of overhead, since it is possible to scale-up in tiny steps and also to scale back when needed. Furthermore, using cloud computing allows users to work anytime and anywhere without a VPN.
Potential risk of cloud computing
Like everything, cloud computing too, has a risk potential. Moving to the cloud brings along concerns that must be managed. It’s the responsibility of the organization to deal with that. In order to manage these concerns, organizations must have a vision and a strategy about how they will use cloud computing.
- Vendor lock-in if there is no exit policy.
- Information moving across borders (privacy laws, legal jurisdiction, applicable law, potential eavesdropping).
- Potential for world wide intrusion, mitigation of security risks shift to the cloud provider.
- Security is as good as the vulnerabilities of the cloud provider.
- Unmanageable amount of client types, resulting in high support cost.
- Resource consumption spinning out of control.
- Information loss when down-scaling.
- Uncontrolled acquisition of services.
- Bypassing of corporate security policies.
Organizations must keep their eyes on the potential risk factors. It often requires a paradigm shift in the internal resourcing model; moving from an on-premise 24/7 maximum resource consumption to a demand driven consumption of the cloud resources.