Cloud computing is an oft-misunderstood and misapplied term. It is used for many new technologies that are not commonly thought of as truly being “cloud,” which can be puzzling.
The first step in understanding how the cloud can benefit an organization is to understand what it is. Cloud is a collection of services that can be layered over one another under the umbrella of “cloud.” The most commonly accepted definition of “cloud computing” comes from the National Institute of Standards and Technology (NIST), which defines cloud computing as “a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources…that can be rapidly provisioned and released with minimal management effort or service provider interaction.”
In other words, end-users can pay for what they use and can acquire or shed additional resources as necessary. Cloud characteristics, as delineated by NIST, include:
- On-Demand Self-Service – Ability of the end-user to sign up and receive service immediately
- Broad Network Access – Ability to access the service via any device
- Resource Pooling – Shared resources across multiple customers
- Rapid Elasticity – Scale to accommodate demand shifts
- Measured Service – Service metered and billed like a utility
If the software does not align to these characteristics, then it is not considered “cloud.”
There are many services within cloud computing, but the three most common categories that are layered over one another to create the cloud computing stack are:
- Software as a Service – Applications the end-users access over the web (e.g., Office 365 or ConnectWise Control)
- Platform as a Service – Tools that allow SaaS to be coded and deployed (e.g., Azure Virtual Machines or Java)
- Infrastructure as a Service – Hardware and software that powers it (i.e. servers, storage, networks, operating systems)
An easy way to differentiate between the three services is to imagine a transportation system where the road is the IaaS, the vehicles are the PaaS, and whatever they are delivering is the SaaS.
SaaS is a software solution that is deployed over the internet that the vendor owns and the end-user essentially rents it. The market for SaaS is showing explosive growth. IDC reports the SaaS and cloud software market was $48.8 billion in 2014 and is expected to surpass @112.8 billion by 2019.
When to Use SaaS
- When the solution doesn’t need to be customized
- When the application includes substantial interactions between internal and external users
- When there’s need for mobile or web access
- When a short-term solution is needed
- When there is a high variance in demand during a usage period
When Not to Use SaaS
- When fast processing of real-time data is needed
- When regulations don’t allow for external hosting of data
- When an existing on premise solution meets the organizations needs
PaaS delivers a computing platform as a service, very often sitting on IaaS and delivering SaaS. It facilitates deployment of already-existing software applications without the cost and complexity of buying and managing the underlying infrastructure and software. It additionally allows for the quick and easy creation of software to be delivered over the web. PaaS is similar, in many ways, to IaaS, but has the distinction of coming with value-added services.
When to Use PaaS
- When multiple developers need to collaborate
- When external parties need to be involved with the development process
- When developers want to automate testing and deployment services
When Not to use PaaS
- When an application needs to be very portable
- When proprietary languages or approaches affect development and hinder later moves to another provider; vendor lock-in becomes an issue
- When application performance requires customization of the underlying hardware and software
IaaS delivers infrastructure, servers, storage, network and operating systems as a service. This allows clients to buy those resources on-demand as needed rather than paying for an entire system, of which they might only use a percentage. IaaS comes in multiple flavors: public cloud, private cloud, or a combination of the two, called hybrid cloud. Public cloud, as you would guess, is shared resources deployed over the internet; private cloud emulates public cloud but on a private network; and hybrid combines the two.
When to Use IaaS?
- When demand varies widely
- When startup costs are a concern; limited funding for hardware
- When scaling hardware is a problem
- When a shift from capital expenses to operating expenses is desired
- When limited usage is foreseen, such as for a single line of business or temporary needs
When Not to Use IaaS
- When regulatory compliance makes outsourcing data storage and processing difficult
- When high performance is a requirement
These elements can work together or separately to create a customized solution to meet any organization’s need. Now that you understand the various elements, you will be better able to determine what your customer’s needs are in the cloud and build the best solution for them.
If you have additional questions or would like more information on the cloud stack, contact ECSCloudServices@arrow.com or call 1.877.558.6677.
Did You Miss Any of Our Other Articles in the A-Z Series?
- Cloud A-Z Part 1: The era of cloud is upon us
- Cloud A-Z Part 2: Cloud computing’s economic value
- Cloud A-Z Part 3: The cloud stack puzzle
- Cloud A-Z Part 4: The complexities of IaaS exposed
- Cloud A-Z Part 5: Are you doing cloud security right?
- Cloud A-Z Part 6: The perils and perks of cloud migration
- Cloud A-Z Part 7: 3 challenges of doing business in the cloud
- Cloud A-Z Part 8: Mixing the right cloud recipe
- Cloud A-Z Part 9: Remarkable benefits of open source cloud
- Cloud A-Z Part 10: Is their workload right for the cloud?
Abstracted from Rackspace’s “Understanding the Cloud Computing Stack: PaaS, SaaS, IaaS”
Last modified: May 3, 2019