Whether you’re starting a Cloud-native solution from the ground-up or migrating existing on-premise workloads to the Public Cloud, one crucial decision to make is what cloud delivery model you want to use for your organization.
Which cloud delivery model you choose brings to the table different capabilities with one common goal: fast-track value creation for your customers.
Photo credits: RedHat
Infrastructure as a Service (IaaS)
What is IaaS?
Infrastructure as a Service (IaaS) providers lease virtualized computing resources like compute, network, and storage devices to their clients. It provides users access to a fully-functioning data center without dealing with the overhead and scalability issues that come with maintaining on-premise infrastructure.
IaaS users provision these resources through web-based management consoles or APIs. Pricing usually depends on how much resources the client consumes and for how long.
Some examples of IaaS providers include Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure.
Why Spin Up Your Own Infrastructure?
IaaS gives its clients the most control and flexibility over their infrastructure while being provided the means to quickly spin up the infrastructure of their choice compared to the lengthy process that comes with deploying on-premise.
Since you only pay for what you use, it gives you the flexibility to scale up or scale down without being bogged down with infrastructure capacity and planning that can come with on-premise infrastructure.
However, IaaS has its share of concerns: Cloud security operates on a shared responsibility model, where cloud providers are responsible for security “of the cloud,” and the clients for security “in the cloud.”
Despite offloading the responsibilities of running physical infrastructure to the cloud service providers, clients are still responsible for protecting the resources you spin up and the data within them. There is also the need to invest in training employees on how to manage and secure cloud infrastructure.
As you are still in charge of managing any resources that you provision which are usually lower unmanaged constructs on your own, there is still a risk of downtime. This risk can be mitigated by adhering to sound cloud architecture principles and best practices.
While any organization can make use of IaaS providers, specific organizations benefit from using IaaS more than others:
- Companies who want to cut costs through on-demand pricing and run a business at scale while maintaining control over the infrastructure
- Companies of any size whose workload demands fluctuate rapidly
- Organizations who want to tap on the innovation in technologies provided by the cloud providers
Platform as a Service (PaaS)
What is PaaS?
Platform as a Service (PaaS) providers bring in a platform that organizations need to build custom applications without the need to build and maintain the infrastructure to do so. With that out of the way, developers can then focus on application development, testing, and deployment.
Some things PaaS vendors provide include:
- Software development kits for a variety of languages and platforms
- Documentation and support guides
- Development frameworks
- APIs for integrating with web applications
- Code samples for reference
Pricing is also on an on-demand basis, with some PaaS offerings having the option of reserving blocks of resources for a fixed fee.
Some examples of PaaS include: Salesforce, Heroku, and Magento Commerce Cloud
Why Choose PaaS?
PaaS allows organizations to leverage application platform frameworks to experiment and build custom applications without having to worry about infrastructure. PaaS enables teams to ship out new applications faster and cut the time from planning to deployment.
It does so by providing developers modern technologies and capabilities for building and running applications, which they never had access to before if they came from an infrastructure-centric world.
Because PaaS solutions are still cloud-based services, they still contain the same security and operational risks as other cloud solutions. You also run into the risk of vendor lock-in, as many PaaS implementations remain proprietary to one provider.
There is a myriad of use cases for PaaS:
- Businesses who need to bring their solutions to market quickly without worrying about the nuts and bolts of its implementation
- Organizations who want some of the conveniences of pre-built functionality but require customization to support their business needs.
- Companies that require specialized functionality (like e-commerce, data analytics, and machine learning) in their development and would like to leverage a platform that is specialized in a certain niche.
Software as a Service (SaaS)
What is SaaS?
Software as a Service (SaaS) providers deliver fully-functional applications through the Internet to its users. The provider takes care of maintenance end-to-end, and all the user needs to care about is consuming the application.
Some examples of SaaS include Google’s GSuite, Slack, and Horangi Warden.
Why Subscribe to SaaS?
SaaS applications save your organization both time and money because you don’t need to care about building an application or maintaining it — the provider does all that for you. The adoption of SaaS frees up your resources so you can focus on bringing more value to your organization.
This ease of use does come at a cost: SaaS providers are limited in their ability to support use cases outside of how the provider intends it to be used. Vendor lock-in is another major issue as many vendors don’t provide an easy way to extract data out of their platform.
If the application does not follow open standards for interoperability, integrating with your existing workflow can also pose a challenge.
SaaS is an excellent option if you want to quickly add capabilities that you do not wish to build nor manage in-house. Some of these functions include email management, video conferencing, and cloud security.
Secure Cloud Usage
Migrating to the cloud? There is no one-size-fits-all solution when it comes to deciding what combination of cloud solutions is right for your organization. To ensure your organization is protected from security risks as you adopt more cloud solutions, it is critical to implement adequate security policies and tools.
For more information on IaaS security, please check out these articles: