96
© 2009 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Deployment and Implementation CMS Best Practices Library Federation How-To Guide

CMS Best Practices Library Federation How-To Guide.… · representation of all facets/capabilities of the listed ... Information Model Data Integration Schema Mapping Meta Data

  • Upload
    vannga

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

© 2009 Hewlett-Packard Development Company, L.P.The information contained herein is subject to change without notice

Deployment and Implementation

CMS Best Practices Library

Federation How-To Guide

Agenda

Federation and CMS overview

Federation Adapter architecture overview

Federation Adapter configuration overview

Understanding attribute-level Federation

Using the Federation Adapter UI

Summary

Q&A

Evolution path from discovery to CMS

Mapping

• Add non-discoverable CIs to service models

• Manage CI lifecycle

• Reconcile multiple data sources

• Track discovered changes

• Integrate discovered CI data with change, incident, asset mgmt, other processes

CMDB

•Asset discovery

•Inventory tracking

Discovery

CMS

See

Understand

Share

Enrich

HP Universal CMDB

HP Discovery and Dependency Mapping

• Map apps to business services

• Dynamically maintain dependency maps with rules

• Map critical apps, then broaden to more apps

• Impact analysis

• Broaden/deepen to IT management and configuration data

• Determine authoritative data sources for federation, replication

• Map external data sources to service data metamodel in Integrated CMDB

• Integrate client (consumer) tools

• Automate consumption of federated data

Template for illustration purposes, not a comprehensive

representation of all facets/capabilities of the listed

products.

This is a high level template, not a detailed

representation of all facets of the evolution path

Why is a federated CMS system so criticalto IT today?

IT Strategy

Identify and prioritize opportunities for better business outcomes by understanding service performance and availability, known errors, consumption and cost

Applications

• Raise application quality by using production visibility for optimizing, testing and handoff

• Improve application valuewith visibility into current and historical operational issues

Operations

•Minimize change impact and accelerate problem isolation with detailed configuration info

•Improve change agility and success rate with deeper visibility into release pipeline

•Better align SLAs and OLAs with services’ desired business outcomes

• Incidents• Problems• Known Errors• Changes• Releases• …

• Users • Suppliers• Locations• Business Units• Customers• …

• Services• Processes• Applications• Infrastructure• Releases• …

Service view

CMS

Drive continuous service improvement with a shared view of services throughout their lifecycles

Limitations with Traditional Integration Approaches

Data must be discovered from and go to different tools, models and contexts

Too many integrations to hardwire point-to-point

Too dynamic to replicate in single repository

Assetmgmt

Application mgmt

Networkmgmt

Databasemgmt

Storagemgmt

Servicesupport

Securitymgmt

Service level mgmt

Servermgmt

Identitymgmt

ITfinance

Projectmgmt

Users need service data that is current, complete and authoritative

?How?

When?

Who?

Why?

What?

CMDB with federation architecturerequired for CMS system

Flexible

•Modify a single integration point for each new federated data source or client

Rigid

•A new federated data source or client requires modification of multiple integration points

15 point-to-point integrations 6 hub integrations via federation

Stable and Maintainable

•Integration is understood and consistent across Providers and Consumers, critical knowledge not tied to individuals

Stability and Reliability Can’t Scale

•Disparate integrations based on heterogeneous technology, developed by different people at different times

CMS is made up of integrated systems:Providers, Owners, and Consumers

Integrated CMDB

Change & Release

View

Asset Mgmt. View

Config.Lifecycle

View

Technical Config.View

Quality Mgmt.View

Service Desk View

Query & Analysis

ReportingPerformance Management

Modeling Monitoring

StructuredDefinitive

Media Library

CMDBsPlatform

Configuration Tools

Software Configuration Management

Discovery, Asset

Management and audit tools

Enterprise Applications

Project Documentation

Project Software

Common Process Data & Information Model

Data Integration

Schema Mapping

Meta DataManagement

Data Reconciliation

Data Synchronization

Extract, Transform, Load

Mining

Data &InformationSourcesand Tools

InformationIntegrationLayer

KnowledgeProcessingLayer

PresentationLayer

Based on an example of CMS, ITIL v3 Service Transition 4.3.4.2, Figure 4.8

Consumer/Owner/Provider Model Tenets

•Consumers drive Providers: Every CI and attribute in the CMS has foremostly a consumer. An initiative and a use case drive requirements for consumption of all configuration data.•All CIs Must Be Owned: Every CI and attribute that exists in the CMS has an owner. An ownerless attribute is an un-authoritative attribute. Ownership is specifically established at the attribute, not the CI type level.•Avoid Provider Conflict: Every attribute required by a Consumer and having an Owner will be provided by preferably one provider. Apparent conflicts are almost never actual conflicts if the provider is properly rationalized.•Rationalize all Providers: Providers are transformed into Authoritative Sources of Record (ASORs) by a strictly controlled rationalization process. Only providers who are responsible to the business for maintaining the data should be considered authoritative.•Providers are Transparent to Consumers: Consumers are insulated from providers in terms of location, platform, or type of integration.•Pervasive Data Integrity: Both consumers and Providers must be onboarded with a CAB-approved process to ensure non-authoritative providers cannot degrade the confidence of the data in the system, also to ensure consumers are entitled to consume specific configuration data. A high standard of entry into the CMS will help increase the quality of decisions made using that data.For more details and answers, see the Consumer/Owner/Provider Model document.

Federation Architecture Overview

uCMDB SERVER

External Data Store

External Data

Store

ADAPTER

CLIENT

External Data

Store

ADAPTER

External Data

Store

ADAPTER

CLASS

MODELMODEL

TQL

CALCULATION

ENRICHMENTVIEWING

SYSTEMCORRELATION

External Data StoreExternal Data Store

TQL result including

external CIsTQL

Data Provider Interface

External CIs External CIs External CIs

adapters are created and

customized using a UI and XML

Federation Adapter OVERVIEW

Providers

Federation Adapters

UCMDB

Consumers

Build a Federation Adapter

1. Create and Deploy the Federation Adapter Package

2. Extend the UCMDB Class Model

3. Deploy the Federation Adapter (configure the xml file)

4. Load the Federation Adapter

5. Create the Data Store

6. Create the federated View

Create the Federation Adapter Package

1. Copy the dbAdapter package from: UCMDBServer\root\lib\factory_packages

Federation Adapter EXAMPLE

Create the Federation Adapter Package

3. Edit the “adapter-id” attribute (in the adapter folder)

Federation Adapter EXAMPLE

This is the name of the adapter in the UCMDB “combo box”

Deploy the Federation Adapter PackageFederation Adapter EXAMPLE

3. Click on the “Deploy” icon

4. Browse and select the MyAdapter.zip

Build a Federation Adapter

1. Create and Deploy the Federation Adapter Package

2. Extend the UCMDB Class Model

3. Deploy the Federation Adapter (configure the xml file)

4. Load the Federation Adapter

5. Create the Data Store

6. Create the federated View

Extend the UCMDB Class Model – Add sw_sub_component

1. Go to CI Type Manager and create a new CI Type (the federated CI).

Federation Adapter EXAMPLE

Extend the UCMDB Class Model – Add sw_sub_component

2. Add attributes (the federated attributes)

Federation Adapter EXAMPLE

Build a Federation Adapter

1. Create and Deploy the Federation Adapter Package

2. Extend the UCMDB Class Model

3. Deploy the Federation Adapter (configure the xml file)

4. Load the Federation Adapter

5. Create the Data Store

6. Create the federated View

Deploy the Federation Adapter1. Navigate to ../J2F/Fcmdb/CodeBase

2. Copy the “GenericDBAdapter” directory and rename it “MyAdapter” (the same as the adapter-id in the xml)

Federation Adapter EXAMPLE

Deploy the Federation Adapter

5. Configure the orm.xml - Reconciliation Class

Federation Adapter EXAMPLE

The UCMDB Class for reconciliation

Deploy the Federation Adapter

5. Configure the orm.xml - Reconciliation Class

Federation Adapter EXAMPLE

The name of the DB table in the external data source

Deploy the Federation Adapter

5. Configure the orm.xml - Reconciliation Class

Federation Adapter EXAMPLE

The unique identifier (PK) in the DB table

Deploy the Federation Adapter

5. Configure the orm.xml - Reconciliation Class

Federation Adapter EXAMPLE

The UCMDB attribute name in the class model

Deploy the Federation Adapter

5. Configure the orm.xml - Reconciliation Class

Federation Adapter EXAMPLE

The name of the corresponding column name in the DB table

Deploy the Federation Adapter

Understand the XML link:

Federation Adapter EXAMPLE

e1

e2

host

sw_sub_component

Container

How sw_sub_components can be to one host?

How hosts can be to one sw_sub_component?

<one-to-one name="end1" target-entity="host"><join-column name=“ComputerId" />

</one-to-one><one-to-one name="end2" target-entity=“sw_sub_component">

<join-column name=“SoftwareId" /></one-to-one>

Deploy the Federation Adapter

Understand the XML link:

Federation Adapter EXAMPLE

e1

e2

host

Container

e2 e2

sw_sub_componentsw_sub_componentsw_sub_component

How sw_sub_components can be to one host?

How hosts can be to one sw_sub_component?

<many-to-one name="end1" target-entity="host"><join-column name=“ComputerId" />

</many-to-one><one-to-one name="end2" target-entity=“sw_sub_component">

<join-column name=“SoftwareId" /></one-to-one>

Deploy the Federation Adapter

Understand the XML link:

Federation Adapter EXAMPLE

e1

e2

host

Container

e2 e2

sw_sub_componentsw_sub_componentsw_sub_component

How sw_sub_components can be to one host?

How hosts can be to one sw_sub_component?

<many-to-one name="end1" target-entity="host"><join-column name=“ComputerId" />

</many-to-one><many-to-one name="end2" target-entity=“sw_sub_component">

<join-column name=“SoftwareId" /></many-to-one>

host

Deploy the Federation Adapter

6. Configure the reconciliation_rules.txt file (in the META-INF folder)

Federation Adapter EXAMPLE

Build the Generic Adapter Solution

1. Create and Deploy the Federation Adapter Package

2. Extend the UCMDB Class Model

3. Deploy the Federation Adapter (configure the xml file)

4. Load the Federation Adapter

5. Create the Data Store

6. Create the federated View

Federation Adapter EXAMPLE

Load the Adapter 2. Click on “Fcmdb Config Services” (under “Topaz” section)

Federation Adapter EXAMPLE

Load the Adapter 3. Go to loadOrReloadCodeBaseForAdaptorId() and type:

a. customerID – 1

b. adaptorId – MyAdapter

4. Click on “Invoke” button

Build the Generic Adapter Solution

1. Create and Deploy the Federation Adapter Package

2. Extend the UCMDB Class Model

3. Deploy the Federation Adapter (configure the xml file)

4. Load the Federation Adapter

5. Create the Data Store

6. Create the federated View

Create a Data Store

1. Go to Federated CMDB page.

Federation Adapter EXAMPLE

Create a Data StoreFederation Adapter EXAMPLE

2. Add the database credentials in the Data Store dialog

Data Store Dialog:

Adapter – the adapter Type

Name – the name of the Data Store (any name)

Host – the name of the database server

Port – the database port number

User – user name to connect to the database

Password – password to connect to the database

URL – dbtype=[dbtype];dbname=[dbname]

Create a Data StoreFederation Adapter EXAMPLE

3. Select CITs supported for federation

The new CI Type

Create a Data StoreFederation Adapter EXAMPLE

4. Perform basic operations from main page

Reload the Adapter

Test connection to the DB

Build the Generic Adapter Solution

1. Create and Deploy the Federation Adapter Package

2. Extend the UCMDB Class Model

3. Deploy the Federation Adapter (configure the xml file)

4. Load the Federation Adapter

5. Create the Data Store

6. Create the federated View

Calculate the ResultsFederation Adapter EXAMPLE

1. From the View Manager calculate results

2. View results from the “Preview” button

© 2008 Hewlett-Packard Development Company, L.P.The information contained herein is subject to change without notice.

Attribute Federation

40

Customer use case

• A configuration management system uses UCMDB 8.0 with all its infrastructure discovered by DDM

• The Finance Dept. has an MS SQL database with non-discoverable data (e.g. hosts location and price)

• The Asset Management Dept. wants to get a report of all the servers in the organization with their location and their cost.

• An attribute federation needs to be configure to achieve the Asset Manager’s (consumer’s) needs

Attribute Federation

orm.xml - add the federated attribute

Federation Adapter EXAMPLE

The name of the attribute in the class model

Attribute Federation

orm.xml - add the federated attribute

Federation Adapter EXAMPLE

The name of the corresponding column name in the DB table

Attribute Federation

Update the Data Store

Federation Adapter EXAMPLE

Attribute Federation

The attribute added in the

orm.xml

Attribute Federation

View results in the “View Manager”

Federation Adapter EXAMPLE

Attribute Federation

View the federated attribute in “Element Instances”

Federation Adapter EXAMPLE

© 2008 Hewlett-Packard Development Company, L.P.The information contained herein is subject to change without notice.

Federation UI

What is the Federation Adapter UI

An Eclipse plug-in that utilizes the JPA plug-in

Enables graphical mapping between UCMDB class model attributes and external database columns

Enables manual editing of ORM.XML and provide error checking for syntax and mapping to the DB columns

Enables to deploy the adapter directly from Eclipse

Enables to run a TQL (predefined) from Eclipse for quick result testing

Time to Value – Easier, Faster, Simpler

Build the Solution Using Eclipse

1. Create Package, Extend Model, Deploy Adapter (folder, txt)

2. Install Eclipse for java developers and the UCMDB Plug-in

3. Configure the environment (DB credentials, UCMDB settings)

4. Map UCMDB class attributes to external DB columns

5. Deploy and restart the adapter

6. Create a new Data Store and test the adapter

Installation

• Navigate to http://www.eclipse.org/downloads

• Download and extract “Eclipse IDE for Java EE Developers”

• Copy “com.hp.plugin.import_cmdb_model_1.0.jar” to <eclipse>\plugins folder

Build the Solution Using Eclipse

1. Create Package, Extend Model, Deploy Adapter (folder, txt)

2. Install Eclipse for java developers and the UCMDB Plug-in

3. Configure the environment (DB credentials, UCMDB settings)

4. Map UCMDB class attributes to external DB columns

5. Deploy and restart the adapter

6. Create a new Data Store and test the adapter

Configure the Environment

• Extract “workspaces_gdb.rar” into “C:\Documents and Settings\All Users”

• In Eclipse select your Workspace for SQL, MySQL and Oracle

Configure the Environment

• In “Project Explorer” view the orm.xml file

Configure the Environment

• In “Data Source Explorer” configure the DB connection

Configure the Environment

• Enter the database credentials and click “Test Connection”

Configure the Environment

• Click “Connect” to open the connection to the database

Configure the Environment

• Set the DB Schema in “JPA Details” section

Configure the Environment

• Configure the UCMDB Settings – make sure the “hp” folder on the UCMDB Server is shared

Configure the Environment

• Import the UCMDB Class Model

Configure the Environment

• Verify CI Types were imported as Java Classes

Build the Solution Using Eclipse

1. Create Package, Extend Model, Deploy Adapter (folder, txt)

2. Install Eclipse for java developers and the UCMDB Plug-in

3. Configure the environment (DB credentials, UCMDB settings)

4. Map UCMDB class attributes to external DB columns

5. Deploy and restart the adapter

6. Create a new Data Store and test the adapter

Configure the orm.xml file

• Mapping a CI Type – right click “Entity Mapping”

Configure the orm.xml file

• Select the UCMDB class to be mapped and click “OK”

Configure the orm.xml file

• Select the DB table that should be mapped to the UCMDB class

Configure the orm.xml file

• Map UCMDB class ID – expend the class and right click the “id” select “Add attribute to xml” and then select “Map as: Id”

Configure the orm.xml file

• Map UCMDB class ID to the DB table column

Configure the orm.xml file

• Map UCMDB attribute - right click the “host_hostname” (reconciliation attribute) select “Add attribute to xml” and then select “Map as: Basic”

Configure the orm.xml file

• Map UCMDB attribute to the DB table column

© 2008 Hewlett-Packard Development Company, L.P.The information contained herein is subject to change without notice.

Federated Attributes

Configure the orm.xml file

• Map UCMDB attribute - right click the “host_location” select “Add attribute to xml” and then select “Map as: Basic”

Configure the orm.xml file

• Map UCMDB attribute to the DB table column

Federated View

• View attribute federation results

Configure the orm.xml file

• Mapping sw_component – right click “Entity Mapping”

Configure the orm.xml file

• Select the sw_component class to be mapped and click “OK”

Configure the orm.xml file

• Select the DB table that should be mapped to the UCMDB class

Configure the orm.xml file

• Map UCMDB class ID – expend the class and right click the “id” select “Add attribute to xml” and then select “Map as: Id”

Configure the orm.xml file

• Map UCMDB class ID to the DB table column

Configure the orm.xml file

• Map UCMDB attribute - right click the “sw_name” select “Add attribute to xml” and then select “Map as: Basic”

Configure the orm.xml file

• Map UCMDB attribute to the DB table column

Configure the orm.xml file

• Map the link – add a valid link as new entity

Configure the orm.xml file

• Map the link – select a valid link (end1_<link name>_end2)

Configure the orm.xml file

• Map the link – select the DB table that holds the link

Configure the orm.xml file

• Map the class ID to the DB column

Configure the orm.xml file

• Map the class ID to the DB column

Configure the orm.xml file

• Map the “end1” of a valid link a cording to the relationship

Configure the orm.xml file

• Select the UCMDB class that corresponds to “end1”

Configure the orm.xml file

• Select the foreign key of the DB link as the “Name” and the Primary Key as the “Referenced Column”

Configure the orm.xml file

• Map the “end2” of a valid link a cording to the relationship

Configure the orm.xml file

• Select the UCMDB class that corresponds to “end2”

Configure the orm.xml file

• Select the foreign key of the DB link as the “Name” and the Primary Key as the “Referenced Column”

Configure the orm.xml file

• The orm.xml has been written for you

Configure the orm.xml file

• Using Eclipse to edit the orm.xml

Build the Solution Using Eclipse

1. Create Package, Extend Model, Deploy Adapter (folder, txt)

2. Install Eclipse for java developers and the UCMDB Plug-in

3. Configure the environment (DB credentials, UCMDB settings)

4. Map UCMDB class attributes to external DB columns

5. Deploy and restart the adapter

6. Create a new Data Store and test the adapter

Deploying the orm.xml

• Using Eclipse to Deploy the orm.xml and restart the adapter

Build the Solution Using Eclipse

1. Create Package, Extend Model, Deploy Adapter (folder, txt)

2. Install Eclipse for java developers and the UCMDB Plug-in

3. Configure the environment (DB credentials, UCMDB settings)

4. Map UCMDB class attributes to external DB columns

5. Deploy and restart the adapter

6. Create a new Data Store and test the adapter

Creating a new Data Store

• Using Eclipse to create a new data store on the UCMDB Server

Running a sample TQL

• Using Eclipse to validate your orm.xml by running a federated TQL

Summary

Federation Architecture Overview

Federation Configuration Overview

Understanding Attribute-Level Federation

Using the Federation Adapter UI