Private cloud foundations: Service Catalog management

Introduction to Service Catalog

These days we’re hearing so much about Cloud and (while there’s plenty of noise going on ) a lot of the discussion is about a very significant shift in how IT services are delivered.  So I’d like to start a series of posts I’ll call “Private Cloud Foundations” to talk about the architectural underpinnings of a private cloud.

Service Catalog management has been a well recognized topic in IT operations circles, and in some form or other a Service Catalog has been part of the ITIL best practices material since V1.  ITIL defines Service Catalog as “ [Service Catalogue ]  provides a central source of information on the IT
services delivered to the business by the service provider organization, ensuring that business areas can view an accurate, consistent picture of the IT services available, their details and status.

Catalog Relationship to Private Cloud

In a private cloud we have a goal of lowering costs and increasing agility, with the ability to create new Services and deploy existing Services quickly and easily. We do these things by enabling many of the NIST cloud attributes, things like Automation and Elasticity. So it would seem obvious we need a standardized way of describing our services and interacting with them for improved service management.  The interesting thing though is that while a service catalog makes great sense and we can understand what it means, a lot of organizations still lack a well defined approach to building that Catalog and making it intelligent enough.  To build an intelligent service catalog will require several things. It should be:

  • well organized and map to business scenarios
  • based on a  reference model
  • allow IT services to plug in at multiple levels. see the Taxonomy discussion below.
  • easily query-able and self-describing
  • version controlled and able to evolve over time
  • provide a highly available service to support automation interfaces 
  • etc….

 

Taxonomy and Reference Model

When I think of Taxonomy I usually think of how the plant and animal kingdom has been classified on an 8-tier level, everything from Life to Species is represented. In the IT world we need to start by creating a similar taxonomy for IT services.  This would form a reference model for our ideal Service Catalog, and from that model we can create a reference architecture and one or more implementations.

The SOA reference model provides some guidance here:

image

We can see from the diagram above that while we have an agreed upon ITIL definition of what a service catalog is, we have little or no standards, specification, profiles, or protocols that guide in how to build such a catalog. But many vendors have done this work to varying degrees, which I’ll explore in the next posting of this series.

Lets start by talking about a simplistic data model for a service catalog.  In the world of IT we would propose a six layer data representation of IT services:

  • Component – a reuseable unit of work and functionality (Input – Process – Output)
  • Feature – a product building block which delivers a known set of functionality, perhaps by combining several components and knitting them together
  • Role – a composition of features. In Windows Server 2008 we have many well defined server roles such as Domain Controller. 
  • Workload – a composing of related roles which run together
  • Solution – a set of integrated workloads that address a specific problem
  • Product – a solution packaged as a product

(For the above breakdown, please see Application Patterns for Green IT by Dan Rogers and Ulrich Homann.)

Our challenge in designing private cloud is to design and create the service catalog with the right level of detail  so it can be useful but not overwhelmingly complicated.  In today’s private cloud approach we have something in between a Feature and a Role, known as an OS Image, which is commonly deployed in a somewhat automated fashion. That image then must be further customized to create an actual Virtual Machine or VM. That VM in turn must be combined with many other systems (whether virtual or physical) to form a Workload, and so on.  What is desirable is the ability to design and deploy an entire Workload or Solution into a private cloud environment.

Microsoft is taking a significant step forward in solving this problem with some of the features announced in System Center Virtual Machine Manager 2012.  A key goal of SCVMM 2012 is to allow the unit of deployment in  a private cloud to be the Workload or the Solution, or more commonly something we call an “application”, rather than just a generic set of operating system images. In order to be fully successful with this new approach we will need to consider how we can design, build  and maintain a Service Catalog for the enterprise. 

In an upcoming post I'll briefly review some existing vendor implementations of Service Catalog functionality.