EMC ITO Adapter Ionix IT Operations Intelligence (ITOI) · EMC Corporation Corporate Headquarters:...
Transcript of EMC ITO Adapter Ionix IT Operations Intelligence (ITOI) · EMC Corporation Corporate Headquarters:...
EMC CorporationCorporate Headquarters:
Hopkinton, MA 01748-9103
1-508-435-1000www.EMC.com
EMC® Ionix™ ITO AdapterIonix IT Operations Intelligence (ITOI)
Version 2.4
Installation and Configuration GuideP/N 300-011-526
REV A01
ii VERIONS 2.4 REV A01 300-011-526
Copyright © 2010 EMC Corporation. All rights reserved.Published September, 2010
EMC believes the information in this publication is accurate as of its publication date. The information issubject to change without notice.
THE INFORMATION IN THIS PUBLICATION IS PROVIDED “AS IS.” EMC CORPORATION MAKES NOREPRESENTATIONS OR WARRANTIES OF ANY KIND WITH RESPECT TO THE INFORMATION INTHIS PUBLICATION, AND SPECIFICALLY DISCLAIMS IMPLIED WARRANTIES OF MERCHANTABIL-ITY OR FITNESS FOR A PARTICULAR PURPOSE.
Use, copying, and distribution of any EMC software described in this publication requires an applicablesoftware license.
For the most up-to-date regulatory document for your product line, go to the Technical Documentationand Advisories section on EMC Powerlink.
For the most up-to-date listing of EMC product names, see EMC Corporation Trademarks on EMC.com.All other trademarks used herein are the property of their respective owners.
Table of Contents 1Preface vii
Introduction 13Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Integration Adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Action Adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Adapter Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15ITIL Services Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Supported ITIL Object Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Persistence Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Database Acquisition Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19Buffer Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Web Service Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Notification Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Acquisition Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21Acquisition Push . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23Acquisition–Event Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23Notification Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Custom Parameters for Notification or Acquisition-Event Services . . . . 26
Operations Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Process Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
About the EMC Ionix ITOI Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Supported Services 31Acquisition Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
WSDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Polling Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Blocking Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Terminal Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32General Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Discovery Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34WSDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Operations Web Service Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Event Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE iii
Device Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Domain Device Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
System Configuration 41Supported Operating Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41System Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Recommended . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Supported Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Software Installation 43Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Configuring SSL Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Installing a License File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Installing the Adapter Software - Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47Start the Installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47Installing the URL Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Installing the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Running the Adapter Windows Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79Executable Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79Service Manager Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Installing Adapter Software - UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Installing the Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Running the Adapter UNIX Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Manual Installation Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82Install the Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Framework Properties 84Properties Editor Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Starting the Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84Using the Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Global Framework Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Acquisition monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87Automated Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87Framework Properties for EMC ITOI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Custom Configuration 91Client Acquisition Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Data Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91Object Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91RESTful Client Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92Calling the RESTful Client Acquisition from curl . . . . . . . . . . . . . . . . . . . . . . 92
iv VERSION 2.4 REV A01 300-011-526
SOAP Client Acquisition Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93Running on another port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Adapter High Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95Operations Services Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95Acquisition Services Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95Use the External Database for Multiple Adapters . . . . . . . . . . . . . . . . . . . . 96Adapter Failover Infrastructure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Agent Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Java to Adapter Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Persistence Database Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Removing Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Reclaiming Unused Disk Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Connecting to the Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100Changing the Database Port Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100Offloading the Acquisition Queue to an External Database . . . . . . . . . 100
Using the URL Agent 101About the Adapter URL Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101Python Requirement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101URL Agent Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Shutting Down and Starting the Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . 102Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102Running the URL Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Example Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103URL Agent Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Running the Filter Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105Filter Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105Example Filter Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
EMC Ionix ITOI Adapter Configuration 109Creating Additional Domain Credentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109Enable SAM Device Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110Server Tool Notification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111Configuring SAM to call the URL Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Ionix IT Orchestrator Configuration 113Using the ITIL Adapter Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Associated Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113Installation and Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113Using the Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Adapter API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119Software Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119API Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119Package Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119Key Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE v
Service Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120SSL Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121Java Code Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Managing the Adapter 125Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Connecting to the Adapter Java Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Starting the Java Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127Management Beans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
com.iwave:name=Adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127com.iwave:name=AcquisitionQueue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128com.iwave:name=FrameworkAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Maintenance and Troubleshooting 131Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Log Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131Turning on Adapter Logging (Windows) . . . . . . . . . . . . . . . . . . . . . . . . . . . 131URL Agent Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Error Types and Meanings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134Recoverable Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134Permanent Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134Global Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Re-Installing or Uninstalling the Windows Service . . . . . . . . . . . . . . . . . . . . . . 136Re-installing the Windows Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136Uninstalling the Windows Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Starting and Stopping the Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136Uninstalling the Adapter Software - Windows . . . . . . . . . . . . . . . . . . . . . . . . . . 137
IT Object Model (ITOM) 141Event Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
ITOM Event Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143Device Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
ITOM Device Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Index 159
vi VERSION 2.4 REV A01 300-011-526
Preface 2This manual includes instructions on installing, configuring, and troubleshooting the EMC Ionix IT Operations Intelligence (ITOI) Adapter software.
Audience 2
This publication is written for the System Administrator or Engineer responsible for installing and configuring the EMC Ionix IT Operations Intelligence (ITOI) Adapter software.
Organization 2
This publication consists of the following chapters:• Introduction• System Configuration• Software Installation• Framework Properties• Using the URL Agent• Custom Configuration• Orchestrator Configuration• Managing the Adapter• Maintenance and Troubleshooting• IT Object Model List (ITOM)• Index
Font conventions 2
• Bold format is used to identify dialog boxes and menu choices. For example: Start > Programs > IonixITO> adapters-2.4
• Courier fixed-width font is used for code elements (Java, HTML) as well as filenames and directories. For example:
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE vii
install_root refers to the directory where the Adapter software is installed, for example
c:/Program files/install_root/Adapters
• Web addresses are displayed as hyperlinks. For example: http://www.EMC.com
Related documents 2
For more information on EMC software products, refer to the following manuals:• EMC Ionix IT Orchestrator Introduction and Planning Guide - This manual
provides an overview of the Orchestrator architecture and associated applications. It introduces the main components of the IT Orchestrator, Design Studio, Platform and applications.
• EMC Ionix IT Orchestrator Installation and Configuration Guide - This manual provides information on installing the EMC Ionix IT Orchestrator, Design Studio, Platform and associated plugins. Provides an overview on how to install the Orchestrator Studio on Windows and Linux platforms and describes the mechanism for installing the Orchestrator Platform in your managed environment.
• EMC Ionix IT Orchestrator Administration and Operations Guide - This manual identifies the administration tasks required to configure the Ionix IT Orchestrator Platform and describes the log files available for detailed analysis of running solutions.
• EMC Ionix IT Orchestrator Developer Guide -This manual provides an introduction to the Designer Studio and Lifecycle tools that enable you to design Services and Tasks in Orchestrator Studio. The manual identifies the procedures for building Services and Tasks and describes the configuration of the associated properties.
viii VERSION 2.4 REV A01 300-011-526
1Chapter
Introduction 1Topics covered in this chapter:• Introduction• Adapter Framework• ITIL Services Support• Supported ITIL Object Types• System Architecture• Persistence Database• Web Service Methods
Introduction 1
EMC provides two different types of ITIL Adapters:• Integration Adapters• Action Adapters
Integration Adapters
EMC provides a comprehensive library of IT Service Management (ITSM) integration Adapters. Integration Adapters enable the bi-directional exchange of Incident, Problem, Configuration, Change and Asset information between ITSM applications.
The ITSM applications include:• Service Desk Applications• Enterprise Management Systems• CMDB and Asset Management Systems• Database Management Systems
Figure 1-1 illustrates a high-level view of the end-to-end, bi-directional process. In this process, the new/modified Incident Record goes from the endpoint application to the remote vendor application.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 13
INTRODUCTION
EMC provides for two-way integrations allowing this process flow to move in either direction. An Adapter is required on each endpoint as each application has a customized API. Integrations can be performed for multiple applications; integrations are not limited to two.
Figure 1-1 High-Level Integration Overview
Action Adapters
Action Adapters allow you to quickly create integration Adapters for ITSM applications without resorting to programming. EMC provides the following Action Adapters, which can be installed with other Integration Adapters:• Command Line Adapter• Reverse Proxy Adapter• SQL Proxy Adapter
Command Line Adapter
The Command Line Adapter allows remote execution of command line processes on the machine where the Adapter is installed. Commands can be executed using the Command Line Web Service.
Reverse Proxy Adapter
The Reverse Proxy Adapter can be used by customers who may need to put their service desk application on the public internet. The Reverse Proxy Adapter can be used to provide a layer of indirection between the Ionix IT Orchestrator and the service desk. The proxy can provide security (HTTPS) and authentication (HTTP Basic Authentication) without needing to set up these configurations on the service desk.
SQL Proxy Adapter
The SQL Adapter allows remote execution of SQL queries on the Adapter system. This allows the Ionix IT Orchestrator to effectively query a database that is only accessible through the public internet. The Adapter can secure the
14 VERSION 2.4 REV A01 300-011-526
ADAPTER FRAMEWORK
communication and provide the actual access to the database. To utilize the SQL Proxy Adapter, you must configure the Adapter to point to the database you wish to use.
Adapter Framework 1
The EMC Adapter Framework is a Java 6 application. The Adapter Framework manages communication between the EMC Adapter and consumers (including EMC Ionix IT Orchestrator). The EMC Adapter interfaces with the ITSM application’s API and is therefore restricted by the limitations of that API. • For some ITSM applications, the EMC Adapter must run on the same machine
as the ITSM application itself. • For other ITSM applications that support remote APIs, the Adapter may run on
a separate machine.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 15
ITIL SERVICES SUPPORT
ITIL Services Support 1
EMC Adapters support the Information Technology Infrastructure Library (ITIL) service silos as illustrated in Figure 1-2. The ITIL is a set of best practice standards for Information Technology Service Management (ITSM) and has become the worldwide standard in service management.• Incident Management - needs configuration (CI) dependency information
and determines a correlation of incidents and creates a problem report.• Problem Management - needs all Incident reports related to a problem.
Determines the root cause and determines if an RFC needs to be created from specific CIs.
• Asset Management (Financial) - determines the following:— If a new CI needs to be added to the Configuration Management
system.— If an RFC is needed for the Change Management system.— If a Service Desk task needs to be created to provision and model the
new asset in the Configuration Management system.• Event Management - generates events and alerts.
Figure 1-2 EMC ITIL Service Silos and Objects
16 VERSION 2.4 REV A01 300-011-526
SUPPORTED ITIL OBJECT TYPES
Supported ITIL Object Types 1
Each transaction record has an associated object type. This may either be a built in object type (i.e., Incident) or it may be a custom type. When an item is added into the Acquisition Queue, a specified object type or an object class is used:• If the object type is specified, then that type is used. • If no object type is specified, the type of the object class is used.
Note: Not all Adapters support all objects.
The EMC Adapter may include the following built in object types:• Incident Object - includes the Incident object in the Incident Management
Service silo. The primary difference between an Incident object and an ITObject object lies in the schema. The Incident has a predetermined schema allowing all adapters to map information into common predetermined data elements, whereas the ‘ITObject’ is completely generic and all data is stored as native data.
• Problem Object - includes the Problem object type for Problem Management.
• Change Object - includes the Change object type for Change Management. This object is also known as a Request for Change (RFC).
• CI Object - includes the CI (Configuration Item) object type for Configuration Management. This provides configuration information from a CMDB.
• Event Object – includes the Event object type for Event Management.• IT Object – includes the generic objects correlating back to the endpoint
application forms that may not have any relationship to the ITIL processes. ITObject Services are used in cases where customers have created their own representation of the Incident via custom forms or have developed custom forms representing data needed to integrate between applications.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 17
SYSTEM ARCHITECTURE
System Architecture 1
The EMC Adapter translates information from an Endpoint Application for input into a remote vendor application (and vice versa). The translation process includes the following Adapter software components identified in Figure 1-3: • Persistence Database• Web Service Methods:
— Operations Service— Acquisition Service
– Acquisition-Event Service— Notification Service
Figure 1-3 EMC Adapter System Architecture
EMC Ionix ITO
EMC Ionix ITOAdapter
18 VERSION 2.4 REV A01 300-011-526
PERSISTENCE DATABASE
Persistence Database 1
The Persistence Database is an open source, relational Apache Derby database that holds transactions in the order that they are received. Once data is received, it is assigned a transaction number and stored in the Acquisition Queue. This is necessary to ensure that each application in the integration has proper data synchronization.
The Acquisition Queue consists of two areas: • Database Acquisition Queue• Buffer Queue
Database Acquisition Queue
Each time an incident is created, modified, or closed in the Endpoint Application, the change is captured as a transaction. This transaction data is stored in the Database Acquisition Queue, which is periodically polled by the EMC Ionix IT Orchestrator. When polled, the transaction data is packaged into an XML document and sent to the Ionix IT Orchestrator via HTTP/HTTPS. The Ionix IT Orchestrator processes the transaction via its workflows and provides the data to the Operations Service of one or more remote Adapters to facilitate platform integration.
After the transaction is successfully processed, the Ionix IT Orchestrator acknowledges the transaction in the queue, so it can be removed. The Ionix IT Orchestrator can optionally acknowledge the transaction as errors based on workflow thresholds. Transactions acknowledged as “complete” or “errors” are no longer available when polled.
Buffer Queue
The Buffer Queue stores records on disk until there is room in the database for them. This allows the Adapter to perform more effectively with larger loads. Instead of records going into the database directly, they are stored to the file system when the number of database records exceeds the configuration option acquisition.bufferqueue.limit (default 200).
The Buffer Queue stores records waiting to be put in the database in the data/queue/buffer directory. When the buffer is active, it starts a background thread to push data into the database. Order of the records is maintained. The files in the directory should not be modified while the adapter is running.
This also provides a store-forward like capability for the Adapters similar to the agents. If the database is down, the Buffer Queue is also engaged
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 19
WEB SERVICE METHODS
Web Service Methods 1
EMC Adapters handle communication with the actual ITSM Endpoint Application. EMC Adapters provide a common set of Web Services methods:• Acquisition Service - acquire transaction information from the ITSM
applications.• Operational Service - create, update, or search and retrieve information
within the ITSM applications.
EMC Adapter Acquisition and Operational Services are consumed by processes running in the EMC Ionix IT Orchestrator.
Notification Agent
The majority of the EMC Ionix IT Orchestrator Adapters require an Agent to send notifications to the Adapter from the Endpoint Application.
The Ionix ITOI adapter uses the URL Agent to send notifications. For more information on the URL Agent, refer to “Using the URL Agent” on page 7-101.
Figure 1-4 Adapter Web Service Methods
EMCIonix ITO
20 VERSION 2.4 REV A01 300-011-526
ACQUISITION SERVICE
Acquisition Service 1
The Acquisition Service provides access to objects that have changed in endpoint applications. All of the data is stored in a Persistence Queue. Acquisition is the process that allows the Adapter to react to the creation, modification, or closure of an incident and place that information into the Persistence Database queue. The EMC Ionix IT Orchestrator polls the transactions from the Persistence Database queue. Then the Ionix IT Orchestrator processes and sends the transactions to the target application(s).
The same Acquisition Service is used for all object types and polling can be restricted to certain object types.
Process Flow
Figure 1-5 displays a detailed architectural view and Acquisition process flow for the EMC Adapter. This process allows the EMC Ionix IT Orchestrator to receive and manage transaction data stored in the Persistence Database queue.
The process consists of the following steps:1. The Ionix IT Orchestrator sends a Transaction Management request to the
Acquisition Service.2. The Acquisition Service queries the Persistence Database queue for
transaction data.3. The Persistence Database sends the transaction back upstream to the Ionix IT
Orchestrator.Figure 1-5 Acquisitions Process Flow
EMC Ionix ITO
EMC Ionix ITOAdapter
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 21
ACQUISITION SERVICE
Acquisition Push
The Acquisition Push mechanism provides lifecycle management of adapter queue transactions. It allows the workflow developer to write workflows to handle transactions only. The Acquisition Push mechanism handles the following functions: • Performs the polling operations. It polls in groups of 50 at a time, which it can
execute in parallel. Only one thread performs polling. • Allows a configurable number of threads to be used to process transactions. • Performs a complete operation when a workflow successfully executes. • Performs a retry if it cannot connect to Ionix IT Orchestrator or if there is an
error. Has a configurable number of retries (defaults to 60). If the retries count is exceeded, the transaction is put into a resolvable error state.
• Automatically notifies the Monitoring Server of errors that occur and logs the errors.
• Allows the workflow creator to optionally use blocking or error functionality manually. This allows for using this mechanism for simple processes but gives the full acquisition service capability where required.
• If Ionix IT Orchestrator is detected to be down (planned or otherwise), the mechanism will wait for Ionix IT Orchestrator service to return rather than continually generating errors.
Terminology
• Buckets - The acquisition push mechanism uses the concept of 'buckets' to parallelize processing. A blocking key is the unique combination of 'serviceId', 'objectType' and 'objectId'. This is used as the criteria for blocking on the acquisition queue. The push mechanism takes results of a poll and breaks it up into separate groups known as buckets. One bucket is created for each blocking key in the poll. If all records are for unique IDs in the endpoint application, then each bucket will have only one record in it. All buckets can be processed independent of other buckets.
• Side Effects - The acquisition push mechanism analyzes the 'side effects' of processing. The Acquisition Push will look at a transaction status and blocking to determine if it is safe to process other transactions in the same bucket. If it determines that is not safe, then it will not do further processing on the same bucket. Side effects are determined as follows: Safe to process in same bucket:— Complete: Will not be present on the queue. Get will fail. — Error: Will not show as 'Blocked'. Not Safe to process in same bucket: — Retry: Will show with transaction status of 'Poll'. — Resolvable Error: Will show as 'Blocked' — Blocked: Will show as 'Blocked'
22 VERSION 2.4 REV A01 300-011-526
ACQUISITION SERVICE
Performance
This mechanism has been optimized to perform handling of adapter queue data the best. • It only uses a single thread for polling. This reduces the idle time load on the
adapters. One problem with Ionix IT Orchestrator polling is having so many jobs continuously hitting the adapters with poll calls.
• Worker threads are used to perform simultaneous processing. Separate jobs do not need to fire on a repeat interval. When there is work in the queue to be done, it can keep all worker threads active.
• All adapter calls are handled internally and do not need to go over the wire (web services). Transactions are only pushed when they are to be run.
Acquisition–Event Service
The Acquisition-Event service is used for event mode Acquisition in conjunction with the Agent. This service receives an HTTP post on a specific URL.
The content of the post is in the format of the “Data” object. This data is mapped using a mapping script provided to the ITOM format and then is added to the acquisition queue.
Acquisition–Event Service Process Flow
Figure 1-6 illustrates the Acquisition–Event process flow for the Adapter. This process posts all the changed data to the Adapter.
The process consists of the following steps:1. The Endpoint Application sends record information to the Agent.2. The Agent sends the record information to the Acquisition-Event Service.3. The Acquisition-Event Service translates the record information into the IT
Object Model.4. The Object data is placed into the Persistence Database queue and is available
to the Acquisition Service.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 23
ACQUISITION SERVICE
Figure 1-6 Acquisition-Event Process Flow
EMC Ionix ITOAdapter
24 VERSION 2.4 REV A01 300-011-526
ACQUISITION SERVICE
Notification Service
The Notification Service is a RESTful service that notifies the Adapter when a particular object in the Endpoint Application has been added or changed. The notification happens by performing a POST to a specific URL (configured with each Adapter) typically by the Adapter Agent. The Notification system uses the Operational Service's get method to retrieve the object and put it into the Acquisition Queue. The Notification Service may also pass the object type to the Acquisition Queue.
The ITObject can support multiple object types from different forms. An optional parameter may be specified on the URL to the service that can indicate the object type. This is stored in an extra parameter in the Acquisition Queue called objectType.
For example, to specify the object type, use a URL in the following format:
http://localhost:9080/services/notification/{adapter}/itobject/{objectType}/{id}
Where:
• {adapter} = Adapter name. • {objectType} = desired object type for the parameter (i.e., event)• {id} = the incident record ID
When the Notification Service performs the request to retrieve the data for the id, it uses the Operations Service. For the ITObjectService, a table parameter is required that defines the “form”, “table”, “object class” or “object type”. This {objectType} specified on the URL is mapped to this table parameter in the service.
Process Flow
Figure 1-7 displays a detailed architectural view and Notification Service process flow for the EMC Ionix IT Orchestrator Adapter. This process informs the Adapter when incidents are changed or created on the endpoint application.
The process consists of the following steps:1. The Endpoint Application sends a new or modified Incident Record ID to the
Adapter Agent.2. In response, the Agent sends the ID to the Adapter Notification Service.3. The Notification Service forwards the ID to the Operations Service.4. The Operations Service sends the ID and a “get” request to the API Interface.5. The Endpoint Application sends the ID in a “get” method call on the Endpoint
Application API. The API Interface receives the Endpoint Application response, which contains all of the Incident Record information.
6. The translated incident transaction data is placed into the Persistence Database queue.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 25
ACQUISITION SERVICE
Figure 1-7 Notification Services Process Flow
Custom Parameters for Notification or AcquisitionEvent Services
The following parameters can be added to the Notification or Acquisition-Event services to influence how a transaction is placed in the Acquisition Queue. Each of these can be added using the -a parameter when calling the Agent. These must be set using the string-field extended field type. • iwave.request.type - This parameter sets the
TransactionRecord.requestType to the value specified. • iwave.real.objectId - This parameter sets the
TransactionRecord.objectId to the value specified. This is used to override the default that uses the actual object's identifier. This is useful when a staging form is used for the record but blocking is needed based on the real objectId.
• iwave.overrides.objectType - This parameter sets the TransactionRecord.objectType to the value specified. This is used to override the default that uses the actual object's type. This is useful to define partner's object types.
• iwave.overrides.serviceId - This parameter sets the TransactionRecord.serviceId to the value specified. This is used to override the default that uses the actual object's service identifier. This is useful to set custom partner IDs.
• iwave.create.date - This parameter sets the TransactionRecord.createDate to the value specified. This must be in the XML date format as if the date-field is used however this must be a string-field for agent compatibility. The create date normally is set at the time the item enters the queue. This allows setting this date from the agent call.
EMC Ionix ITOAdapter
26 VERSION 2.4 REV A01 300-011-526
OPERATIONS WEB SERVICE
Operations Web Service 1
An operation constitutes the process of pushing, getting, and finding data from a remote application. For example, when an incident is created, modified or closed in an application that is integrated with an endpoint application, the modified information is placed into the endpoint application. This operation effectively synchronizes an application’s data with its remote counterpart.
Process Flow
The process consists of the following steps:1. The Ionix IT Orchestrator calls the Operations Service methods to interact with
the Endpoint application’s API.2. Operations Service translates the record information from the IT Object Model
to the Endpoint application’s native record format. The native record information is sent to the Endpoint application through the API.
3. The API Interface inserts the data into the Endpoint application.4. The results from the API are translated back into the IT Object Model and
returned from the web service call.Figure 1-8 Operations Process Flow
EMC Ionix ITO Adapter
EMC Ionix ITOAdapter
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 27
OPERATIONS WEB SERVICE
28 VERSION 2.4 REV A01 300-011-526
ABOUT THE EMC IONIX ITOI ADAPTER
About the EMC Ionix ITOI Adapter 1
The EMC Ionix ITOI Adapter provides bi-directional access to the EMC Ionix ITOI domains such as SAM, IP and OI domains. This access includes acquiring alerts and topology devices from SAM and operations with different domains.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 29
ABOUT THE EMC IONIX ITOI ADAPTER
30 VERSION 2.4 REV A01 300-011-526
2Chapter
Supported Services 2This section identifies the supported Adapter Services:• Acquisition Service Methods• Discovery Service• Operations Service Methods
Acquisition Service 2
The following services are made available to the EMC Ionix IT Orchestrator through the EMC Adapter’s Acquisition Service:• Polling Methods• Blocking Methods• Terminal Methods• General Methods
WSDL
The Acquisition Services are used to access the Adapter acquired messages on a queue. The following is the WSDL URL for the Acquisition Service:https://localhost:9443/services/AcquisitionService?wsdlThe EMC Ionix ITOI adapter can register SAM observers for event and topology changes and automatically acquires those SAM notifications.
Polling Methods
While in the Acquisition Queue, transactions are assigned a polling status:• Poll - indicates the transaction has no related transactions that are Blocking
and it is available for polling. Related transactions are defined as those with the same objectType, serviceId and objectId (see the getRelated operation).
• Pending - indicates records that have been polled and are currently being processed.
• Error - indicates records that have been polled, processed and contain errors.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 31
ACQUISITION SERVICE
The following are the supported polling methods:• poll(objectType, maxResults) - Polls the acquisition service for
transactions with the given object type. The maximum number of records returned is specified. This method puts the records into the blocking state and sets their status as pending. If maxResults is not specified, one record will be returned.
• pollAny(maxResults) - Polls the acquisition service for transactions. The maximum number of records returned is specified. This method puts the records into the blocking state and sets their status as pending. If maxResults is not specified, one record will be returned.
• pollByService(serviceId, objectType, maxResults) - Polls the acquisition service for transactions with the given service ID and object type. The maximum number of records returned is specified. This method puts the records into the blocking state and sets their status as pending. If maxResults is not specified, one record will be returned.
Blocking Methods
A blocking transaction is a transaction that is currently being processed by an instance. A blocking transaction record prevents other related records from being polled. Blocking Methods are used to identify if the transaction is blocking (TRUE) or non -blocking (FALSE). If the transaction is blocking, the blockType is identified as either Pending or Asynchronous.• block(id, message, blockType) - Sets the transaction as Blocking
and sets the blockType. Since polling automatically sets the blocking flag as TRUE, most of the time this method will just set the blocking type.
• unblock(id, message) - Sets the transaction as non-blocking. (Blocking = false)
Terminal Methods
Terminal Methods are called to signal the end of Ionix IT Orchestrator processing on a record.
• complete(id) - Acknowledges a transaction and deletes it. This used to be called acknowledgeComplete. acknowledgeList will be removed as transactions are generally handled sequentially.
• retry(id, message) - Sets the status to Poll and unblocks the transaction. This can be used to resolve and retry errors or to retry something that was polled.
• resolvableError(id, message) - Sets the status to Error and ensures that the transaction is Blocking. This is used instead of acknowledgeError. The blocking is preserved to prevent data corruption. This block type is set to Error.
32 VERSION 2.4 REV A01 300-011-526
ACQUISITION SERVICE
• error(id, message) - Sets the status to error and unblocks. This is used for final errors that were never retried. By using this method, the user allows other related transactions to be processed. Use this method with caution.
General Methods
General Methods are called to get and return transaction and blocking results.• getBlocking(maxResults) - Gets all transactions in the Blocked state.• getBlockingFor(maxResults, blockType, seconds) - Gets all
transactions in the blocked state for a number of seconds. This can be used for auditing asynchronous transactions.
• getTransaction(id) - Gets the specified transaction.• count(id) - Returns the total count of available transactions and error
transactions in the Persistence Queue.• countErrors(id) - Gets the total number of records that are in the Error
state in the Acquisition Queue. Similar to count() but for errors.• getErrors(maxResults) - Gets all transactions with the Error Status.• getRelated(id) - Gets a list of all transactions that are related to this
transaction. Related transactions are defined as ones that have the same objectType, serviceId and objectId. This is useful to get any transactions that are related to a transaction that is blocking.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 33
DISCOVERY SERVICE
Table 2-1 identifies the formats and descriptions of the method input variables.
Discovery Service 2
The discovery service allows you to see what web services are deployed on the adapters framework. This will list all adapter web services, Monitoring Server services and any RESTful HTTP services. The Discovery Service information can be accessed in two different ways:• through a SOAP Web Service• through a standard HTTP GET
WSDL
The following are the WSDL locations for the Discovery Service:• For SOAP:
https://localhost:9443/services/DiscoveryService?wsdl
• For HTTP GET:https://localhost:9443/services/discovery
Table 2-1 Acquisition Service Method Input Descriptions
Inputs Format Description
blocktype string This field defines the type, category, tag or state associated with the block.
id Integer Identifies the transaction ID.
maxResults Integer Identifies the maximum number of items to poll. (Default =1)
message String Text string identifying the method message.
objectType String Case sensitive ITIL Object Type (Change, CI, Problem, and Event, Incident or ITObject).
seconds Integer Identifies the number of seconds.
serviceId String Case sensitive Service ID.
34 VERSION 2.4 REV A01 300-011-526
OPERATIONS WEB SERVICE METHODS
Operations Web Service Methods 0
The EMC Ionix ITOI Adapter utilizes the following Operations Web Service methods:• Event Services• Device Services• Domain Device Services
Note: If a service comes with a domain parameter, the service is only appliedto that specified domain. If domain value is not provided, it defaults tothe sadomain value (usually a SAM domain name) specified in theframework.properties file.
Event Services
The following is the WSDL location for the Operations Event Service:
https://localhost:8443/services/ionix-itoi/EventService?wsdl
The adapter provides all the standard operation services listed below.
Table 2-1 Event Operation Services
Method Description
get (domain, eventID) This operation returns the event from the domain. An event identifier is composed of Ionix alert notification class and notification instance names with "::" as the delimiter. As an alternative for users that are familiar with the way Ionix searches a notification, instead of the two-part identifer, you can also provide the following as an identifier substitution:
<SourceDeviceClassName>::<SourceDeviceInstanceName>::<EventName>
—sheet 1 of 3—
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 35
OPERATIONS WEB SERVICE METHODS
find (domain, query) This operation searches the domain and find all the alerts that match the provided query. The query string is in format of "<InstanceExpr>[, <ChoiceFlag>]", by default the instance expression is in global expression format. The flag is a number comply with EMC DX_EventChoice constants. It can be a calculated result of the constant expression. Here are couple query examples:
* -- find all current event instances.*heap* -- find those instances that have "heap" contained in their names.
create (domain, event) This operation is used to create an Ionix alert on the specified domain. The incoming class name, object name, and summary values are used to construct a new event identifier on Ionix.
If the alert already exists, it will be re-created. A device maintenance service can be scheduled by creating a special event in SAM with the event summary value set to SchedMaint.
The new alert expiration time can be set using an adapter NumberField type extended field named "Expiration". The value is in seconds. The default value allows alerts to never expire. This value is most often used with event Type value set to "MOMENTARY".
In addition to the three identification fields above, DateField type fields MaintenaceStartDate and MaintenanceEndDate must also be provided to schedule a service. A scheduled maintenance service can be removed by creating an alert with summary value RemoveSchedMaint. The dates are not required for removing.
update (domain, event) This operation is used to update an Ionix alert on the specified domain. The event identifier must be provided for the update. An update may change acknowledgement state. An external ID for ITOI alert can be held with property TroubleTicketID. Refer to event mapping section below for more information on how to update event relationship properties.
Table 2-1 Event Operation Services (continued)
Method Description
—sheet 2 of 3—
36 VERSION 2.4 REV A01 300-011-526
OPERATIONS WEB SERVICE METHODS
Device Services
The URL of device operation services is located at:
https://localhost:8443/services/ionix-itoi/DeviceService?wsdl
The adapter provides all the standard SAM device/topology operation services as listed below.
acknowledge (domain, event) This method can be used for either acknowledge or unacknowledge operation. If incoming event status is OPEN, then it is considered an unacknowledge operation; otherwise (include status not set) it is an acknowledge operation. Optionally you can provide an operation note, which will go to the audit log, with the event summary field.
When an event on the domain is acklnowledged, it's owner information is also updated. If the incoming Owner value is not provided, then the current Owner value on the domain event is erased.
clear (domain, event) This operation clears the event on the domain. If source name is not provided, the adapter uses adapter system ID as the source name and try to clear the event.
Note: Ionix may not fail this operation if an un-matched source name is provided.
Table 2-2 Device Operation Services
Service Description
create (device) This operation uses the input device name and class name as unique identifier components to create a new SAM instance. If provided with the device object, a relationships is also created at the same time.
update (device) In addition to a normal update operation, this operation is also used to delete a device and sets the update status to "DELETED". This operation cannot be used for a relationship update. To update a relationship, use createRelationship or removeRelationship.
—sheet 1 of 2—
Table 2-1 Event Operation Services (continued)
Method Description
—sheet 3 of 3—
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 37
OPERATIONS WEB SERVICE METHODS
Domain Device Services
The following is the WSDL for the EMC Ionix ITOI domain device service:
https://localhost:8443/services/ionix-itoi/DomainDeviceService
Table 2-3 provides descriptions of the supported services.
find (query) The query string is in the following format:<ClassExpr>,<InstanceExpr>[, <ChoiceFlag>]
By default, the expressions are in a global expression format. The flags is a number comply with EMC DX_EventChoice constants. For example:
*,* -- find whole topology information under current SAM hierarchy.Host, * -- find all Host class instances under current SAM hierarchy.
get (identifier) Retrieves the device instance from SAM based on the specified identifier.
createRelationship (device, relationship)
Adds a new relationship to the device. The new relationship is provided with the relationship parameter, not the device.relationships.
removeRelationship (device, relationship)
Removes the specified relationship(s) from the specified device.
delete (device) This is used to delete a SAM device instance. Operation delete is not a standard operation method for a device
Table 2-3 Domain Device Operation Services
Service Description
get (domain, identifier) This operation returns the device instance identified by the identifier from the domain. This operation is mainly used for information drill down.
find (domain, query) This operation use the query to find the device(s) from the domain. The query format is the same as device find operation.
—sheet 1 of 2—
Table 2-2 Device Operation Services (continued)
Service Description
—sheet 2 of 2—
38 VERSION 2.4 REV A01 300-011-526
OPERATIONS WEB SERVICE METHODS
update (domainlist, device) This operation updates the device on all the domains in the list. It trys to finish all the updates , and throws an operation exception with the domain names on which the update failed. This operation can be regularly used for device credential update.
discover (domainlist, network, hostlist, credentials)
This operation will try to put each of the device on hostlist onto each of the discovery pending list of the domains on the domainlist. All the devices share the same (first in the list) credentials. The operation will not terminate on any specific pending list failure. At the end an exception will be thrown with additional info if there is any failure during the process.
Table 2-3 Domain Device Operation Services (continued)
Service Description
—sheet 2 of 2—
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 39
OPERATIONS WEB SERVICE METHODS
40 VERSION 2.4 REV A01 300-011-526
3Chapter
System Configuration 1This chapter identifies the requirements for configuring the EMC Adapter solution and discusses the following topics:• Supported Operating Systems• System Requirements• Supported Databases
Supported Operating Systems 1
The Adapter software can be installed on the following operating systems:• Windows - NT4, 2000, XP, 2003 Server, 2008 Server• UNIX- Solaris 10 (Sparc), HP-UX 11 (Itanium), AIX• Linux - x86, x64, Kernel 2.6 (or higher)
System Requirements 1
Before you install the Adapter software, your Adapter server must meet the following system requirements.
Recommended
The following are the recommended system requirements for installing the EMC Adapter software:• CPU: Dual Core Processor running 2GHz or higher • RAM: 2 GB • Disk Space: 5 GB free disk space • Java Runtime Environment: JRE 6.0 Update 16 (or above) is recommended.
This is bundled with the Windows installer.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 41
SUPPORTED DATABASES
Minimum
The following are the minimum system requirements for installing the EMC Adapter software:• CPU: Pentium Class or Equivalent Processor or higher • RAM: 512 MB Free • Disk Space: 2 GB free disk space • Java Runtime Environment: JRE 6.0 Update 16 (or above) is recommended.
This is bundled with the Windows installer.
Supported Databases 1
The EMC Adapter uses a relational Apache Derby database for the Persistence Queue. In addition to the Apache Derby database, the EMC Adapter supports the following external databases:• Oracle• DB2• Microsoft SQL Server
42 VERSION 2.4 REV A01 300-011-526
4Chapter
Software Installation 4Topics covered in this section:• Overview• Configuring SSL Communications• Installing a License File• Installing the Adapter Software - Windows• Running the Adapter Windows Service• Installing Adapter Software - UNIX• Running the Adapter UNIX Service• Manual Installation Procedures
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 43
OVERVIEW
Overview 4
Based on your EMC configuration, the following components may be installed (see Figure 4-1):• EMC ITIL Adapters – includes the Adapter software and license file.• EMC ITIL Adapter Agent (Optional) – includes the Adapter URL Agent
software or custom Agent.The Agent may be installed with the Adapter on the same server or on a separate server.
• License files – are provided by EMC Customer Support and must be installed in the appropriate directory.
• EMC Ionix IT Orchestrator (Optional) – includes the Ionix IT Orchestrator software and license file.
Figure 4-1 Installation Components
EMCIonix ITO
44 VERSION 2.4 REV A01 300-011-526
CONFIGURING SSL COMMUNICATIONS
Configuring SSL Communications 4
To configure SSL communications between the Ionix IT Orchestrator and Adapter, complete the following steps.1. From the Adapter server, obtain a copy of the Adapter SSL Certificate. 2. Verify that there is not an existing or incorrect certificate already installed in
the Ionix IT Orchestrator keystore.3. Copy the hostname.cer file to the Ionix IT Orchestrator server.4. Confirm that the JAVA_HOME is set to Java 6. Once the JAVA_HOME is verified,
execute the following command to delete the existing certificate:"%JAVA_HOME%\bin\keytool" -delete -alias iwave -storepass changeit -keystore "%JAVA_HOME%\lib\security\cacerts"
5. Install the certificate into the Ionix IT Orchestrator keystore.6. Confirm that the JAVA_HOME is set to Java 6. Once the JAVA_HOME is verified,
execute the following command to store the certificate:"%JAVA_HOME%\bin\keytool" -import -alias iwave -v -file iwave.cer -keypass iwave -storepass changeit -keystore "%JAVA_HOME%\lib\security\cacerts"
Figure 4-2 SSL Configuration
EMCIonix IT Orchestrator
EMC Ionix ITOAdapter
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 45
INSTALLING A LICENSE FILE
Installing a License File 4
When the Adapter software is purchased, a software license file (in XML format) is provided by EMC Customer Support. The license file identifies the following information for each Adapter server included in the EMC software configuration:• the types of Adapters that can be installed on the server• the Adapter software version• the expiry date for the Adapter software• the license key
During Adapter software installation, the user identifies the location of the license file. The installer then copies the license file from the original location to the following EMC Adapter installation directory:
install_root/adapters-2.4/conf
46 VERSION 2.4 REV A01 300-011-526
INSTALLING THE ADAPTER SOFTWARE - WINDOWS
Installing the Adapter Software Windows 4
This section identifies the steps required for installing the EMC Adapter software.
Before You Begin
Before you install the EMC Adapter software, complete the following tasks:• Identify the location of the Adapter license file.• Close all Windows applications.• Determine the type of Agent you are installing (if any).• Determine which Adapter will be installed.• Determine on which server the Adapter and Agent software will be installed. .
Start the Installer
To install the EMC URL Agent and/or Adapter software, complete the following the steps:1. Access the location of the Adapter installer executable. Double-click the
setup-Adapter-winxx_2.4.exe file. 2. The Open File - Security Warning window displays. Click Run.3. The InstallAnywhere progress screen displays.Figure 4-3 Installer Progress Screen
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 47
INSTALLING THE ADAPTER SOFTWARE - WINDOWS
4. The progress screen displays.Figure 4-4 Progress Screen
5. After the InstallAnywhere Wizard finishes loading, the EMC Adapters Installer Introduction screen displays. From this screen, select the Next button to continue.
Figure 4-5 Introduction Screen
48 VERSION 2.4 REV A01 300-011-526
INSTALLING THE ADAPTER SOFTWARE - WINDOWS
6. The Choose Install Set screen displays. From this screen, select the appropriate installation option. — For instructions on installing the URL Agent, refer to “Installing the
URL Agent”. — For instructions on installing your Adapter, refer to “Installing the
Adapter”.Figure 4-6 Choose Install Set
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 49
Installing the URL Agent
To install the URL Agent software, complete the following steps:1. From the Choose Install Set screen, select the URL Agent and corresponding
Python 2.6.1 for Windows install Set. Click Next. Figure 4-7 Install Set - URL Agent
50 VERSION 2.4 REV A01 300-011-526
2. The Choose Install Folder screen displays. To change the install folder, click the Choose button and navigate to the appropriate installation directory. Click Next.
Figure 4-8 Choose Install Folder Screen
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 51
3. The Choose Shortcut Folder screen displays. From this screen, specify the areas where the software shortcut icons will be created. Click the Next button to continue.— In a new Program Group – creates a new program group with the
specified name and includes a shortcut in the Windows All Programs list.
— In an existing Program Group – includes a shortcut in an existing program group.
— In the Start Menu – includes the Adapter shortcut in the Start menu.— On the Desktop – creates an Adapter shortcut on the desktop.— In the Quick Launch Bar – includes the Adapter shortcut in the Quick
Launch menu bar.— Other – specify a custom directory location by selecting the Choose
button.— Don’t create icons – Select this option if you do not want to create an
Adapter shortcut.— Create Icons for All Users – Select this option to create shortcuts for
all users configured on the server. The shortcuts are only added to the Start Menu and Desktop.
52 VERSION 2.4 REV A01 300-011-526
Figure 4-9 Choose Shortcut Folder Screen
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 53
4. The Preparing to Install screen displays. Click Install.Figure 4-10 Preparing to Install
54 VERSION 2.4 REV A01 300-011-526
5. The Installing Adapters screen displays. This screen displays the progress of the URL Agent installation.
Figure 4-11 Installing the Adapter
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 55
6. If you selected to have Python installed, the Python 2.6.1 Setup screen displays. Select one of the following options and click Next.— Install for users— Install just for me (not available for Windows Vista)
Figure 4-12 Python Setup
56 VERSION 2.4 REV A01 300-011-526
7. The Select Destination Directory screen displays. Click the Up and New buttons to select a directory for the Python 2.6.1 files.The default directory is Python26. Click Next.
Figure 4-13 Select a Destination Directory
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 57
8. The Customize Python 2.6.1 screen displays. Click Next.Figure 4-14 Customize Python 2.6.1
58 VERSION 2.4 REV A01 300-011-526
9. The Install Python 2.6.1 screen displays. When the installation completes, click Next.
Figure 4-15 Install Python 2.6.1
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 59
10. The Completing Python Installer screen displays. Click Finish button to complete the Python installation.
Figure 4-16 Completing Python Installer
60 VERSION 2.4 REV A01 300-011-526
11. The Install Complete screen displays. Click Done to exit the installer.Figure 4-17 Install Complete
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 61
Installing the Adapter
1. From the Choose Install Set screen, select the EMC Ionix IT Operations Intelligence Adapter option. Click Next.
Figure 4-18 Choose Install Set Screen
62 VERSION 2.4 REV A01 300-011-526
2. The Choose Install Folder screen displays with the default installation folder. To change the install folder, click the Choose button and navigate to the appropriate installation directory. Click Next.
Figure 4-19 Choose Install Folder Screen
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 63
3. The Choose Shortcut Folder screen displays. From this screen, specify the areas where the software shortcut icons will be created. Click the Next button to continue.— In a new Program Group – creates a new program group with the
specified name and includes a shortcut in the Windows All Programs list.
— In an existing Program Group – includes a shortcut in an existing program group.
— In the Start Menu – includes the Adapter shortcut in the Start menu.— On the Desktop – creates an Adapter shortcut on the desktop.— In the Quick Launch Bar – includes the Adapter shortcut in the Quick
Launch menu bar.— Other – specify a custom directory location by selecting the Choose
button.— Don’t create icons – Select this option if you do not want to create an
Adapter shortcut.— Create Icons for All Users – Select this option to create shortcuts for
all users configured on the server. The shortcuts are only added to the Start Menu and Desktop.
Figure 4-20 Choose Shortcut Folder Screen
64 VERSION 2.4 REV A01 300-011-526
Note: If you choose not to create a menu shortcut, you can start the Adapterframework using the startAdapters.bat file. This file is located in theinstall_root\bin directory.
4. The Choose License File screen displays. From this screen, verify that the license file location identified in the Please Choose License File field, is correct. To change the license file location, select the Choose button and select the appropriate directory. Click Next.
Figure 4-21 Choose License File Screen
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 65
5. The Enable Security screen displays. On this screen, the Use HTTPS (port 9443) check box is selected by default. This option uses SSL for secure Web-based communications. To use standard unsecured HTTP Web-based communications, un-check this box. Click Next.
Figure 4-22 Enable Security screen
66 VERSION 2.4 REV A01 300-011-526
6. The Web Service Authentication screen displays. From this screen, enter the Username and Password you want to use for authentication. You must enter the password twice for confirmation purposes. Click Next.
Figure 4-23 Web Services Authentication
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 67
7. The Monitoring Server Configuration screen displays. Based on your Adapter configuration, determine the appropriate step to complete:— If you are monitoring the Adapter with the Monitoring Server and the
Monitoring Server is on a different host from the Adapter, select the Specify host for Monitoring Server checkbox. Identify the following information and click Next:– URL - identifies the URL location of the Monitoring Server.– Username - identifies the username for the Monitoring Server.– Password - identifies the password associated with the username.
— If you are not using a Monitoring Server or your Monitoring Server is running on the same server as the Adapter, leave the checkbox unchecked. Click Next.
Figure 4-24 Monitoring Server Configuration
68 VERSION 2.4 REV A01 300-011-526
8. The Pre-Installation Summary screen displays. Using the scroll bar, review the information before continuing the installation process.— If the information is correct, click Next.— If the information is incorrect, click Previous and change the
configurations on the previous screen. Click Next when done.Figure 4-25 Pre-Installation Summary
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 69
9. The Adapters Configuration screen displays. Click Next.Figure 4-26 Adapters Configuration
70 VERSION 2.4 REV A01 300-011-526
10. The EMC Operations Intelligence Adapter Configuration screen displays. From this screen, provide the following information:— Service ID - The SAM system instance ID. — Broker- The Ionix Broker host name and port number. (Default:
localhost:426) — SA Domain - The top SAM domain name. (Default INCHARGE-SA) — Ping Interval - The SAM notification listener connection check
interval. — Default Source - If a required source name is not provided with an
event operation (i.e., create and clear), this is the default source name that this Adapter will use. (Default: adapter-itoi-1)
— Reconfigure Interval - This is the value of the check interval time in milliseconds. The Adapter regularly checks if any device credential update happened since last check. If so, reconfigure will be performed on the changed domain(s).
Figure 4-27 EMC Operations Adapter Configuration screen
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 71
11. The EMC Ionix ITOI Credentials screen displays. This screen provides the credentials that the Adapter will used to access the ITOI domains. Enter the username and passwords for the Adapter user accounts previously created on each domain.During the installation process, only credentials for five domains can be configured. For information on adding credentials for more domains, refer to "Creating Additional Domain Credentials" on page 8-1.
Figure 4-28 EMC Ionix IT Credentials
72 VERSION 2.4 REV A01 300-011-526
12. The Preparing to Install screen displays. Click Install.Figure 4-29 Preparing to Install
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 73
13. The Installing Adapters screen displays. This screen displays the progress of the installation process. During this step, the Windows Service is installed and a keystore file is generated for SSL.
Figure 4-30 Installing the Adapter
74 VERSION 2.4 REV A01 300-011-526
14. The Start Service screen displays. From this screen, select the Start the Adapter Service checkbox if you want to start the Adapter service during the installation process.
If you do not start the Adapter Service during installation, the Adapter service can be started manually. For more information on starting and stopping the Windows Service, refer to "Running the Adapter Windows Service" on page 79. Click Next.
Figure 4-31 Start Service
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 75
15. If you selected the Start the Adapter Service option, the following screen displays.
Figure 4-32 Starting the Adapters Service
76 VERSION 2.4 REV A01 300-011-526
16. The Install Complete screen displays. Click Done to exit the installer.Figure 4-33 Install Complete
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 77
78 VERSION 2.4 REV A01 300-011-526
RUNNING THE ADAPTER WINDOWS SERVICE
Running the Adapter Windows Service 4
The Adapters Windows Service is automatically installed during the installation process and if selected, is automatically started, as well.
Shortcuts
Based on which option was selected during installation, shortcuts may be provided from the Windows Start menu for starting and stopping the Windows Service.• To start the Adapters Service, select Start>All
Programs>install_root>adapters-2.4>Start Adapters Service.• To stop the Adapters Service, select Start>All
Programs>install_root>adapters-2.4>Stop Adapters Service.
Executable Location
Two executable files are provided for interacting with the Windows Service:• adapters.exe: The main executable that launches the service.• adaptersw.exe: The executable for starting the Service Manager application.
These files are located in the installation bin directory:install_root/bin
Service Manager Application
The Service Manager application is an application that allows you to configure options of the service such as turning on debugging. The service can also be started and stopped from this console.
To start the Manager application, double-click on the adaptersw.exe file. The Adapters Properties screen displays (see Figure 4-34).
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 79
RUNNING THE ADAPTER WINDOWS SERVICE
Figure 4-34 Adapters Properties - Services Manager Console
80 VERSION 2.4 REV A01 300-011-526
INSTALLING ADAPTER SOFTWARE - UNIX
Installing Adapter Software UNIX 4
Before You Begin
Before installing the Adapters on the UNIX platform, you must complete the following tasks:• For UNIX platform:
— Install the Java Runtime Environment (JRE) 6 Update 11. — Java 6 must be installed and run on the local computer. If multiple Java
platforms are present on the local computer, make sure that %JAVA_HOME% points to Java 6 when running the Adapter.
• For both UNIX and Linux (optional):— Create an “admin” user for running the framework.
Installing the Software
To install the Adapter software on a UNIX platform, run the appropriate setup application from the Linux or UNIX prompt.• Linux Installer: setup-Adapter-linux_2.4.bin• Other UNIX Platforms: setup-Adapter-unix_2.4.bin
Running the Adapter UNIX Service 4
The bin/service.sh script starts and stops the framework as a service. A special file service.PID is created when the service is started. This is used to find the PID of the running service. Do not delete this file manually.
• Starting the service: ./service.sh start• Stopping the service: ./service.sh stop• Restarting the service: ./service.sh restart• Service Status:./service.sh status
If you wish the service to start automatically at boot time, the following is a sample init.d script you can use to call the service.sh script:
#!/bin/shIWAVE_USER=adminIWAVE_SERVICE=/usr/IonixITO/adapters-2.4/bin/service.shsu - ${IWAVE_USER} -c "$IWAVE_SERVICE" $1
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 81
MANUAL INSTALLATION PROCEDURES
Manual Installation Procedures 4
If an installation is being performed on an unsupported operating system, the EMC Adapter can be installed manually without the installer.
Before You Begin
Before manually installing the Adapter software, you must complete the following tasks:• Ensure that you are installing on either a Windows or UNIX platform.• Java 6 must be installed and run on the local computer. If multiple Java
platforms are present on the local computer, make sure that %JAVA_HOME% points to Java 6 when running the EMC Adapter.
• An Adapter license file (license.xml) must be copied to the install_root\conf directory. If you do not have a license file for your Adapter, contact your EMC Sales Representative.
Install the Files
To install the files manually on a Windows or UNIX platform, complete the appropriate steps.
For Windows:
1. Contact EMC Customer Support and request a zipped copy of the Adapter installer to be placed on the EMC FTP site.
2. From the Adapter server, download the zipped file.3. Unzip the file and place the extracted file(s) in any directory on any machine
with network access to the computer running the endpoint application.
Note: For Windows installations, there are no registry keys to edit. Thelocation of these files is referred to as %IonixITO_HOME%.
For UNIX and Linux:
1. Contact EMC Customer Support and request a tarred/zipped copy of the Adapter installer to be placed on the EMC FTP site.
2. From the Adapter server, download the tarred/zipped file in binary format. Place the .zip file in the directory where you want the software installed. For example: /opt/EMC
3. Extract the files included in the zip file. This will create an adapters directory with several sub directories.jar xfv adapter-2.4.zip
82 VERSION 2.4 REV A01 300-011-526
MANUAL INSTALLATION PROCEDURES
4. Change to the adapters/conf directory. 5. Copy your license file to the conf directory. Ensure that the license file is
named license.xml.6. Change to the adapters/endpoints directory. Access the directory for
your endpoint adapter.7. Copy the endpoint-spring.xml file to the adapters/conf directory.8. Using the propertiesEditor.bat utility, modify the following
parameters in the framework.properties file.— framework.username
— framework.password - use the -h option when setting the password.
— endpoint.datasource.jdbc.url
— endpoint.datasource.jdbc.username
— endpoint.datasource.jdbc.password
—
9. Change to the adapters/bin directory10. Run the setup.bat script.
./setup.bat
11. Install the Adapter as a service. ./service.bat install
12. Start the adapters service.13. After a few seconds, change to the adapters/log directory and view the
framework.log file. At the bottom of the file, the log should indicate that the adapter framework has started.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 83
5Chapter
Framework Properties 1During installation, the framework.properties file is installed in the conf directory. The framework.properties file includes configuration parameters for the Adapter Framework. Any parameters specified in this file are automatically recognized by the external (framework.xml) and internal (inside the framework jars) spring configurations. These parameters allow the base configuration to be used and only a few parameters should be changed.
The framework.properties file is in the standard Java Properties format. The file can be edited using a text editor or the properties in the file can be edited using the PropertiesEditor command.
The properties in the framework.properties file that are encrypted are shown in the format: "ENC;XXXXX" where XXXXX is the encrypted data.
Note: The Properties Editor tool is only capable of creating these propertiesand not reading them.
Properties Editor Tool 1
The Properties Editor is a tool used to edit configuration properties in the framework.properties file. This command allows encrypted parameters to be specified.
Starting the Tool
To start the Properties Editor tool, execute the following batch file or shell script from the command line:• For Windows: bin/propertiesEditor.bat
• For Unix: bin/propertiesEditor.sh
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 84
PARAMETERS
Using the Command
When entering the PropertiesEditor command, multiple options can be specified in a single invocation of the command.
Usage
PropertiesEditor [options] <target-file>
Options
-p <key>=<value> Sets a property with the key and value specified in plain text.
-e <key>=<value> Sets a property with the key and value specified in encrypted data.
-h <key>=<value> Sets a property with the key and value specified in SHA-1 Hashed format. This is used for framework passwords.
-m <file> Merges multiple properties from the file specified to the target file.
Examples
The following are examples of using the Properties Editor tool: • To set the framework username and password for authentication, enter the
following command:bin/propertiesEditor.bat -p framework.username=admin -h framework.password="Hashed String" conf/framework.properties
• To set the Adapter hostname, username and password, enter the following command:bin/propertiesEditor.bat -p adapter.host=hostname -p adapter.username=Demo -e adapter.password=password conf/framework.properties
Parameters 1
The framework.properties file includes two types of properties:• global framework properties• Adapter-specific properties
Global Framework Properties
These global framework properties are automatically configured for all Adapters.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 85
PARAMETERS
Framework Authentication
The following properties are used for the Web Services HTTP authentication:• framework.username - Username to log into the provided web services.• framework.password - Password to log into the provided web services.• framework.admin.password - Administrator password to restart the
adapters over JMX.• framework.auth.enabled - If this is set to true, authentication will be
required. (Default: true)
Default base URLs to Exposed Services
The following properties configure the base URLs for the Adapter services:• services.url - Base URL for all adapter operations services (https://
${hostname}:9443/services).• client.url - Base URL for client acquisition service (https://
${hostname}:9443/services).• notification.url - Base URL for notifications (http://
${hostname}:9080/services/notification).• acquisitionevent.url - Base URL for acquisition events (http://
${hostname}:9080/services/acquisition-event).
DataSource Properties
The following properties can be modified to enable support for another database instead of the default (Derby) Persistence database:• datasource.jdbc.driver – identifies the database driver (i.e.,
com.microsoft.sqlserver.jdbc.SQLServerDriver). • datasource.jdbc.url – identifies URL to the database (i.e.,
jdbc:sqlserver://hostname:1433;DatabaseName=testdb). • datasource.jdbc.username - identifies the username to log into the
database.• datasource.jdbc.password – identifies the password associated with
the database username. If required, the password can be encrypted.
Database Monitoring
The following properties can be modified to enable monitoring tasks on the database. Only one Adapter per database can have this enabled.• datasource.monitor.enabled - identifies if database monitoring is
enabled. (Default: true)
86 VERSION 2.4 REV A01 300-011-526
PARAMETERS
Acquisition monitoring
The Adapters automatically send the adapter.acquisition.queuesize and adapter.acquisition.queuewait events to the Monitoring Server based on the health of the Adapter queue. The following parameters are used to configure Acquisition monitoring. • acquisition.monitor.enabled - identifies if Acquisition monitoring is
enabled. (Default: true)• acquisition.monitor.queue-threshold - identifies the number of
items allowed in the queue before the queuesize event is sent. (Default: 500)
• acquisition.monitor.queue-wait-hours- identifies the number of hours an item must be on the queue before the queuewait event is sent (Default: 24)
• acquisition.bufferqueue.limit - identifies the maximum number of items that are allowed in the buffer queue. (Default: 500)
Automated Alerts
If the Monitoring Server is on a different host from the Adapter, the following configuration are updated to include the connection settings for the Monitoring Server. These parameters identify the location to send automated alerts. If you are using a Monitoring Server and it is installed on the same server as your Adapter, leave these parameters blank.• framework.events.url - identifies the Monitoring Server URL location
to send events.• framework.events.username - identifies the Monitoring Server
username for basic authentication.• framework.events.password - identifies the password associated with
the Monitoring Server username. The password can be encrypted.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 87
PARAMETERS
88 VERSION 2.4 REV A01 300-011-526
Framework Properties for EMC ITOI
The EMC Ionix ITOI Adapter requires the following properties to be set in the framework.properties configuration file: • ionix-itoi.serviceId - The SAM system instance ID. (Default: EMC-
Ionix-ITOI)• ionix-itoi.broker - The Ionix broker host name and port number.
(Default: localhost:426) • ionix-itoi.sadomain - The top SAM domain name. (Default INCHARGE-
SA) • ionix-itoi.pingInterval - The SAM notification listener connection
check interval. (Default: 120000)• ionix-itoi.operation.defaultSource - If a required source name is not
provided with an event operation (i.e., create and clear), this is the default source name that this Adapter will use. (Default: adapter-itoi-1)
• ionix-itoi.reconfigureInterval - This is the valueof the check interval time in milliseconds. The Adapter regularly checks if any device credential update happened since last check. If so, reconfigure will be performed on the changed domain(s). (Default: 300000)
• ionix-itoi.acquisition.event.notificationList - (Unix) This property configures the SAM notification list name. This configuration identifies the notification list from which you will be receiving SAM alerts (events). You can create your own notification list on SAM and subscribe to it by providing the name with the "ICS_NL-" prefix. (Default: ICS_NL-Default)
Figure 5-1 framework.properties file EMC Ionix ITOI parameter
## EMC Ionix ITOI (SAM) Adapterionix-itoi.serviceId = EMC-Ionix-ITOIionix-itoi.broker = localhost:426ionix-itoi.sadomain = INCHARGE-SAionix-itoi.pingInterval = 120000ionix-itoi.operation.defaultSource = adapter-itoi-1ionix-itoi.ip.reconfigureInterval = 300000 ionix-itoi.acquisition.event.notificationList=ICS_NL-Default
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 89
90 VERSION 2.4 REV A01 300-011-526
6Chapter
Custom Configuration 1Topics covered in this section:• Client Acquisition Service• Adapter High Availability• Java to Adapter Integration• Persistence Database Management
Client Acquisition Service 1
The Client Acquisition service allows customers to leverage the EMC Acquisition Services with their data. Customer data can be added to the existing EMC Acquisition system. Processes in Ionix IT Orchestrator can be configured to feed off of their data similar to the existing Adapter workflows. Two services are provided for getting data into the Acquisition Queue. Both provide the exact same features, but allow customers to choose the easiest integration point.
Data Format
The data must be provided in the following XML format:
<?xml version="1.0“ encoding=”UTF-8”?><client-object> <!-- Any client XML can go in here --></client-object>
Object Format
Schema for the client object (client-object.xsd):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="client-object" type="clientDefinedObject"/>
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 91
CLIENT ACQUISITION SERVICE
<xs:complexType name="clientDefinedObject" mixed="true"> <xs:sequence> <xs:any processContents="skip" namespace="##other" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType></xs:schema>
To provide data to the acquisition queue, customers must always specify the serviceId and objectType along with the object data.• serviceId - Unique identifier of the service that placed this data here.
This is used to differentiate between different applications that push data into the queue.
• objectType - Unique type of the object. This should not be one of the built in types (Incident, Event, CI, Change, Problem, ITObject). It can be any unique name to identify the customer's data.
The return for the service provides the ID of the transaction back to the client. This can be used to correlate the call with the transaction that appears in the queue.
RESTful Client Acquisition
For the Client Acquisition endpoint, HTTP POST to the following address:
https://localhost:9443/services/client-acquisition/{serviceId}/{objectType}:
Replace {serviceId} and {objectType} with the desired values.
• HTTP Basic Authentication is expected to authenticate the user.• If a problem occurs, and HTTP 500 (Internal Error) response code is returned,
the content of the response contains the error message. A HTTP 200 code indicates the request was processed normally. Any HTTP 4xx codes indicate some sort of client error.
Note: If you have a form with a ":" colon in it, use the ASCII Hex decimal with a"%" sign prefix to escape it in the Restful service URL.
Calling the RESTful Client Acquisition from curl
In order to call the RESTful Client Acquisition from curl, the URL Agent must be installed. Once the URL Agent is installed, complete the following tasks: 1. Create an XML file with the root node of the client-object.
<?xml version="1.0" encoding="UTF-8"?><client-object> <!-- Any client XML can go in here --></client-object>
2. From the command line, call the following command:
92 VERSION 2.4 REV A01 300-011-526
CLIENT ACQUISITION SERVICE
python agent.py -l -v -x {filename} https://iwave:password@localhost:9443/services/client-acquisition/{serviceId}/{objectType}
3. An HTTP/1.1 200 OK response is sent and the data should be in the Acquisition Queue.
SOAP Client Acquisition Web Service
The following is the location of the SOAP Client Acquisition Service WSDL:https://localhost:9443/services/ClientAcquisitionService?wsdl
If an error occurs, a web service fault is thrown matching the framework exception com.iwave.acquisition.client.AcquisitionException.This exception contains a message with the details of the problem. HTTP Basic Authentication is expected to authenticate the user.
Running on another port
To run the Client Acquisition service from another port, you must modify the client-acquisition-spring.xml file. Figure 6-1 identifies the spring configuration file for the client acquisition service. In this file, perform the following modifications:1. Replace the ${services.url} with the required URL and port number
(i.e., 9080).
Note: If you specify port 9443, you must use HTTPS in the URL.
2. If you need to disable authentication, delete the following three lines in the two places they occur.<jaxws:inInterceptors> <ref bean="securityInterceptor"/></jaxws:inInterceptors>
3. To start a second copy of the Acquisition Service, copy the modified file to the conf directory.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 93
CLIENT ACQUISITION SERVICE
Figure 6-1 Spring Configuration
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:jaxrs="http://cxf.apache.org/jaxrs" xmlns:lang="http://www.springframework.org/schema/lang" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.0.xsd">
<bean id="clientAcquisitionService2" class="com.iwave.acquisition.client.ClientAcquisitionService"> <property name="queue" ref="acquisitionQueue"/></bean>
<!-- Restful exception handler --> <bean id="acquisitionExceptionProvider2" class="com.iwave.acquisition.client.AcquisitionExceptionMapper"/>
<!-- Endpoints --> <jaxws:endpoint id="clientAcquisitionServiceEndpoint2" implementor="#clientAcquisitionService2" implementorClass="com.iwave.acquisition.client.ClientAcquisitionService" address="${services.url}/ClientAcquisitionService2"> <jaxws:inInterceptors> <ref bean="securityInterceptor"/> </jaxws:inInterceptors> </jaxws:endpoint>
<jaxrs:server id="clientAcquisitionServiceRest2" address="${services.url}/client-acquisition2"> <jaxrs:inInterceptors> <ref bean="securityInterceptor"/> </jaxrs:inInterceptors> <jaxrs:serviceBeans> <ref bean="clientAcquisitionService2"/> </jaxrs:serviceBeans> <jaxrs:providers> <ref bean="acquisitionExceptionProvider2" /> </jaxrs:providers> </jaxrs:server></beans>
94 VERSION 2.4 REV A01 300-011-526
ADAPTER HIGH AVAILABILITY
Adapter High Availability 6
The EMC Ionix IT Orchestrator Adapter solution may be scaled to allow more Adapters in the network configuration. Adapter scaling may be performed for the following reasons:• to increase the number of transactions being processed• to provide high-availability (i.e., redundancy)• to handle additional simultaneous requests
Figure 6-2 provides an illustration of a network configuration with multiple Adapters utilizing an external Acquisition database.
Figure 6-2 Adapter Scaled Network Configuration
Operations Services Scaling
The Operations Web Services can be scaled easily. The operations are essentially stateless, allowing a second adapter to be installed on another system that can handle the operations. If the primary Adapter fails, workflows can be updated to switch to use a secondary Adapter’s operations services.
Acquisition Services Scaling
The Acquisition Services component of the Adapter architecture can be scaled by completing the following steps:1. Offload the Acquisition Queue to an external database.2. Use the external database with multiple Adapters.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 95
ADAPTER HIGH AVAILABILITY
Use the External Database for Multiple Adapters
Each Acquisition Service is pulling from the same shared queue. A second adapter install can be used to handle additional acquisitions. Workflows can be updated to switch to the second adapter if the acquisition queue operations fail on the primary server.
Adapter Failover Infrastructure
Since it is difficult to add logic for Adapter failover within workflows, specific infrastructure must be implemented to handle Adapter failover. The following are options for implementing high-availability for the EMC Adapters:• Round-Robin DNS Server - A Round-Robin DNS can be used to allow a single
hostname to provide access to multiple IP addresses representing the multiple Adapter environments installed. With this configuration, if the primary Adapter server goes out-of-service, the DNS server can point users to the secondary Adapter server that is in-service.
• Highly Available HTTP Proxy Server - A highly available HTTP Proxy server can be used to forward requests between Adapters. When the primary Adapter server goes out-of-service, the HTTP proxy server should be able to forward requests to a secondary Adapter server that is in-service.
Agent Scaling
It is assumed that if the endpoint application is up and running, it should be able to invoke the Agent script running within that environment. The agent needs to only notify one acquisition adapter that is running. The reason is that the message only needs to be added to the queue once.
There are two options for this:• If the customer has a Round-Robin DNS or proxy set up that allows access to
any of the installed adapters that are running, this can be used from the agent. The agent would point to the single hostname. One of the adapters receives the request and add it only once to the queue.
• If multiple URLs are present on the agent command line, it makes the request to only one of them, the first available one. Store-forwarding is still provided but is only used if none of the services can be reached.
96 VERSION 2.4 REV A01 300-011-526
JAVA TO ADAPTER INTEGRATION
Java to Adapter Integration 6
If a Java application must be used to push information into any of the Adapter RESTful web services, specific Java code must be used. Figure 6-3 includes a Java code sample used to perform an HTTP POST or GET with the EMC Adapter.
Prerequisites
In order to use this code, you need to download the Apache Commons HTTP Client version 3.1. The Commons HTTP Client can be downloaded from the following location:
http://hc.apache.org/downloads.cgi
From the Apache Http Components Downloads page, scroll down and select to download the Commons HttpClient 3.1. To use this client, you also need the following jar files:• commons-httpclient-3.1.jar • commons-codec-1.3.jar • commons-logging-1.1.1.jar
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 97
JAVA TO ADAPTER INTEGRATION
Figure 6-3 Sample Java code
package com.iwave.net;import java.io.IOException;import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.HttpException;import org.apache.commons.httpclient.HttpStatus;import org.apache.commons.httpclient.methods.GetMethod;import org.apache.commons.httpclient.methods.PostMethod;import org.apache.commons.httpclient.methods.StringRequestEntity;/** * Example of making an HTTP GET or POST in Java. * * */public class SimpleHTTPClient { public String post(String url, String xml) throws HttpException, IOException { HttpClient client = new HttpClient(); PostMethod method = new PostMethod(url); try { if (xml != null) { method.setRequestEntity(new StringRequestEntity(xml, "text/xml" , "UTF-8")); } // Execute the method. int statusCode = client.executeMethod(method); if (statusCode != HttpStatus.SC_OK) { throw new IOException("HTTP POST method failed: " + method.getStatusLine()); } return method.getResponseBodyAsString(); } finally { method.releaseConnection(); } } public String get(String url) throws HttpException, IOException { HttpClient client = new HttpClient(); GetMethod method = new GetMethod(url); try { // Execute the method. int statusCode = client.executeMethod(method); if (statusCode != HttpStatus.SC_OK) { throw new IOException("HTTP GET method failed: " + method.getStatusLine()); } return method.getResponseBodyAsString(); }
98 VERSION 2.4 REV A01 300-011-526
PERSISTENCE DATABASE MANAGEMENT
Persistence Database Management 6
This section discusses the following maintenance tasks that can be performed on the Persistence database.• Removing Transactions• Reclaiming Unused Disk Space• Connecting to the Database• Changing the Database Port Number• Offloading the Acquisition Queue to an External Database
Removing Transactions
The pruning service removes all transactions that are older than 7 days and are in the “Error” state from the Persistence database. The service runs every night at 3:00 a.m.
Reclaiming Unused Disk Space
After large amounts of data have been deleted or updated on the Derby database, a Derby table or index can contain unused space. By default, Derby does not return unused space to the operating system. However, Derby does provide a way to reclaim unused space in tables and associated indexes.
If you determine that a table and its indexes have a significant amount of unused space, use one of the following procedures to reclaim the space: • SYSCS_UTIL.SYSCS_COMPRESS_TABLE - is guaranteed to recover the
maximum amount of free space, at the cost of temporarily creating new tables and indexes before the statement in committed.
• SYSCS_UTIL.SYSCS_INPLACE_COMPRESS_TABLE - attempts to reclaim space within the same table, but cannot guarantee it will recover all available space. This procedure uses no temporary files and moves rows around within the same table or index.
For more information, refer to the Apache Derby Administration Guide.
To reclaim space in the table and recreate the indexes, execute the following script from adapters/bin directory:
runScript.bat derbyMaint
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 99
PERSISTENCE DATABASE MANAGEMENT
Connecting to the Database
To connect to the Adapter Derby database over the network, use the Java driver derbyclient-10.4.2.0.jar. The following URL will connect to the Derby database running in the Adapter.
jdbc:derby://HOST:1528/persistence-db
Changing the Database Port Number
To change the port number of the database, modify the derby.drpa.portNumber in the system.properties file located in the conf directory.
Offloading the Acquisition Queue to an External Database
In addition to the Apache Derby database, the Acquisition Queue can be offloaded to an external database. To enable support for another database, complete the following steps:1. Download the JDBC driver for the required platform and place the file in the
lib/adapters directory in the adapter install directory.2. Modify the following properties in the Adapter framework.properties
file:— datasource.jdbc.driver: identifies the database driver name
(i.e., com.microsoft.sqlserver.jdbc.SQLServerDriver).— datasource.jdbc.url: identifies the URL to the database
(i.e., jdbc:sqlserver://hostname:1433;DatabaseName=testdb).— datasource.jdbc.username: Username— datasource.jdbc.password: Password. This can be encrypted if
desired.3. Restart the Adapter.
For the database to be highly available, database clustering technologies should be used. Refer to the appropriate database documentation for more information.
100 VERSION 2.4 REV A01 300-011-526
7Chapter
Using the URL Agent 1The chapter discusses the following topics:• About the Adapter URL Agent• Python Requirement• URL Agent Daemon• Logging• Running the URL Agent• URL Agent Filtering
About the Adapter URL Agent 1
If an Adapter does not require a specialized Agent, an EMC Ionix IT Orchestrator Adapter URL Agent can be installed. The main function of the URL agent is to perform an HTTP GET or POST operations against the adapter. An external application could be used to perform these functions, but the URL Agent provides some capabilities that may not be readily available from another client.
The URL Agent includes the following capabilities:• Store-Forward Capability - This means that if the Adapter is not running or
there is a network outage, the transactions are stored in a local data file. These transactions are forwarded when the Adapter is available again.
• HTTPS and HTTP Basic Authentication - for secured communications and authentication.
• Retrying on Retryable Error Codes - The Adapter Framework will return an HTTP Status Code for different types of errors. The URL Agent provides retrying on retryable error codes from the Adapter.
Python Requirement 1
Python 2.6 is required for the URL Agent. During installation, if the URL Agent is selected, the Python software is automatically installed.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 101
URL AGENT DAEMON
URL Agent Daemon 1
The Adapter URL Agent consists of two components: the agent and the agent daemon.
The URL Agent daemon is a lightweight process that runs in the background and makes requests to the Adapter(s). The URL Agent makes use of the Agent daemon background service. When started, the agent daemon provides ordered access to the adapter and to the store-forward data file. This daemon will remain running after the GET or POST operation is complete. It consumes minimal resources and allows future transactions to be executed much faster. Only one instance of the daemon is running at a time.
The agent uses TCP/IP port 50011 (by default) to communicate with the URL Agent daemon.
Shutting Down and Starting the Daemon
The Agent daemon is automatically started when the URL Agent is installed. If the daemon needs to be shutdown and restarted, enter the following commands:• To shutdown the agent daemon, enter the command:
agent.py –s
• To start the Agent daemon, enter the command:agent.py –d
Logging 1
All logging is performed by the Agent daemon. A single log file is used for all requests going out. Error messages are logged to the file in ../log/agent.log. By default, the logging is minimal. This is recommended for production usage. If there is a problem, verbose logging can be enabled by adding the -v flag on the command when the Agent daemon is started.
When enabling verbose logging, it is recommended to first shutdown the daemon and then start the daemon with verbose logging. To enable verbose logging, enter the following commands: • agent.py -s
• agent.py -d –v
If a request is made without using the agent daemon, the local option can be used. The agent daemon is not used or started when this option is used and store-forward is disabled. The following is a sample of using this option with verbose logging on.
agent.py -v -l http://localhost:9080/services/adapter
102 VERSION 2.4 REV A01 300-011-526
RUNNING THE URL AGENT
Running the URL Agent 1
The URL Agent execution parameters are as follows:
Usage:
agent.py [options] url1 [alternate-urls ...]
Options:
-h, --help Shows this help message and exits. -a key=value Specifies an attribute in key=value format. -x XML_FILE, --xml-file=XML_FILE
Specifies the XML File that contains data to POST to the url.
-f ATTRS_FILE, --attrs-file=ATTRS_FILESpecifies the file that contains a list of key=value@$ attributes.
-e, --environment-variablesEach environment variable is taken as a key/value pair to pass as data.
-u USERNAME, --username=USERNAMEUsername for HTTP Basic Authentication.
-p PASSWORD, --password=PASSWORDPassword for HTTP Basic Authentication.
-r, --resubmit Resubmit all items from the dead queue back to the store (not available with the -l option).
-c, --clear Clears all items in the dead queue. (Not available with the -l option).
-v, --verbose Enables verbose logging for the agent daemon. -l, --local Do not attempt to use the agent daemon. The log file is
not created and store-forward is disabled. -d, --daemon Starts the agent daemon in the foreground. This
command does not return. -s, --shutdownShuts down the background agent daemon. Exits
immediately after shutdown.
Example Commands
The following are example commands for using the URL Agent:• To perform an HTTP GET to the URL, use the following command:
agent.py http://localhost:9080/services/adapter
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 103
URL Agent Filtering
• To perform an HTTP GET to the adapter in a fail-over environment, enter the command with two URLs:— If the first URL is not reachable, the second is tried. — If none are reachable, the store-forward mechanism is engaged. Only
one URL is notified.agent.py http://host1:9080/services/adapter http://host2:9080/services/adapter
• To perform an HTTP POST to the URL specified with an XML payload that has the key/value pair specified, enter the following command. The XML schema is the format understood by the adapters.agent.py -a key=value http://localhost:9080/services/adapter
The XML Format used by the adapters will look like this:
<?xml version="1.0" encoding="UTF-8"?><data> <string-field name="key">value</string-field></data>
• To perform an HTTP POST to the URL specified with an XML payload with the key/value pairs retrieved from a text file, enter the following command. The XML schema is the format understood by the adapters. The text file lines must be terminated in @$ to denote the end of a line (they can span multiple lines).agent.py -f /path/to/file http://localhost:9080/services/adapter
• To perform an HTTP POST to the URL specified with an XML payload using the file specified, enter the following command with the –x option: agent.py -x /path/to/file http://localhost:9080/services/adapter
URL Agent Filtering 1
Sometimes it is beneficial or necessary to filter out changes coming out of an endpoint application before they get to the workflow. By filtering early, it reduces the load on the Adapter system. Also, some things like the request type can only be determined at the endpoints. Often the endpoint can provide access to previous values of data as well as the current. This allows status changes to be detected and can allow a request type to be sent for the record.
The Adapter supports URL Agent filtering. The URL Agent filter identifies the changes that need to be performed before reaching the endpoint application. The filter is essentially a wrapper around the URL agent that provides the filtering mechanism.
104 VERSION 2.4 REV A01 300-011-526
URL Agent Filtering
Using a filter script allows you to define configuration settings like the URL to use, basic auth parameters and logging options right within the script. This means that the command line call to the script will be very simple. This also makes it easier to run tests.
Running the Filter Script
An example URL Agent filter script (agent-filter.py) is installed with the URL Agent. The agent-filter.py file can be copied and customized for your solution. The script contains examples of options that can be changed. Modifying the filter requires minimal coding and some knowledge of Python.
To run the script, enter the following command:c:\install_root\adapters-2.2\agent\agent-filter.py
On Windows systems, you may need to use the command from an endpoint application. For example:c:\Python26\python c:\IonixITO\adapters-2.2\agent\agent-filter.py
Filter Parameters
All parameters for the URL Agent function (i.e.,. -v, -l, -s) can be used in the URL Agent filter. Attributes are included in the script to perform the specific filtering. The attributes available to the filter script are defined by the -a, -f or -e parameters to the script.
The following parameters can be added to the Notification or Acquisition-Event services to influence how this transaction is placed in the queue. Each of these can be added using the -a parameter when calling the Agent. These must be set using the string-field extended field type.
Example Filter Script
Figure 7-1 identifies the example URL Agent Filter.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 105
URL Agent Filtering
Figure 7-1 Example URL Agent Filter Script (page 1 of 3)
#!/usr/bin/env python## Example Usage: # agent-filter.py -a REMOVE_ME=abc -a Status=InProgress -a OldStatus=Updated -a MUST_HAVE=true -a SEND=true -a Partner=abc -a ID=123
from multiprocessing import freeze_supportimport agent
class FilteredAgent(agent.FilteredAgentMixin):# Pre-configured URLs to send the requests to. # This can be comma separated in the brackets urls = ['http://localhost:9080/services/notification/remedy/%s/%s']
def init(self):### Examples of setting URL Agent options (Overrides)
# Override Basic Authentication username and password. # Uncomment these to enable#self.options.username = 'user'#self.options.password = 'pass'
# Override verbose loggingself.options.verbose = True
# Override local/background agent. True means local, # False means background and uses store-forwardself.options.local = True
# If no code is in this method you need this line#pass
def filter_attributes(self, attributes):"""should_filter_out(self)
This method call is used to filter out calls to the agent. If thismethod returns True, then the call will not be sent on. This usefulto filter out calls that do not need to be processed even though theagent is fired."""
106 VERSION 2.4 REV A01 300-011-526
URL Agent Filtering
Figure 7-2 Example URL Agent Filter Script (page 2 of 3)
### Examples of modifying attributes
# Example: Removing an attribute from being sentif 'REMOVE_ME' in attributes:
del attributes['REMOVE_ME']# Example: Setting override object type attributes['iwave.overrides.objectType'] = 'CustomIncident'
# Example: Setting override service ID based on Partner field(static)if 'Partner' in attributes:if attributes['Partner'] == 'ABC':attributes['iwave.overrides.serviceId'] = 'RemedyABC'# Example: Setting override service ID based on Partner field#(dynamic) This will produce a serviceId of 'Remedy{P}' when the#'Partner' field is '{P}'else:attributes['iwave.overrides.serviceId'] = 'Remedy%s' % attributes['Partner']
# Example: Setting the request Type based on a status changeif attributes['Status'] != attributes['OldStatus']:if attributes['Status'] == 'InProgress':attributes['iwave.request.type'] = 'ChangeApproved'elif attributes['Status'] == 'Cancelled':attributes['iwave.request.type'] = 'ChangeRejected'else:attributes['iwave.request.type'] = 'Unknown'
# Example: Sets the create date based on the 'date' attribute# specified using the format specified. Formatting options are# available# here: http://docs.python.org/library/time.html#time.strftimeself.create_date_from_attr('date', "%Y-%m-%d %H:%M:%S")
# Example: Sets the create date from the current time on this# system. The time is always sent as UTC.#self.create_date_from_now()
### Logging
# This piece of code will print out each attribute to the log fileself.agent.log_debug('Agent Filter Called with Attributes: %s' %attributes)
# Logging can also be done to info using:#self.agent.log_info('Some informational message')
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 107
URL Agent Filtering
Figure 7-3 Example URL Agent Filter Script (page 3 of 3)
### Replacing URL placeholders
# This replaces any %s placeholders in the URLs with the values# specifiedself.replace_url_placeholders(('incident', attributes["ID"]))
### Examples of filtering out calls### Returning True indicates not to send the call to the adapter### Returning False indicates to send the call to the adapter
# Example: Filters out everything that does not have theattribute "MUST_HAVE"if 'MUST_HAVE' not in attributes:self.agent.log_debug('MUST_HAVE attribute not present.Filtering out')return True
# Example: Filters out anything that does not have the "SEND"attribute # or it is not "true"if 'SEND' not in attributes or attributes['SEND'] != 'true':self.agent.log_debug('SEND attribute not present. Filteringout')return True
# Example: Filters out anything that does not have a change between the# two attributes 'Status' and 'OldStatus'. if attributes['Status'] == attributes['OldStatus']:self.agent.log_debug('Status not changed. Filtering out')return Truereturn False
if __name__ == '__main__':freeze_support()FilteredAgent().run()
108 VERSION 2.4 REV A01 300-011-526
8Chapter
EMC Ionix ITOI Adapter Configuration 1Topics covered in this chapter:• Creating Additional Domain Credentials• Enable SAM Device Maintenance• Server Tool Notification• Configuring SAM to call the URL Agent
Creating Additional Domain Credentials 1
In order for the adapter to access the Ionix ITOI domains, adapter user accounts and corresponding passwords must be created on the domains.
During Adapter installation, the user is prompted to identify the domain user IDs and passwords for the Adapter. The installer allows you to configure credentials for a maximum of five domains.
After installation, the account information is stored in the file ionix-credentials.properties file located in the following directory:
<install_root>/conf
If more than five domains need to be configured, the ionix-credentials.properties file must be updated with the additional information. The PropertiesEditor tool can also be used to generate encrypted entries.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 109
ENABLE SAM DEVICE MAINTENANCE
Figure 8-1 Example ionix-credentials.properties file
To add additional domain credentials:1. Access the conf directory:
<install_root>/conf
2. Using a text editor, open the ionix-credentials.properties file.3. For each domain, enter the username and password that is allowed to access
the domain. Enter each line in the following format:<domain_name>=<username>,<password>
4. For production environment, use the PropertiesEditor to generate encrypted entries. An example encrypted line is as below:
INCHARGE-AM-PM = ENC;901CD57A96166502EC7867D6AE785C7B
5. Save the file.
Enable SAM Device Maintenance 8
If you are using this adapter to schedule device maintenance (see the Adapter event create operation), you must first enable the SAM maintenance function.
To enable SAM device maintenance: 1. Start the MBIM domain server. 2. In SAM, define the MBIM domain:
a. Open the Global Manager Administration Console, with the focus set to SAM.
b. Navigate to ICS Configuration > IC Domain Configuration > Domains. c. Ensure that the BIM domain is defined. If it is not, create a new domain for
BIM of type INCHARGE-SAM-MBIM-SUITE. 3. In the Topology Browser Console, right-click the instance of the SAM server
that is the topology source for MBIM and then click Enable Maintenance.
110 VERSION 2.4 REV A01 300-011-526
SERVER TOOL NOTIFICATION
Server Tool Notification 8
If you need to use SAM tools and EMC notification agent to trigger alert (event) acquisition, complete the following steps:
1. Access the EMC Ionix ITOI Adapter installation directory:<install_root>/adapters-2.4/endpoints/EMC/ionix-itoi
2. Using a text editor, view the contents of the itoi_adapter_sample.xml file.
3. From the SAM home directory, create an action rule file based on the itoi_adapter_sample.xml file. Save the file in the following directory:SAM-home/local/conf/ics
4. From the EMC/ionix-itoi directory, use a text editor to view the contents of the agent_sample.cmd file.
5. Based on the agent_sample.cmd file, create a script in the following SAM home directory:SAM-home/local/actions/server.
6. This script calls the URL agent with a line as below: <path>/agent.py http://<hostname>:8080/services/notification/ionix-itoi/event/<domainName>/%SM_OBJ_CREATIONCLASSNAME%::%SM_OBJ_NAME%
where:— <hostname> = the host name on which this adapter is installed. — <domainName> = the name of the domain from which the alerts will
be sent such as INCHARGE-SA. 7. Replace with user parameters and run command:
sm_config -s INCHARGE-SA import --force itoi_adapter_sample.xml
8. Re-login from the console.
Configuring SAM to call the URL Agent 8
For the EMC Ionix ITOI Adapter, in order for SAM to send a notification to the Notification Service, you must make SAM call the URL Agent.
To make SAM call the URL Agent:1. Select an entry in the SAM Notification Log Console and right click. 2. Select the NotifyAdapter action.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 111
CONFIGURING SAM TO CALL THE URL AGENT
112 VERSION 2.4 REV A01 300-011-526
9Chapter
Ionix IT Orchestrator Configuration 1Topics covered in this chapter:• Using the ITIL Adapter Plugin• Adapter API
Using the ITIL Adapter Plugin 1
The ITIL Adapters plugin for Orchestrator enables the ITIL Adapters to be easily used from EMC Ionix IT Orchestrator and leverages the Adapter API.
Associated Files
The following files are utilized by the Adapters plugin:• com.iwave.ext.adapters_x.x.zip – This is the core of the Adapters plugin for
Orchestrator. This plugin provides the ‘TransactionProcessor’ for acquisition and the Tasks for operation services. It also contains the full Adapter API jar files so that they can be used within workflows.
• com.iwave.ext.adapters.httpdispatcher_x.x.zip - This archive contains the AdaptersDispatcher.war. This needs to be loaded with the container and provides an endpoint that communicates with the adapters push mechanism. Extract this zip to the root of the container and it should be unpacked in the correct directory.
• com.iwave.ext.adapters.examples_x.x.zip – (Optional) This is an Orchestrator project that should be imported into Studio. It contains some tests and examples on how to use the push mechanism. This project is not required to use this plugin but is helpful as a starting point and example.
Installation and Configuration
HTTP Dispatcher (com.iwave.ext.adapters.httpdispatcher_2.3.1)
This component is a web application that provides a Web API used by the Adapter to push to the Ionix IT Orchestrator. This is required for the
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 113
USING THE ITIL ADAPTER PLUGIN
Acquisition Push feature. The web application is packaged as a single file called AdaptersDispatcher.war.
To install this component: 1. Copy the AdaptersDispatcher.war file to the conf/webapps/
directory of the container. 2. Extract the zip file to the root container directory and it will be placed in the
correct location.3. If you do not wish to use a standalone container install, there is a container
install bundled with studio. This container install is located in directory plugins/com.enigmatec.ems.platform_4.0.0.
4. Ensure that a JAAS login module is set up for the container. The default container install sets up JAAS to use conf/JaasAuth-windows.conf. This enables Windows based authentication, which will always succeed if the user is logged in.
Adapters Plugin (com.iwave.ext.adapters_2.3.1)
The com.iwave.ext.adapters plugin needs to be installed in both Studio and the container. This is installed like any other Ionix IT Orchestrator plugin. A new version of this plugin will be required for a new release of the adapters as it contains the API for a specific adapters version.
To install this plugin:1. Extract the com.iwave.ext.adapters_2.3.1.zip to the base studio
directory. This will install the plugin into the plugins directory of studio. If a previous version of the plugin exists, remove it by removing the plugins\com.iwave.ext.adapters* from the studio installation.
2. A sample container startup script called adapters-container.bat is provided with the examples project. After extracting the examples project, you can find this file in the resources directory. The following jar files from the plugin need to be on the classpath for the container. The adapters-container.bat script takes care of this for you. — plugins\com.iwave.ext.adapters_2.3.1\adapters.jar
— plugins\com.iwave.ext.adapters_2.3.1\lib\api-2.3.jar
— plugins\com.iwave.ext.adapters_2.3.1\lib\ejb3-persistence-1.0.2.GA.jar
adapters-container.bat:
set ORCH_HOME=c:\iWaveSoftware\orchestrator-studio\plugins\com.enigmatec.ems.platform_4.0.0
set CONTAINER_CLASSPATH=%ORCH_HOME%\..\com.iwave.ext.adapters_2.3.1\adapters.jar;%CONTAINER_CLASSPATH%
114 VERSION 2.4 REV A01 300-011-526
USING THE ITIL ADAPTER PLUGIN
set CONTAINER_CLASSPATH=%ORCH_HOME%\..\com.iwave.ext.adapters_2.3.1\lib\api-2.3.jar;%CONTAINER_CLASSPATH%
set CONTAINER_CLASSPATH=%ORCH_HOME%\..\com.iwave.ext.adapters_2.3.1\lib\ejb3-persistence-1.0.2.GA.jar;%CONTAINER_CLASSPATH%
%ORCH_HOME%\bin\container -r c:\iWaveSoftware\orchestrator-repository-adapters
Adapters Push Configuration
The com.iwave.ext.adapters.examples project contains samples of implementing a push handler. The sample sets up two push clients that can be accessed via the URLs https://localhost:8444/TransactionDispatcher/ClientA and https://localhost:8444/TransactionDispatcher/ClientB. These need to be specified in the adapters configuration.• Adapters - To enable the push mechanism on the adapters, the
acquisition-push-spring.xml file needs to be placed in the conf directory of the adapters. This should contain the content below. Note that multiple QueueProcessors can be included to perform pushes from multiple different objectType/serviceIds.
acquisition-push-spring.xml
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean>
<property name="threads" value="3"/><property name="objectType" value="*"/><property name="serviceId" value="*"/><property name="pusher"><bean>
<property name="url" value="https://prime:8444/AdaptersDispatcher/ClientA"/>
<property name="username" value="admin"/><property name="password" value="admin"/></bean>
</property> </bean>
</beans>
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 115
USING THE ITIL ADAPTER PLUGIN
Using the Plugin
This section describes how to use the adapters plugin.
Acquisition
The adapters plugin provides a special ME type to handle TransactionRecords pushed from the adapters. A service can be created to implement this ME type by creating a new Service and adding the super type TransactionProcessor.
Figure 9-1 Creating a New Service
The TransactionProcessor type requires an effector to be implemented named processTransaction. This effector provides a TransactionRecord as a parameter that has to be processed by the workflow. When the workflow successfully completes, the record will be marked as complete in the adapters.
The effector has two return fields:• transactionResponse - This field indicates if the processing of the record was
successful or not. There are three possible values for this return:
116 VERSION 2.4 REV A01 300-011-526
USING THE ITIL ADAPTER PLUGIN
— com.iwave.ext.adapters.acquisition.TransactionResponse.OK - Indicates that the processing was successful. This responds to the adapters with a success code and the transaction will be completed (unless it was manually changed through the workflow.
— com.iwave.ext.adapters.acquisition.TransactionResponse.ERROR_RETRY - Indicates that there was an error processing the record. The adapters will retry this again after the usual interval. This is the default handling for errors.
— com.iwave.ext.adapters.acquisition.TransactionResponse.ERROR_NO_RETRY - Indicates that there was an error processing the record that will always fail and it should not be retried again.
• errorMessage - If an error occurred, this contains the text that is passed to the Adapters. This is useful for logging the error back into the adapters logs and to Monitoring Server.
Operations
The adapters plugin provides Services for each of the common services available in the adapters API. Theses services are available from the palette under the com.iwave.ext.adapters heading. They can be dropped onto any workflow.
Figure 9-2 Workflow
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 117
USING THE ITIL ADAPTER PLUGIN
Configuration of the adapter services is done from the service organization. You need to specify the following configuration parameters to connect to the adapters web services. • wsdl - URL to the WSDL for the web service. This may be a URL to a resource or
the local file system and does not necessarily need to be the remote endpoint.• endpointUrl - The URL to the endpoint to use for the web service. If this is null
then the endpoint URL contained in the WSDL file is used. • username - The HTTP Basic Authentication username to use for
authentication to the adapters. • password - The HTTP Basic Authentication password to use for authentication
to the adapters.Figure 9-3 Client Service Organization
118 VERSION 2.4 REV A01 300-011-526
ADAPTER API
Adapter API 9
The Adapter API is a subset of the Adapter Framework that contains the common object model and services that are used for all of the ITIL adapters. All Adapter services are exposed as Web Services. This API provides a mechanism for integrating Java-based tools with the adapters. The functionality of this API is exactly the same as what can be used from the Web Services.
Note: This API cannot be used if you need to integrate a non Java-basedsystem with the adapters.
The Adapter API uses JAX-WS to connect to the API using the standard Web Services.
Software Requirements
When using this ITIL Adapter API with Ionix IT Orchestrator, the following software is required:• Java version 6 • Adapters version 2.3 (or later)
API Distribution
The API distribution zip file (i.e., api-2.4.zip) contains the following files and directories:• javadocs - JavaDoc documentation for the API. This should be used as a full
reference for the API operations. • lib/api-2.3.jar - This is the main API archive. • lib/ejb3-persistence-1.0.2.GA.jar - The API depends on the JPA
('javax.persistence') APIs. This is part of JEE but is provided as a standalone jar file.
• lib/log4j-1.2.14.jar - The API does limited logging in certain situations. The log4j logger jar file is required for this.
Package Descriptions
The following are the descriptions of the packages included in the API:• com.iwave.acquisition - Object model and services for the adapter
acquisition services. • com.iwave.adapters - Adapters Client API entry point. • com.iwave.batch - Object model and services for the adapter batch services.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 119
ADAPTER API
• com.iwave.ims - Object model and services for the Monitoring Server services.
• com.iwave.itom - The IT Object Model and supporting helper classes. • com.iwave.operations - The Adapters operational services (IT endpoint
operations). • com.iwave.util - Various internal utilities required by the API.
Key Classes
This following are the descriptions of the key classes in the API. For complete information on the API and methods available, consult the Javadocs.• com.iwave.adapters.AdapterClient - This is a utility class for getting client
proxies to the acquisition, Monitoring Server, batch and operation services. • com.iwave.itom.support.XmlSerialization - This is a utility for serializing
and deserializing adapter object models to/from XML. • com.iwave.itom.extended.ExtendedFieldFactory - This is a utility class for
creating extended fields from k-v Map constructs or getting Maps from extended fields. This is the easiest way of working with extended fields from Java.
Service Classes
The following are the Service Classes included in the API:• Acquisition Services:
— IAcquisitionService - Acquisition Services for interacting with the adapters queue.
— IAcquisitionManagementService - Management information about the adapter queue.
• Batch Services:— IBatchService - Batch services.
• iWave Monitoring Server Services:— IIWaveEventService - Monitoring Server Service for publishing events.
• IT Operational Services:— IITObjectService - ITObject Operations service. — IITObjectAttachmentService - ITObject Operations service. This also
supports attachments and must be used for operations for adapters that support attachments.
— IIncidentService - Incident Operations service. — IIncidentAttachmentService - Incident Operations service. This also
supports attachments and must be used for operations for adapters that support attachments.
— IChangeService - Change Operations service.
120 VERSION 2.4 REV A01 300-011-526
ADAPTER API
— IChangeAttachmentService - Change Operations service. This also supports attachments and must be used for operations for adapters that support attachments.
— IProblemService - Problem Operations service. — IProblemAttachmentService - Problem Operations service. This also
supports attachments and must be used for operations for adapters that support attachments.
— IConfigurationService - Configuration Item Operations service.— IDeviceService - Device Operations service. — IDomainDeviceService - Device Operations service that accepts the
domain/network as an extra parameter to each call. This is required for adapters such as ITOI that has this capability.
— IEventService - Event Operations service. — IEventServiceDestination - Event Operations Service that requires the
destination/domain to be specified on each call. This is required for adapters such as SCOM that has this capability.
SSL Certificates
If the Adapter service is using a self signed certificate, JAX-WS may fail to establish an SSL connection. There are two options for dealing with this potential failure:• Install the SSL Certificate from the adapters into the trust keystore for the Java
application using the API. • Disable trust verification for SSL. This can be dangerous on the public internet
allowing for man-in-the-middle attacks but is generally not a problem where customers have a secure pipe to begin with. This is almost always the case for our customers. The 'com.iwave.ext.adapters.examples' orchestrator project contains an example of installing a trust-all security manager.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 121
ADAPTER API
Java Code Examples
This section includes Java code examples of the Acquisition Services and Incident Services. For complete examples on how to use this API from Ionix IT Orchestrator, see the 'com.iwave.ext.adapters.examples' orchestrator project that is available with the API.
Figure 9-4 Acquisition Example
// Example using the acquisition services IAcquisitionService acquisition = AdapterClient.get(IAcquisitionService.class, "https://hostname:9443/services/AcquisitionService?wsdl", "iwave", "password"); // Example creating a service with no authentication: //IAcquisitionService acquisition = AdapterClient.newClient(IAcquisitionService.class,
// "https://hostname:9443/services/AcquisitionService?wsdl"); // Example creating a service with an alternate endpoint URL: //IAcquisitionService acquisition = AdapterClient.newClient(IAcquisitionService.class,
// "https://hostname:9443/services/AcquisitionService?wsdl", // "https://alternatehost:9443/services/AcquisitionService", // "iwave", "password"); // Calling count System.out.println("Adapter queue count: " + acquisition.count());
122 VERSION 2.4 REV A01 300-011-526
ADAPTER API
Figure 9-5 Incident Operations Example
// Example using the incident service. After this service is created, // this proxy should be cached. Creating this every time is expensive. IIncidentAttachmentService inc = AdapterClient.get(IIncidentAttachmentService.class, "https://hostname:9443/services/ionix-sm/IncidentService?wsdl", "iwave", "password"); // Retrieving an incident Incident incident = inc.get("2"); System.out.println("Incident Found: " + incident.getIdentifier()); System.out.println(" Desc: " + incident.getDescription()); // Print the entire incident content as XML System.out.println(incident); // Example accessing extended fields. // This can be used to access a single field but it is not efficient System.out.println("Field 'MODE': " + incident.getExtendedField("MODE", StringField.class).getValue()); // This should be used for easiest access to bulk fields. // This creates a map for accessing fields by key/value pairs Map<String,Object> fields = ExtendedFieldFactory.fieldsToMap(incident.getExtendedFields()); System.out.println("Field 'MODE': " + fields.get("MODE"));
// Updating an Incident Incident updateIncident = new Incident(); // ID is required for updates updateIncident.setIdentifier("2"); updateIncident.setDescription("Updated the description"); // Creating extended fields on update (Single mode)
//updateIncident.addExtendedField("MODE", "REVIEW"); // Creating many extended fields. (This will probably change to Map<String,Object>) Map<Object,Object> updateFields = new HashMap<Object,Object>(); updateFields.put("MODE", "REVIEW"); updateIncident.addExtendedFields(updateFields); // or
//updateIncident.setExtendedFields(ExtendedFieldFactory.newExtendedFields(updateFields)); // Perform the update System.out.println(updateIncident);
System.out.println(inc.update(updateIncident));
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 123
ADAPTER API
124 VERSION 2.4 REV A01 300-011-526
10Chapter
Managing the Adapter 10In order to manage the EMC Adapters, the Java Console application may be installed on your workstation. The Java Console graphical user interface is a management tool that complies to the Java Management Extensions (JMX) specification. Java Console uses the Java Virtual Machine (Java VM) to provide information about the performance and resource consumption of the Adapters installed in your network.
This application allows you to perform the following functions:• list the names of the Adapters that are licensed and loaded• provide the status of the endpoint applications• restart all Adapters• provide a status of items in the Acquisition Queue
Note: For information on monitoring Events that are generated on the EMCAdapter and Ionix IT Orchestrator, refer to the “EMC Monitoring ServerInstallation and Configuration Guide”.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 125
PREREQUISITES
Figure 10-1 Jconsole – List Adapters
Prerequisites 10
In order to use the Java console to manage the Adapter services, the following tasks must be completed:• The Adapter software must be installed on your computer.• The following Java Development Kit (JDK) package must be installed on your
computer:Java JDK1.6.0
Connecting to the Adapter Java Process 10
There are two ways you can connect to the Adapter Java process: • Connect to the local JMX instance. By default, JMX is not available for remote
connection. Java allows you to connect to a Java process running as the same user using the jconsole.
• JMX can be enabled in the process itself for remote access. Remote access can make use of SSL and authentication. setEnv – Enable JMX monitoring in
126 VERSION 2.4 REV A01 300-011-526
STARTING THE JAVA CONSOLE
setEnv20 identifies the Java properties that can be set to enable JMX without any security or authentication. These properties are included in the setEnv.bat/.sh file, which is located in the install_root\adapters-2.4\bin directory. The JMX monitoring properties are disabled by default. To enable JMX monitoring, delete the rem comment from the setEnv file. PORT can be replaced with any port name that is desired. — -Dcom.sun.management.jmxremote.port=PORT
-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
Figure 10-2 setEnv – Enable JMX monitoring in setEnv
Starting the Java Console 10
The Java Console is started by the jconsole executable. This executable can be found in the JDK_HOME/bin directory, where JDK_HOME is the directory in which the JDK software is installed. If this directory is in your system path, you can start the Java Console by typing jconsole in a command (shell) prompt. Otherwise, you have to type the full path to the executable file.
Management Beans 10
The following Adapter management beans can be used through JMX to manage the Adapter:• com.iwave:name=Adapters • com.iwave:name=AcquisitionQueue • com.iwave:name=FrameworkAdmin
com.iwave:name=Adapters
The Adapters Management bean allows the user to see which Adapters are loaded and the status of the endpoint applications.
Methods
The following Methods are supported for the Adapter Management bean:• listAdapterNames() - Gives a list of the names of the adapters that are
licensed and loaded.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 127
MANAGEMENT BEANS
• getEndpointStatus(endpointName) - Gives the status of an adapter. The supplied parameter endpointName should be one of the values returned from listAdapterNames(). Possible values for endpoint status are: — Unknown - Indicates that this adapter does not support the status
check. Currently the only adapters that support this operation are BMC Remedy and CA-USD.
— Available - Indicates that the endpoint application is running and responds to a simple command.
• NotAvailable - Indicates that the endpoint application cannot be reached or fails to respond to a simple command.
com.iwave:name=AcquisitionQueue
The Acquisition Management bean allows the user to see the status of the Acquisition Queue without directly querying the database.
Methods
The following Methods are supported for the Acquisition Queue bean:• countErrors(serviceId, objectType) - Gives a count of the items
on the queue in the Error state. This is the same as the acquisition service countErrors() method.
• countPoll(serviceId, objectType) - Gives a count of the items on the queue in the Poll state. This is the same as the acquisition service count() method.
• countBlocked(serviceId, objectType) - Gives a count of the items on the queue in the Blocked state.
• countTotal(serviceId, objectType) - Gives a count of all of the items on the queue regardless of state.
• queueWaitingTime() - Gets the queue waiting time for the top item on the persistence queue. The date of the first transaction is returned. This can give an idea of when the last transaction was processed and if the queue processor is stalled.
Each of the count methods take parameters of the serviceId and objectType. These must be valid serviceId and objectType or part of a word. % is a valid wildcard. If no objectType and serviceId are specified, the default will be to query all.
Note: The Acquisition Management Service is also exposed as a web service.The following is the WSDL for the Acquisition Management Service:
https://localhost:9443/services/AcquisitionManagementService?wsdl
128 VERSION 2.4 REV A01 300-011-526
MANAGEMENT BEANS
com.iwave:name=FrameworkAdmin
The Framework Administration bean allows administration tasks to be performed on the Adapters.
Methods
The following Methods are supported for the Adapter Management bean:• restart(password) - Restarts the adapters. All services are shutdown,
configuration files reloaded and the services restarted. A parameter of the admin password is required.
• framework.admin.password - This is the new setting in framework.properties that contains the admin password hash. The default value for this password is adminpw. If the JMX service will be enabled, this password should be changed from the default.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 129
MANAGEMENT BEANS
130 VERSION 2.4 REV A01 300-011-526
11Chapter
Maintenance and Troubleshooting 11This chapter covers the following topics pertaining to the maintenance and troubleshooting of the EMC Adapter software.• Logging• Error Types and Meanings• Re-Installing or Uninstalling the Windows Service• Starting and Stopping the Adapter• Uninstalling the Adapter Software - Windows
Logging 11
Logging is provided for both the Adapter Framework and the URL Agent. Before logs can be generated, logging must be turned on and the amount of details specified.
Log Location
Based on the operating system, the EMC Adapter stores logs in following directories:• For Windows: C:\install_root\adapters\log
• For UNIX: /opt/install_root/adapters/log
Turning on Adapter Logging (Windows)
To turn on Adapter Windows logging, you must edit the log4j.properties file.1. From Windows Explorer, navigate to the conf directory:
C:\install_root\Adapters\conf2. Right-click log4j.properties file and click Open on the pop-up menu. If
this is the first time you have opened the properties file, Windows displays the following dialog:
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 131
LOGGING
Figure 11-1 Windows Unknown File Type
3. Click Select the program from a list option and click OK.4. From the Open With List, select Notepad. Select Always use the selected
program to open this kind of file and click OK to open Notepad.5. In the log4jproperties file, find the Production Environment
Configuration section and the line: log4j.rootLogger=INFO,File,ErrorAppender
6. Replace the word INFO with DEBUG.7. Find the line: log4j.logger.com.iwave=INFO8. Replace the word INFO with DEBUG. The log4j.properties file should look
like the file identified in Figure 11-2.9. From the menu, select File > Save to save the changes.10. From the menu, select File > Exit to close the file.
132 VERSION 2.4 REV A01 300-011-526
LOGGING
Figure 11-2 log4j.properties File
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 133
ERROR TYPES AND MEANINGS
URL Agent Logging
When specifying logging configurations for the URL Agent, use the -v parameter with the agent.py command. This parameter specifies how much detail will be included in the log. When operating in a normal production environment, the log level will normally be set low to save processor time and disk space. • If the log level is too low, it may not provide enough information. • If an issue is suspected with URL Agent connection to the notification service,
increase the log level.
Error Types and Meanings 11
The URL Agent and EMC Adapter generate their own errors. Several types of errors can occur when several complex software applications interact. This complexity is expanded when considering that the applications may be communicating over vast distances (via the Internet) and that they are typically asynchronous.
The following types of errors that may occur when using the EMC Adapter:• Recoverable• Permanent• Global Errors
Recoverable Errors
Recoverable errors go away in time without involving any particular change to the EMC configuration or the endpoint application. For instance, if the EMC URL Agent attempts to send an event notification to the EMC Adapter and the connection is down, the Agent continues sending the notification until the connection is restored. In this case, there is an error message in the log, but no action needs to be performed to return the Adapter to service. The Adapter is returned to service automatically.
Permanent Errors
Permanent errors cannot be recovered automatically and require some form or corrective interaction. For example, if the EMC user for the endpoint application does not have a high enough privilege to open a new incident, the attempt fails. No matter how many times the EMC user attempts to open a new Incident, the action continues to fail until the user account is modified to allow the action.
134 VERSION 2.4 REV A01 300-011-526
ERROR TYPES AND MEANINGS
Global Errors
An error can thrown from either the Adapter, Ionix IT Orchestrator or Integration workflow. Some of these errors are results of errant configurations such as an incorrect workflow assumption, incorrect URL, or a bad SSL configuration. Other errors could result from an error in the software itself.
Adapter Errors
The table below indicates errors that can occur in the EMC Adapter. These errors can be generated by either the Acquisition or Operations Services.
URL Agent/Notification Service Errors
The table below indicates errors that can appear in the URL Agent logs.
Table 11-1 Adapter errors
Error Cause
AcquisitionException A problem occurred while trying to retrieve a transaction from the adapter.
ObjectNotFoundException Occurs when the object requested on a get, update, or remove operation is not found
UnsupportedOperationException The method used on the adapter is not supported by the adapter.
OperationsException Typically a recoverable error such as connectivity issues
NonRecoverableOperationsException
Permanent error condition.
Table 11-2 URL Agent / Notification Service Errors
Error Cause
HTTP-503: Service Unavailable Most likely either the Form name or Incident ID are invalid on the command line call to the URL Agent.
HTTP-50x: Internal Server Error An unexpected error occurred. Consult the log files.
HTTP-404: Not found An incorrect URL was entered or the host name is incorrect.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 135
RE-INSTALLING OR UNINSTALLING THE WINDOWS SERVICE
ReInstalling or Uninstalling the Windows Service 11
If the Windows Service needs to be re-installed or un-installed, complete the following steps:
Reinstalling the Windows Service
To re-install the Windows Service:
1. Access the bin directory:install_root/adapters-2.4/bin
2. Run the installation script.service.bat install
Uninstalling the Windows Service
To uninstall the Windows Service:
1. Access the bin directory:install_root/adapters-2.4/bin
2. Run the un-install script.service.bat uninstall
Starting and Stopping the Adapter 11
If the Windows Service has been uninstalled and the Adapter needs to be started, the startAdapters.bat file is included in the following directory:
install_root/adapters-2.4/bin/startAdapters.bat
This command starts the Adapter framework with a command window. To stop the Adapter framework, close the command window.
136 VERSION 2.4 REV A01 300-011-526
UNINSTALLING THE ADAPTER SOFTWARE - WINDOWS
Uninstalling the Adapter Software Windows 11
To uninstall the EMC Adapter software, complete the following tasks:1. From the Start menu, select the Uninstall Adapters option.2. The Uninstall EMC Adapters Introduction screen displays. From this screen,
click Uninstall.Figure 11-3 Uninstall Introduction
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 137
UNINSTALLING THE ADAPTER SOFTWARE - WINDOWS
3. The Uninstaller begins to remove features associated with the installed Adapter. It then uninstalls the EMC Adapter files, shortcut, LaunchAnywhere features, folders, and registry.
Figure 11-4 Uninstall In Progress
138 VERSION 2.4 REV A01 300-011-526
UNINSTALLING THE ADAPTER SOFTWARE - WINDOWS
4. The Uninstallation Complete screen displays. The files that were not installed may be displayed on the screen. These files must be removed manually. Click Done.
Figure 11-5 Uninstallation complete
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 139
UNINSTALLING THE ADAPTER SOFTWARE - WINDOWS
140 VERSION 2.4 REV A01 300-011-526
12Chapter
IT Object Model (ITOM) 1This chapter identifies the Event and Device mappings for the EMC Ionix ITOI Adapter.
Event Mappings 1
Ionix alert relationship attributes are mapped to and from a specific EMC data model extended complex field named "Relationships". It may contain extended string field(s) and/or extended complex field(s) that contain extended string field(s).
For removing some relationships from an Ionix alert, another extended complex field named "RemoveRelationships" is used for the update event parameter. To remove relationships, the exact relationship attribute name and the value(s) have to be provided. A relationship can be added or removed without affecting other relationships the relationship attribute may have. Removing relationships is always performed first before adding the relationships in the "Relationships" element, no matter where the element is added.
The numeric names are not significant for the operations.
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 141
EVENT MAPPINGS
Figure 12-1 RemoveRelationships
The adapter may acquire events from SAM with status field value OPEN, ACKNOWLEDGED, or CLOSED.• CLOSED indicates the event Active attribute value is false.• ACKNOWLEDGED means the event has Achnowledged attribute set to true.• OPEN covers all the other cases. This status value is provided just for
convenience. User should refer to other attributes, such as Active, EventState, to determine more accurate or detailed status information.
During Event Acquisition and get operation, the Event impacted devices are retrieved and added to an event extended field named "Impacts" (see Figure 12-2). This field is not mapped for any other operations.
Figure 12-2 Event Impacted Devices
<extended-fields><complex-field name="RemoveRelationships">
<complex-field name="CausedBy"><string-field name="0">ICS_Notification::NOTIFICATION-TestEvent-1</string-field></complex-field></complex-field><complex-field name="Relationships">
<string-field name="OccurredOn">Host::ORCHESTRATOR</string-field><complex-field name="CausedBy"><string-field name="0">ICS_Notification::NOTIFICATION-TestEvent-2</
string-field></complex-field>
<complex-field name="NotifiedBy"><string-field name="0">InChargeDomain::InChargeDomain_INCHARGE-
AM-PM</string-field><string-field name="1">InChargeDomain::InChargeDomain_INCHARGE-
SA</string-field></complex-field>
</complex-field></extended-fields>
<complex-field name="Impacts"><string-field name="0">
<_value>DeviceIdentifier1</_value></string-field><string-field name="1">
< _value>DeviceIdentifier2</_value></string-field>
</complex-field>
142 VERSION 2.4 REV A01 300-011-526
EVENT MAPPINGS
143
bel) Type Notes
lass:" +
e
n
Mapped in SAM to EMC direction with notification type and event Acknowledged value.
eCo
dAt
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
ITOM Event Mapping
Table 12-1 ITOM Event Mapping for EMC Ionix ITOI
Name Description Type Name (La
Base.Identifier The unique identifier for an Event xs:string CreationCName + ":Name
Base.Summary Summary of the Event xs:string EventNam
Base.Description Detailed description of the Event xs:string Descriptio
Type Event type xs:string EventType
Status The status of the event xs:string Noti type +ack state
Severity The severity of the event Severity
Impact The impact that this event has on the system xs:string Impact
Urgency The urgency of the event xs:string
Priority The priority of the event xs:string
RepeatCount A count of the number of duplicate events xs:integer Occurrencunt
LastRepeatDate Date of the last duplicated event xs:datetime LastNotifie
—sheet 1 of 7—
VERSION 2.4 REV A01 300-011-526
EVENT MAPPINGS
dAt
ged
bel) Type Notes
144
Owner Owner that is responsible for resolving this event xs:string Owner
CreateDate Date that this event was created xs:datetime FirstNotifie
ResolvedDate Date that this event was resolved xs:datetime
ResolvedBy User that resolved the event xs:string
LastModifiedBy User that made the last modification xs:string
LastModified Date of the last modification to this event xs:datetime LastChanAt
StatusLastModified Date that the status of this event was last modified
xs:datetime
LastModifiedByNonConnector
Date that this event was last modified by a non-connector
xs:datetime
MaintenanceModeLastModified
Date of the last modification to this event while in maintenance mode
xs:datetime
MonitorEvent Flag to indicate whether this is an event generated by a monitor
xs:boolean
ExternalEventIdentifier The unique identifier for this event in the external system
xs:string
ExternalIncidentIdentifier
The unique identifier for an incident associated with this event
xs:string
Escalation Indicates information about the escalation of this event
Table 12-1 ITOM Event Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 2 of 7—
EVENT MAPPINGS
145
e
layN
bel) Type Notes
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
Escalation.Escalated Unique identifier of the group associated with this event
xs:boolean
Escalation.Server Server that escalated this event xs:string
Escalation.EscalatedBy User who escalated this event xs:string
Group Group that encompasses the components associated with this event
Group.Identifier Unique identifier of the group associated with this event
xs:string
Group.Name Name of the group associated with this event xs:string
Group.Version Version number of the group associated with this event
xs:string
Class Class of object targeted by this event
Class.Identifier Unique identifier of the class xs:string
Class.Name Formal name of the class xs:string ClassNam
Class.DisplayName Console display name of the class xs:string ClassDispame
Class.Description Description of the class xs:string
Class.Container.Identifier
Unique identifier of the container where the class is defined
xs:string
Class.Container.Name Formal name of the container where the class is defined
xs:string
Table 12-1 ITOM Event Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 3 of 7—
VERSION 2.4 REV A01 300-011-526
EVENT MAPPINGS
ispl
ame
bel) Type Notes
146
Class.Container.DisplayName
Console display name of the container where the class is defined
xs:string
Class.Container.Description
Description of the container where the class is defined
xs:string
Object Object targeted by this event
Object.Identifier Unique identifier of the target object xs:string
Object.ComputerName Name of the computer where this object is located
xs:string
Object.DisplayName Display name of the target object xs:string InstanceDayName
Object.Name Formal name of the target object xs:string InstanceN
Object.State State of the target object xs:string
Object.InMaintenanceMode
Flag that indicates whether the object is in maintenance mode
xs:boolean
Metric Metric that was violated to trigger the event
Metric.Category Name of the metric category that was violated xs:string
Metric.Subcategory Name of the metric subcategory that was violated
xs:string
Metric.KeyValues Array of key values associated with the metric xs:string
Source Notification source that generated the event
Table 12-1 ITOM Event Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 4 of 7—
EVENT MAPPINGS
147
mai
bel) Type Notes
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
Source.Identifier Unique identifier of the source that generated this event
xs:string
Source.Type Type of source that generated this event xs:string
Source.DisplayName Console display name of the source that generated this event
xs:string
Source.Name Formal name of the source that generated this event
xs:string SourceDonName
Source.Description Description of the source that generated this event
xs:string
Source.Domain Domain of the computer that generated this event
xs:string
Source.ComputerName Fully qualified name of the computer that originated this event
xs:string
Source.Container.Identifier
Unique identifier of the container that defines the source that originated this event
xs:string
Source.Container.DisplayName
Console display name of the container that defines the source that generated this event
xs:string
Source.Container.Name Formal name of the container that defines the source that generated this event
xs:string
Source.Container.Description
Description of the container that defines the source that generated this event
xs:string
Knowledge Knowledge entry associated with this event
Table 12-1 ITOM Event Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 5 of 7—
VERSION 2.4 REV A01 300-011-526
EVENT MAPPINGS
Nu
Typ
bel) Type Notes
148
Knowledge.Type Type of knowledge entry xs:string
Knowledge.Summary Brief description of the knowledge entry xs:string
Knowledge.Description Description of the knowledge entry xs:string
Knowledge.DisplayName
Console display name of the knowledge entry xs:string
Knowledge.Name Formal name of the knowledge entry xs:string
Knowledge.Content Knowledge entry information in a common format. Format to be used is TBD
xs:string
Knowledge.Identifier Unique identifier of the knowledge entry xs:string
Knowledge.LanguageCode
Language used in the knowledge information xs:string
Knowledge.LastModified Date the knowledge entry was last updated xs:datetime
Knowledge.Status Status of the knowledge entry xs:string
Knowledge.dateCreated Date the knowledge entry was created xs:datetime
Log Logging Activity
Log.Identifier Log unique identifier for each instance xs:string AuditTrail.mber
Log.Type Type of Log activity xs:string AuditTrail.e
Table 12-1 ITOM Event Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 6 of 7—
EVENT MAPPINGS
149
Des
Use
Tim
bel) Type Notes
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
Log.Summary Log Summary xs:string AuditTrail.cription
Log.Source Log Source xs:string
Log.Description Log Description xs:string
Log.Submitter User who submtted the log entry xs:string AuditTrail.rid
Log.SubmitDate The date and time the log entry was submitted xs:datetime AuditTrail.e
Table 12-1 ITOM Event Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 7 of 7—
DEVICE MAPPINGS
Device Mappings 12
The device relationships are mappped with EMC Device data model "relationships" field. The following Ionix device Class-A::Instance-A with relationships is mapped to an EMC Device object identified in Figure 12-3.
MemberOf : Class-B::Instance-BNotifications : Class-C::Instance-C1, Class-C::Instance-C2
The adapter may acquire devices from SAM with status field value CREATE, DELETED, UPDATE, or RELATION_UPDATE. This status reflects the type of the transaction, but does not necessarily reflect the status of the device itself. To check more details on the device status, refer to other extended fields.
Figure 12-3 EMC Device Object
<identifier>Class-A::Instance-A</identifier>... ...<relationships><relationship>
<identifier>MemberOf</identifier><targets>
<target><identifier>Class-B::Instance-B</identifier>
</target></targets>
</relationship><relationship>
<identifier>Notifications</identifier><targets>
<target><identifier>Class-C::Instance-C1</identifier>
</target><target>
<identifier>Class-C::Instance-C2</identifier></target>
</targets></relationship>
</relationships>
150 VERSION 2.4 REV A01 300-011-526
DEVICE MAPPINGS
151
bel) Type Notes
Normally it's ClassName::Name
me
lass Used for create only
n.Ty
n
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
ITOM Device Mapping
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
Identifier Identifier of this configuration item in the application. This may be a complex key if the class is required to look up the CI
xs:string
Summary Short description of the object xs:string DisplayNa
Name Name of this item xs:string Name
ClassName Name of the class this CI belongs to xs:string CreationCName
ClassNamespace Namespace of the classname (optional) xs:string
DatasetId Dataset Identifier xs:string
Status Status xs:string Notificatiope
CreateDate Date the CI was reported or created xs:datetime
LastModified Date the CI was updated xs:datetime
LastModifiedBy The person who last updated the CI xs:string
Submitter The person to created the CI xs:string
Description Description xs:string Descriptio
—sheet 1 of 8—
VERSION 2.4 REV A01 300-011-526
DEVICE MAPPINGS
bel) Type Notes
152
SerialNumber Serial Number of the CI xs:string
Category Category of the item xs:string
Type Type of the item xs:string
Item The item type xs:string
Model Model of this item xs:string
Manufacturer Manufacturer of this item xs:string
Version Version of this item xs:string
Assignee User who this item is assigned to xs:string
HostName The hostname of this CI if applicable xs:string
networkName Name of the network (Often the logical name in the endpoint)
managementIP Management IP Address
fqdn Fully Qualified Domain Name
osDescription Description of the Device OS
osVersion Version of the Device OS
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 2 of 8—
DEVICE MAPPINGS
153
mun IP domain property
mun IP domain property
bel) Type Notes
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
snmpCredentials SNMP Credentials Sub-Object SnmpCredentials(1)
.name Name of the Credential object ReadComity
.communityRO SNMP Read-Only Password ReadComity
.communityRW SNMP Read-Write Password
.snmpVersion SNMP Version
.snmpPort SNMP Port
interfaces List of network interfaces DeviceInterface(0..n)
.primaryIP Primary IP Address of this interface
.subnetMask Subnet of the the primary IP address
.name Logical name of this interface
compliance Compliance Information of this CI (Optional) Compliance (1)
Status Status of the compliance of this device xs:string
PolicyIdentifier Identifier of the policy that is in compliance or not xs:string
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 3 of 8—
VERSION 2.4 REV A01 300-011-526
DEVICE MAPPINGS
Normally it's ClassName::Name
bel) Type Notes
154
PolicyName Name of the policy that is in compliance or not xs:string
relationships Related Configuration Items CIRelationship (0..n)
Identifier Identifier of the relationship (optional) xs:string
Name Name of the relationship xs:string
ClassName Class name of this relationship (or type) xs:string
ClassNamespace Optional namespace for this relationship xs:string
SourceRole Parent's role in the relationship (ie. Source) xs:string
relationship.targets Configuration Items associated with this relationship
ObjectReference (0..n)
target.Identifier CI Identifier xs:string
target.Name CI Name xs:string
target.Type CI Type xs:string
target.role Role of the target relationship
Identifier Identifier of this configuration item in the application. This may be a complex key if the class is required to look up the CI
xs:string
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 4 of 8—
DEVICE MAPPINGS
155
me
lass Used for create only
n.Ty
n
bel) Type Notes
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
Summary Short description of the object xs:string DisplayNa
Name Name of this item xs:string Name
ClassName Name of the class this CI belongs to xs:string CreationCName
ClassNamespace Namespace of the classname (optional) xs:string
DatasetId Dataset Identifier xs:string
Status Status xs:string Notificatiope
CreateDate Date the CI was reported or created xs:datetime
LastModified Date the CI was updated xs:datetime
LastModifiedBy The person who last updated the CI xs:string
Submitter The person to created the CI xs:string
Description Description xs:string Descriptio
SerialNumber Serial Number of the CI xs:string
Category Category of the item xs:string
Type Type of the item xs:string
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 5 of 8—
VERSION 2.4 REV A01 300-011-526
DEVICE MAPPINGS
mun IP domain property
bel) Type Notes
156
Item The item type xs:string
Model Model of this item xs:string
Manufacturer Manufacturer of this item xs:string
Version Version of this item xs:string
Assignee User who this item is assigned to xs:string
HostName The hostname of this CI if applicable xs:string
networkName Name of the network (Often the logical name in the endpoint)
managementIP Management IP Address
fqdn Fully Qualified Domain Name
osDescription Description of the Device OS
osVersion Version of the Device OS
snmpCredentials SNMP Credentials Sub-Object SnmpCredentials(1)
.name Name of the Credential object ReadComity
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 6 of 8—
DEVICE MAPPINGS
157
mun IP domain property
bel) Type Notes
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE
.communityRO SNMP Read-Only Password ReadComity
.communityRW SNMP Read-Write Password
.snmpVersion SNMP Version
.snmpPort SNMP Port
interfaces List of network interfaces DeviceInterface(0..n)
.primaryIP Primary IP Address of this interface
.subnetMask Subnet of the the primary IP address
.name Logical name of this interface
compliance Compliance Information of this CI (Optional) Compliance (1)
Status Status of the compliance of this device xs:string
PolicyIdentifier Identifier of the policy that is in compliance or not xs:string
PolicyName Name of the policy that is in compliance or not xs:string
relationships Related Configuration Items CIRelationship (0..n)
Identifier Identifier of the relationship (optional) xs:string
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 7 of 8—
VERSION 2.4 REV A01 300-011-526
DEVICE MAPPINGS
bel) Type Notes
158
Name Name of the relationship xs:string
ClassName Class name of this relationship (or type) xs:string
ClassNamespace Optional namespace for this relationship xs:string
SourceRole Parent's role in the relationship (ie. Source) xs:string
relationship.targets Configuration Items associated with this relationship
ObjectReference (0..n)
target.Identifier CI Identifier xs:string
target.Name CI Name xs:string
target.Type CI Type xs:string
target.role Role of the target relationship
Table 12-2 ITOM Device Mapping for EMC Ionix ITOI
Name Description Type Name (La
—sheet 8 of 8—
Index 1
Aacquisition
monitoring 87WSDL URL location 31
acquisition service 21polling methods 31process flow 21scaling 95
adapterfailover infrastructure 96management 125
Adapter Framework 15running as a Windows service 79starting 136stopping 136
agentscaling 96
alertsautomated 87
Apache Derby 42
Bbase URLs 86blocking methods 32
Cclient acquisition service
running on another port 93
Ddatabase
monitoring 86databases
enabling support for another database 86external
user for multiple adapters 96supported 42
datasource properties 86discovery service 34domain credentials
adding more than five 109
Eerror messages
notification service 135types 134URL Agent 135
error typespermanent 134recoverable 134
errors 135Adapter 135
Fframework HTTP authentication 86framework properties 84
for the global framework 85
Gglobal framework properties 85
Hhigh availability 95
IInformation Technology Service Management 16install folder 63install set 49, 62installer
Linux 81starting 47Unix 81
ITIL services 16supported object types 17
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 159
ITSM 16applications 13
JJava console
starting 127Java Management Extensions 125Java to Adapter integration 97JMX 125
management beans 127
Llicense file 65
directory location 46installing 46
loglocation
for UNIX 131for Windows 131
log4j.properties file 131logging 131
turning onfor Windows 131
URL Agent daemon 102
Nnotification agent 20notification service 25
error messages 135
Ooperating systems
supported 41operations service 27
process flow 27scaling 95
Ppassword
iMS 68web service authentication 67
permanent errors 134persistence database 99
changing the port number 100connecting to 100removing transactions 99
polling methods 31properties editor 84
command 85starting 84
Pythonrequired for the URL Agent 101
Rrecoverable errors 134RESTful Client Acquisition 92
SSAM
device maintenance 110tool notification 111
security 66shortcut folder 64SOAP client acquisition service 93software
uninstallWindows 137
software installation 43for Windows 47manual 82
UNIX 82Windows 82
system configuration 41system requirements 41
Tterminal methods 32troubleshooting 131
error types and meanings 134
UURL
iMS 68URL Agent 101
command options 103daemon 102
logging 102shutting down 102starting 102
error messages 135logging 134running 103using 101
URL agentconfiguring SAM 111
usernameiMS 68
160 VERSION 2.4 REV A01 300-011-526
web service authentication 67
Wweb service authentication 67Windows service
exectuable location 79manager application 79manual install or uninstall 136re-installing 136running 79uninstalling 136
EMC IONIX IT ORCHESTRATOR ADAPTER IONIX ITOI INSTALLATION AND CONFIGURATION GUIDE 161
162 VERSION 2.4 REV A01 300-011-526
B
EMC Corporation
Corporate Headquarters, Hopkinton, MA 01748-9103U.S.A.
Tel.:1-508-435-1000
http://www.EMC.com
EMC Ionix IT Orchestrator AdapterIonix ITOIInstallation and Configuration Guide
Document number: 300-011-526Product release: 2.4Document version: A01Date: September 2010
Printed in the United States of America.Copyright © 2010, EMC Corporation All Rights Reserved
B