Evolution path from discovery to CMS Enrich Share CMDB
Understand Mapping
• Add non-discoverable CIs to service models • Manage CI lifecycle
See
• Map apps to business services
• Reconcile multiple data sources
Discovery
• Dynamically maintain dependency maps with rules
• Track discovered changes
•Asset discovery •Inventory tracking
• Map critical apps, then broaden to more apps • Impact analysis
• Integrate discovered CI data with change, incident, asset mgmt, other processes
HP Discovery and Dependency Mapping Template for This illustration is a high purposes, level template, not anot comprehensive a detailed representation representation of all facets/capabilities of all facets of the of evolution the listed path products.
HP Universal CMDB
CMS • 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
Why is a federated CMS system so critical to IT today? Drive continuous service improvement with a shared view of services throughout their lifecycles IT Strategy Identify and prioritize opportunities for better business outcomes by understanding service performance and availability, known errors, consumption and cost
Applications
Operations
• Raise application quality by using production visibility for optimizing, testing and handoff
•Minimize change impact and accelerate problem isolation with detailed configuration info CMS
• Improve application value with visibility into current and historical operational issues Service view • Services • Processes • Applications • Infrastructure • Releases •…
•Improve change agility and success rate with deeper visibility into release pipeline •Better align SLAs and OLAs with services’ desired business outcomes • Users • Suppliers • Locations • Business Units • Customers •…
Limitations with Traditional Integration Approaches Service level mgmt
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
Application mgmt
Service support
Who?
Project mgmt
When?
Why? Storage mgmt
Security mgmt Asset mgmt
Users need service data that is current, complete and authoritative
Server mgmt Network mgmt
How?
IT finance
Identity mgmt
?
What?
Database mgmt
CMDB with federation architecture required for CMS system
15 point-to-point integrations
6 hub integrations via federation
Rigid
Flexible
•A new federated data source or client
•Modify a single integration point for
Stability and Reliability Can’t Scale
Stable and Maintainable
•Disparate integrations based on
•Integration is understood and consistent
requires modification of multiple integration points
heterogeneous technology, developed by different people at different times
each new federated data source or client
across Providers and Consumers, critical knowledge not tied to individuals
CMS is made up of integrated systems: Providers, Owners, and Consumers Presentation Layer Knowledge Processing Layer Information Integration Layer
Change & Release View
Query & Analysis
Asset Mgmt. View
Config. Lifecycle View
Reporting
Technical Config. View
Performance Management
Quality Mgmt. View
Modeling
Service Desk View
Monitoring
Integrated CMDB Common Process Data & Information Model
Schema Mapping
Meta Data Management
Data Reconciliation
Data Synchronization
Extract, Transform, Load
Mining
Data Integration
Data & Information Sources and Tools
Project Documentation
Structured
Definitive Media Library
CMDBs
Platform Configuration Tools
Software Configuration Management
Project Software
Based on an example of CMS, ITIL v3 Service Transition 4.3.4.2, Figure 4.8
Discovery, Asset Management and audit tools
Enterprise Applications
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 CABapproved 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 Adapter OVERVIEW
Federation Architecture Overview Consumers
CLIENT
TQL result including external CIs
TQL
uCMDB SERVER MODEL
VIEWING SYSTEM
CLASS MODEL
CORRELATION
TQL CALCULATION
ENRICHMENT
UCMDB Data Provider Interface External CIs
Federation Adapters
External Data Store ADAPTER
External CIs
External Data Store ADAPTER
External CIs
External Data Store ADAPTER
Providers External Data Store
External Data Store
External Data Store
adapters are created and customized using a UI and XML
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
Federation Adapter EXAMPLE
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)
This is the name of the adapter in the UCMDB “combo box”
Federation Adapter EXAMPLE
Deploy the Federation Adapter Package 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
Federation Adapter EXAMPLE
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)
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
Federation Adapter EXAMPLE
Deploy the Federation Adapter 1. 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
The UCMDB Class for reconciliation
Federation Adapter EXAMPLE
Deploy the Federation Adapter 5. Configure the orm.xml - Reconciliation Class
The name of the DB table in the external data source
Federation Adapter EXAMPLE
Deploy the Federation Adapter 5. Configure the orm.xml - Reconciliation Class
The unique identifier (PK) in the DB table
Federation Adapter EXAMPLE
Deploy the Federation Adapter 5. Configure the orm.xml - Reconciliation Class
The UCMDB attribute name in the class model
Federation Adapter EXAMPLE
Deploy the Federation Adapter 5. Configure the orm.xml - Reconciliation Class
The name of the corresponding column name in the DB table
Federation Adapter EXAMPLE
Deploy the Federation Adapter Understand the XML link:
host
e1 Container e2 sw_sub_component
How sw_sub_components can be to one host? How hosts can be toname=“SoftwareId" one sw_sub_component? />
Federation Adapter EXAMPLE
Deploy the Federation Adapter Understand the XML link:
e1
host
How sw_sub_components can be to one host? How hosts can be toname=“SoftwareId" one sw_sub_component? />
Container e2 sw_sub_component
e2 sw_sub_component
e2 sw_sub_component
Federation Adapter EXAMPLE
Deploy the Federation Adapter Understand the XML link:
host
e1
host
How sw_sub_components cantarget-entity=“sw_sub_component"> be to one host? name=“SoftwareId"
Container e2 sw_sub_component
e2 sw_sub_component
e2 sw_sub_component
Federation Adapter EXAMPLE
Deploy the Federation Adapter 6. Configure the reconciliation_rules.txt file (in the META-INF folder)
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
Federation Adapter EXAMPLE
Create a Data Store 1. Go to Federated CMDB page.
Federation Adapter EXAMPLE
Create a Data Store 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]
Federation Adapter EXAMPLE
Create a Data Store 3. Select CITs supported for federation
The new CI Type
Federation Adapter EXAMPLE
Create a Data Store 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
Federation Adapter EXAMPLE
Calculate the Results 1. From the View Manager calculate results 2. View results from the “Preview” button
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 nondiscoverable 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 •
40
Federation Adapter EXAMPLE
Attribute Federation orm.xml - add the federated attribute
The name of the attribute in the class model
Federation Adapter EXAMPLE
Attribute Federation orm.xml - add the federated attribute
The name of the corresponding column name in the DB table
Federation Adapter EXAMPLE
Attribute Federation Update the Data Store
Attribute Federation
The attribute added in the orm.xml
Federation Adapter EXAMPLE
Attribute Federation View results in the “View Manager”
Federation Adapter EXAMPLE
Attribute Federation View the federated attribute in “Element Instances”
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
\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”
Settings\All Users”
into “C:\Documents and
• 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
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__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