IT as a Service (ITaaS), in which IT focuses on the outcomes the business needs and functions much like a business itself, holds the promise to dramatically change the way customers and users experience and consume IT services. Making extensive yet appropriate use of virtualization and cloud solutions, it will make ordering IT services and consuming services much easier and less painful. What does this paradigm shift mean on the back-end? How does IT need to change its ways to deliver ITaaS? This blog post looks at a couple of aspects related to Configuration Management, i.e. the process of tracking, controlling and managing configuration items used by an IT department to deliver services to the business.
Two things come to mind with regards to Configuration Management in an ITaaS world. First, it will be very common to supply services made up of a mix of in-house and outsourced IT services. Configuration Management policies and processes will have to be re-examined to ensure the right level of control is exercised over both the in-house and the outsourced services to ensure quality services are being delivered. This aspect of how Configuration Management would work in an ITaaS world will have to be the subject of a later blog post, as I would like to focus on the second aspect.
This second aspect to consider is the automating of updates to the Configuration Management System (CMS) as changes in the environment are increasingly automated. The CMS is the collection of tools and databases that an IT organization uses to collect, store, manage, update, analyze and present its configuration information. Most organizations today rely on a form of discovery to detect what the IT environment looks like. Some organizations allow discovery to update the CMS when discrepancies are found, and report what was updated to the responsible roles within the organization. However, this form of automated updates is still an after-the-fact update, resulting in a CMS that does not reflect the actual IT environment for some period of time, depending on how often discovery is run.
Instead, the CMS should be updated as part of the automated workflows that are being implemented to perform the changes themselves. For instance, if an automation engine automatically provisions a new virtual machine, or changes the layout of the software-defined network, the same automation engine should also update the CMS records at the same time. This way, the CMS remains an accurate reflection of the IT environment, even as the rate of change increases. Note that it would be important to maintain a history of these changes – just as with ‘manual’ updates of the CMS, the tool must also keep track of historical records and versioning information for snapshot baseline and audit purposes.
As an example, let us consider an application that is being delivered over the web. In a “traditional” environment, this application would utilize multiple web servers, typically behind a load balancer, to deliver the user interface to the users. The capacity for these web servers would have to be sized to meet even spikes in utilization. In contrast, in a virtualized environment, the environment could be configured to monitor usage levels continuously. Once the usage levels exceed a pre-defined threshold, additional web servers could be provisioned in the public cloud and be made available to serve the additional needs. Once usage levels drop below a defined threshold, the additional servers in the public cloud could be decommissioned automatically.
In an ITaaS world, this process of automatically provisioning and de-provisioning resources to serve additional demand would also automatically enter the new servers as new CIs into a CMS (and change their status following decommissioning), ensuring that at any time the CMS would provide an accurate view into the environment. Should incidents occur in this environment of in-house servers and servers hosted in the public cloud, support personnel are equipped to make the right decisions based on the current and dynamically changing situation.
In summary, the process of Configuration Management will have to adapt to a new way of doing things in an ITaaS world. Automation of operational tasks should include updating the CMS in this world to ensure the CMS remains an accurate reflection of the live environment, therefore providing valuable information to IT support personnel when making decisions.
Kai Holthaus is a Transformation Consultant with the Accelerate Advisory Services team and is based in Portland, Oregon.