The Case Against Orchestration
Management platforms have failed to deliver automation and orchestration for the last 20 years at least. Why would today's software be any more likely to actually work?
If you decide that’s it time to try automation, let's consider what options, tips and plans you could make for a successful deployment.
Now that virtualization is either implemented or under way at most organizations, vendors are focusing on orchestration and automation of their infrastructure to extract pounds instead of pennies from their customers. The vision that is espoused by vendors goes something like this: Companies are spending time and resources to build servers, script OS and application installations, make storage array and network configuration changes, deliver firewall rules etc., etc. If only we had some clever software that could help to perform these repetitive and expensive tasks.
What is the vision of an orchestration platform? In previous years, a server was bought as a single item. It consisted of CPU, RAM, disk drives and networking, and the server was purchased, racked and provisioned in a linear step-by-step process. Today, the use of hypervisors, storage arrays, server blade chassis, network services and distributed software means that the provisioning of services requires hundreds of actions across different specializations, often occurring in parallel, to deploy a new server.
Application deployments require fully coherent planning and project management to ensure that the resources from server, virtualization, storage, networking, security and application teams work to deliver a single deployment. Regardless of the project, application deployments are made up of baseline tasks requiring each team to provide someone to perform a sequence of steps to achieve simple outcomes. Where work is repetitive and repeatable, it forms a process that could be automated. Many of these tasks are fairly automated already, or could be.
Automation is not the same as orchestration. The difference is profound. Orchestration combines automated tasks into a workflow. An automated network configuration program can check VLAN numbers, select one, analyze which switches need that VLAN, and then deliver the configuration changes to the target devices. Orchestration refers to combining multiple automation tasks to provision the network, storage array, SAN, firewalls, hypervisor, operating system and even the application.
Cloud computing requires focus on operations and process automation. A company that plans on managing thousands of physical computers and tens of thousands of virtual servers isn't going to be profitable if services are delivered and managed manually. The repeatability and speed of automated processes allow for faster business growth while keeping the human costs at lower than linear growth, which ultimately delivers profit at scale. Also important, the reliability and predictability of automation improves customer service, further lowering scale out cost.