Creating the Discovery Source
- Before installing or upgrading the Ironstream Mainframe Discovery app, you must manually add a data source named
Ironstream_Z. This data source is required by the ServiceNow Identification and Reconciliation Engine (IRE).Note: The data source cannot be added automatically during the app installation because the choice field for the data source must exist in the ServiceNow global scope.To add the data source, go to the Scripts - Background area in ServiceNow. Run the following script in the global domain:var discoverySource = 'Ironstream_Z'; var gr = new GlideRecord('sys_choice'); gr.addQuery('element', 'discovery_source'); gr.addQuery('name', 'cmdb_ci'); gr.addQuery('value', discoverySource); gr.query(); if (!gr.hasNext()) { var grNew = new GlideRecord('sys_choice'); grNew.initialize(); grNew.setValue('element', 'discovery_source'); grNew.setValue('name', 'cmdb_ci'); grNew.setValue('value', discoverySource); grNew.setValue('label', discoverySource); if (!grNew.insert()) { gs.info('Adding discovery source failed for: "' + discoverySource + '".'); } } else { gs.info('Discovery source "' + discoverySource + '" already exists.'); } - Download the Ironstream Mainframe Discovery app from the ServiceNow Store. Refer to the Ironstream Administration Guide for detailed instructions on configuring the Ironstream Proxy Server.Important: If you already have a version of the app installed, note that your existing probe configurations will not be retained. This is the current behavior of ServiceNow.
Creating the Reconciliation Rules
To enable Ironstream to update data in ServiceNow's CMDB classes, you must create Reconciliation Rules in the ServiceNow instance before running Discovery.
Reconciliation Rules must include 'Ironstream_Z' as a Discovery Source. This requirement applies only to non-custom classes that are not part of the 'Legacy' offering.
The table below lists the attributes that Ironstream may update for each applicable ServiceNow class:
| Display Name | Table Name | Attributes |
| IBM Mainframe | cmdb_ci_mainframe | name cpc_nd model_number manufacturer cpc_id serial_number |
| IBM Mainframe LPAR | cmdb_ci_mainframe_lpar | name os host_name fqdn mainframe smf_id ram ip_address ipl_time_date os_version ieasym_list ieasys_list iodf_device_name ipl_device_address ipl_volume_name serial_number cluster_id model_number manufacturer multiple_image_facility_image_identifier lpar_id channel_subsystem_identifier architecture_mode ipl_parm_load_member |
| Mainframe Sysplex | cmdb_ci_mainframe_sysplex | name manufacturer model_number |
| IBM CICS Region | cmdb_ci_appl_ibm_cics_region | name activity_key_point_freq cics_version debug_tool_enabled default_user dynamic_storage_area_limit distributed_system_routing_program model_number manufacturer |
| IBM CICSPlex | cmdb_ci_appl_ibm_cicsplex | name cicsplex_host cicsplex_version model_number manufacturer |
| IBM CICS Program | cmdb_ci_appl_ibm_cics_program | name ibm_cics_region program_reload_enabled program_is_resident short_description program_language model_number manufacturer |
| IBM CICS Transaction | cmdb_ci_appl_ibm_cics_transaction | name ibm_cics_region local_queue_enabled transaction_profile transaction_class_name command_security_enabled isolation_enabled resource_security_enabled model_number manufacturer |
| Db2 Subsystem | cmdb_ci_db_db2_instance | name version db2_server_class db2_subsystem_user db2_workload_name model_number manufacturer |
| Db2 Database | cmdb_ci_db_db2_catalog | name buffer_pool_name db2_database_creator db2_database_date_created db2_database_type default_storage_group encoding_scheme model_number manufacturer |
| Db2 Sharing Group | cmdb_ci_db_db2_sharing_group | name catalog_level group_attach_name |
| IMS Subsystem | cmdb_ci_db_ims_subsystem | name fqdn command_prefix model_number manufacturer |
| IMS Subsystem Region | cmdb_ci_appl_ims_region | name ims_subsystem ims_region_id ims_region_type model_number manufacturer |
| IMS Database | cmdb_ci_db_ims_database | name ims_subsystem ims_db_access_type ims_db_type model_number manufacturer |
| IMS Area | cmdb_ci_db_ims_area | name ims_database model_number manufacturer |
| IMS Transaction | cmdb_ci_appl_ims_transaction | name ims_subsystem current_priority enq_count local_priority message_limit_count normal_priority parallel_limit process_limit_count program_status_block_name q_count segment_limit segment_size transaction_class model_number manufacturer |
| IMS Program | cmdb_ci_appl_ims_program | name ims_subsystem ims_transaction ims_program_state ims_program_type model_number manufacturer |
| MQ Manager | cmdb_ci_appl_ibm_wmq | name queue_manager command_queue dead_queue default_transmission_queue short_description max_message_length max_channels mq_platform tcp_name system_control_version op_mode command_user model_number manufacturer |
| MQ Channel | cmdb_ci_appl_ibm_mq_channel | name channel_type connection_name short_description max_message_length transport_type model_number manufacturer |
| MQ Queue Alias | cmdb_ci_appl_mq_queue_alias | name ibm_mq_manager type short_description x_mitq transmission_usage get_permission put_permission max_depth max_message_length queue_creation_date model_number manufacturer target_queue_name |
| MQ Queue Local | cmdb_ci_appl_mq_queue_local | name ibm_mq_manager type short_description x_mitq transmission_usage get_permission put_permission max_depth max_message_length queue_creation_date model_number manufacturer local_queue_name |
| MQ Queue Model | cmdb_ci_appl_mq_queue_model | name ibm_mq_manager type short_description x_mitq transmission_usage get_permission put_permission max_depth max_message_length queue_creation_date model_number manufacturer |
| MQ Queue Remote | cmdb_ci_appl_mq_queue_remote | name ibm_mq_manager type short_description x_mitq transmission_usage get_permission put_permission max_depth max_message_length queue_creation_date model_number manufacturer remote_queue_name |
If Reconciliation Rules are not created, Ironstream Discovery can insert records into ServiceNow's CMDB classes. However, it will not be able to update those records later. For instance, if a subsequent Discovery run identifies updated attribute values, Ironstream Discovery will be unable to apply those changes.
For advice on how to create Reconciliation Rules, refer to ServiceNow's official documentation.