The Importance of Automation in Cloud Computing
Author: James Bond
The automation of workflow processes is an essential part of cloud computing. Without automation, many of the benefits and characteristics of cloud computing cannot be achieved at the price point that cloud services should be offered. Failure to automate as many processes as possible results in higher personnel labor costs, slower time to deliver the new service to customers, and ultimately higher cost with less reliability.
What is meant by automation? This can best be described by going through a typical example of a customer placing an order within their cloud service web-portal, and following the steps necessary to bring the service online. The actions below illustrate a very high level scenario that cloud management software typically automates:
- Customer logs into web-based cloud portal, views a catalog of available services.
- Customer selects a cloud service such as a medium-sized virtual machine running the Linux operating system. The service catalog shows this size of VM comes with 2 CPUs, 4GB of memory and 50GB of disk storage at a price of $250 per month. Customer choses quantity 2 of this VM, and goes to the checkout section of web site.
- Customer pays for services using a credit card or an existing financial account/credit on file already with the cloud provider. Customer completes the checkout.
- Customer may have an approval process in place (especially for a private cloud deployment) that requires their financial/procurement team to bless the order before it is finalized. So the cloud management system sends an email to the designated approver of this order. The customer approver receives the email, clicks on the URL link, logs into the cloud portal, and approves the order for $250 per month with quantity 2, or $500 per month in total.
- The cloud management system sees the order was approved and immediately begins the process of building the requested virtual machines. The system knows which server farms and pools of available resources it has, and automatically selects which physical server node will host the VMs initially. Storage is allocated/assigned to the VM and a template used for the VM.
- The VMs are booted for the first time and any needed patches or updates automatically installed. The cloud management system detects that the VM has launched and is ready for the customer. It charges the customer’s credit card or deducts funds from the customer’s online account with the provider.
- The cloud management system send a welcome email to the customer indicating the network address and login instructions for how to use their new VMs, along with information on where to obtain documentation and whom to call for support.
- Customer logs into the VMs and performs any further application installations, configurations, and loading of production data. The cloud provider manages all future system updates and ensure systems are operational at all times. Customer manages their own applications and custom configurations themselves.
- Cloud management system automatically renews and re-bills customer every month (or whatever the billing cycle length is). Depending on the type of service offered, there may also be variable expenses, such as if the customer wanted the VMs to automatically increase memory, CPU, or storage upon increased load. The cloud management system will provide the metered resource information to the customer, and charge them accordingly.
As you can see in the above case scenario, there does not need to be a human being involved within the cloud service provider anywhere in this process. In a real public cloud scenario, this process is repeated at all hours, thousands of times per day. This is where the cloud provider gains such scales of economy that the customer is paying less for their cloud service then they would had they built and hosted the service themselves. Without automated processes and cloud management systems, none of these economies of scale are possible and the cloud provider’s costs will be anti-competitive. There are some smaller cloud providers today, that still accept orders via their web sites for cloud services, but there are numerous IT professionals manually configuring everything behind the scenes with little or no automation–this business model is usually not profitable for the provider causing less accuracy, consistency, slower provisioning, and ultimately a poor customer experience.
What to ask your potential cloud provider:
When evaluating your cloud provider choices, ask for a detailed workflow diagram or process that is followed by the cloud provider’s automated workflow system. The cloud provider should be able to provide you a live demonstration of their cloud management platform, ordering process, and show the automated workflow as a cloud service is deployed. This automated deployment is sometimes called orchestration or service provisioning.
About the Author
James Bond is a Chief Technologist with Hewlett Packard Enterprise Systems. His role within the U.S. Public Sector region is to educate and guide customers and internal HP account teams on cloud computing, design/deployment of public, private, hybrid clouds, and cloud brokering. Mr. Bond has over 25 years experience with data centers, server farms, systems architecture, deployment, and operations. Mr. Bond is a subject matter expert and trusted advisor to customers on Infrastructure, Platform, and Software as-a-service in private, public, hybrid, and cloud broker deployment models.