Service centric datacenter functional model
With the increased popularity of SOA, service oriented architecture enterprises are faced with news challenges :
- Applications are de-composed into service units, distributed across multiple architectures, across multiple management domains or even different governance models. Think about the difference in complexity between a single application deployed on a mainframe, versus a composite application with components running on Solaris, windows, one in the finance department, the other in the HR department, and the third one in that newly acquired company. It is clear that new management paradigms or infrastructure models are required to address this new type of applications.
- Applications have dependencies on many parts and components. deploying such an application is more complex than just installing a binary on a single machine. Starting this application is no less challenging. How to ensure that all the required components are up and running ?
- The definition of an application can evolve dynamically. Think about the possibilities that BPEL based orchestration engines bring to the table. New workflow, with new dependencies can be created and deployed dynamically by business analysts, which are maybe not all that plugged in the operations side of the datacenter. How to deal with that dynamic environment ?
The first step was to try to define an operational model that would follow some standards or best practices.
The Telco view.
This problem has been solved by Telcos for decades now. There operations are highly service focused. They even have defined an operation map capturing business processes required to deliver and manage services. The latest version, eTOM, the enhanced Telecom Operation Map become even less Telco specific (e.g. the term network has been replaced by the term resource).
The IT view.In parallel, ITIL, the IT Information Library was developed but took a more inward focused point of view. There is little mention of customers in the ITIL books (ok, except maybe in the servicedesk chapter). Most of the best practices are addressing problems that an IT department would face in their quest to improve its maturity. The two main books in this library are the Service Delivery book, and the Service Support book.
The synthesis.It is obvious that those two points of view had to align and come together in some way, or at least, be able to relate to each other. A document published by the TMF, Telecom Management Forum, GB921V (absorbing the content of GB921L) is helping the practitioners to make sense of those two models. By simplifying a lot, we can say that ITIL processes can be built by using eTOM process elements.
A proposal for service centric functional modelMy primary focus was to define a model which would align nicely with ITIL, either by not forcing an incompatible operational model, or by being able to support and automate the customers' business processes. It's a mix and match, simplified melting pot of ITIL, eTOM and our N1 concepts. The result can be seen in the following picture :

- Resource Provisioning : In the case of compute resources, deployment of OS images on systems and groups of system. Includes set up of images, boot servers, network elements required to support this function (DHCP, DNS/NIS, NFS servers)
- Resource update: In the case of compute resources,Deployment of one or more OS or application patches on systems. Includes the patch analysis, dependency analysis, and compliance analysis to a defined baseline.
- Failover : Reprovisioning of compute elements in the event of an unrecoverable hardware error. All appropriate software elements are deployed on the new compute element, and all storage and network elements are reattached to it.
- Resource Accounting: Recording of all events that can be associated with the usage of a compute resource. It can also include specific metering to provide a finer accounting of resource usage.
- Advanced Monitoring: In-depth monitoring of compute and software elements, including display of specific field replaceable units (FRUs) and isolation of failed FRUs for replacement.
- Discovery : Automated dynamic discovery of compute, storage, network and software elements.
- Firmware update : Firmware upgrade of compute elements. Includes all the operations required to perform the update, like driving the boot sequence, the distribution of the update to the machine, the tracking of firmware levels, the analysis, and comparison with a baseline.
- Hardware Abstraction : Provides a level of management operation abstraction on top of hardware element specific management operations.
- Service Design : Operations required to capture the business service requirements, composition, and specific operational model (how to start/.stop it, deploy or upgrade it, ...). Include the definition, management , or use of patterns, reference models, or templates.
- Service provisioning : Deployment of services on a set of possible resources. Includes the deployment of the required software elements, the configuration of specific software, network, or storage elements. Includes also the capture of existing deployments for duplication and the update of the configuration management database.
- Application Deployment : Deploys software applications and their components and concerns all required application realization conditions and interdependencies. Includes the definition and capture of application models and configuration, as well as the abstraction of applications parameters in order to deploy application across various datacenters of life cycle phases.
- Configuration Management : Maintain the configuration management database. Includes entering new hardware and software elements either manually or through discovery, update the configuration by synchronizing it with the deployed services and elements, as well as auditing the configured services and elements for compliance with their expected state.
- Service Update : Update of complex services through multi steps processes. Includes delivering the updates to the various elements, orchestrating the upgrade by executing the individual upgrade operations while minimizing downtime, updating the configuration management database with up to date information.
- Performance Management : Enforce performance related Service Level Objectives by monitoring the services and their elements for compliance with key performance indicators, report any violation, and initiate remediation operations in order to maintain SLOs.
- Availability Management: Enforce availability related Service Level Objectives by monitoring the services and their elements for availability, report any violation, and initiate remediation operations in order to maintain SLOs. Include multiple strategy for remediation, depending on the capabilities of the infrastructure, and local policies.
- Workload Management: Enforce datacenter wide resource allocation policies, including associating the right resources to services, optimizing the resources across the datacenter in order to achieve specified objectives (lower cost, increased utilization, increasing throughput, ...). Includes matchmaking of resources with specified service constraints and SLOs, maintaining the current resource allocation in the CMDB, optimizing the allocation, generating accounting information.
- Service Accounting : Provide a service level accounting by aggregating the resource usage of all the service elements. Includes the collection of usage events, the normalization to take into accounting the dynamic in the resource allocation, the composition and aggregation into resource per service usage records and the reporting to relevant billing entity.
- Orchestration : Orchestrate, and automate the various operations required across the life cycle of a service. Includes the design of service specific workflows, the execution of these workflows at pre-defined life cycle events, the monitoring of the execution, and the remediation in case of failure of the worflows. The orchestration implements the specific operational models for the services.
