At your service
From these key concepts, cloud as-a-service offerings were launched:
- Software as a Service (SaaS): This is a way of delivering your custom application as a serviceable and consumable product through the internet. Gone are the days of buying a CD-ROM containing a program that then needed to be installed locally. You can now simply navigate to a website where the application is hosted to run it. Websites (commonly termed by Microsoft as web applications) are an example of this.
To assist the developer further, Visual Studio, the main editor application suite available from Microsoft, was also made available as a cloud solution (now called Visual Studio Code).
- Platform as a Service (PaaS): Some code and applications cannot run on a web server. They may still require a machine with a specific operating system to be able to function. For example, I use a variety of code packages from GitHub that are based on the Python programming language. This is a small but powerful language, but it is not web-based. Here, I would create a Virtual Machine (VM) and, on this, build my Python app. I can take a snapshot of the VM, clone, and then rebuild the container by, for example, using Docker. When the installation process is complex and multi-layered, using this simplifies the process. Docker is an excellent product that you will want to install on VMs. You will also want to use a layered software approach to share the same operating system but customize copies of the same build to be used in different ways (for example, two Linux builds with different middleware and different architecture on a virtual network).
To get started with Docker and build your first pre-installed VM, visit the following link: https://www.docker.com/get-started.
- Infrastructure as a Service (IaaS): Now, the entire IT hardware infrastructure can be created in the Azure cloud. Servers, firewalls, and data storage can all be spun up as required and on demand. You pay per use and by the amount of processing power or storage capacity you need. If managed correctly, costs can be considerably reduced as an initial outlay (the purchase of expensive hardware) is no longer required.
- Anything as a Service (XaaS): As cloud offerings expand, they also incorporate interlinking and communication with various established third-party enterprise products. A mixture of services could be offered by a provider, and by doing so, allow the user the ability to create a complex solution, linking different parts of the business together, while in the process moving on-premises data and software to the cloud.
Azure, Google Cloud Platform, and Amazon Web Services are some of the providers offering XaaS solutions.