Abstraction Level of Environments-as-a-Service
While in the cloud-native world a lot of artifacts have been slowly abstracted and automated, pre-production environments are still created using hand-crafted scripts. To make matters worse, every team like development, QA, DevOps, security have their own snowflake environment & snowflake pipelines to determine whether a pull request is ready for production or not. This problem is being solved by leading platforms like Roost.ai which brings the As-a-Service model to pre-production environments with “Environments as a Service.”
In this blog, I am going to cover how EaaS fits into the As-a-Service ecosystem.
What is As-a-Service
The As-a-service model evolved with two parallel streams:
- Software as a Service (SaaS) model promoted by SalesForce
- Amazon Web Service’s cloud storage and compute offering branded as Infrastructure as a Service (IaaS)
There are various parts of the as-a-service model but the core part is services being delivered over the internet. There are other common well-known aspects like the ability to scale up and down as needed, failover and disaster recovery managed by the cloud provider, etc.
When defining As-a-service, the standard 9 layer architecture is used to classify what part is managed by the provider and what part is managed by the practitioner. Following are the layers:
- Operating System
In the case of Iaas, the provider manages 1–4. In the case of SaaS provider manages the whole nine yards (pun is intended).
Cloud Rebranding and the Birth of Platform as a Service (PaaS)
In the early 2010s, one fine day, with the trick of a magic wand, every company became a cloud company and every machine which was not a desktop became a cloud server. This was an interesting battle of branding as every company which was not offering public cloud services or was not using the same, rebranded itself as a private cloud company.
Interestingly Platform as a Service evolved as two parallel trends:
- Public cloud providers enriching offerings beyond barebones compute and storage like Elastic Map Reduce (the earliest service I can remember)
- OpenStack emerging as the savior of all private cloud (and later getting martyrdom)
In the case of Paas, the provider manages 1–7.
In the standard model, EaaS manages everything except the application tier.
This post was created with Typeshare