Configuration scripts and the madconfig utility

InfoSphere® MDM includes a number of ANT-based scripts, or targets, that work with a utility called madconfig. You can use the madconfig targets to configure certain aspects of the application.

Important: Some of the InfoSphere MDM scripts require Korn shell (ksh) to be installed on the system. For example, Korn shell is used when running virtual MDM brokers on UNIX systems. Some UNIX based systems install Korn shell by default; others, such as Red Hat® Enterprise Linux®, do not.

Run the madconfig utility from the MDM_INSTALL_HOME/mds/scripts folder using the following syntax:

  • On Microsoft Windows systems, run
    madconfig <target name>
  • On Linux or UNIX systems, run
    ./madconfig.sh <target name>

This following tables list the madconfig targets for InfoSphere MDM and their usage.

Installation targets

The following table lists the madconfig targets that are used to install or uninstall an InfoSphere MDM instance. For a full installation or uninstallation, the targets in this table must be used together with IBM® Installation Manager as part of the two stage installation process.

Table 1. madconfig targets for installation
Target name Description
Configure_MasterDataManagement Enables you to configure or reconfigure an InfoSphere MDM instance by applying settings from a predefined configuration file. This target must be run as the second part of the two stage installation process, and can also be run separately to reconfigure the application.
Uninstall_MDM Uninstalls the configuration files for InfoSphere MDM. This target removes the application configuration, but the application assets must be removed separately using IBM Installation Manager.
Tip: Be careful when running Uninstall_MDM, as it removes the configuration of all features and not just the configuration of a particular component.
Apply_Fixpack Applies a fix pack that has already been downloaded and extracted. Installing a fix pack is a two stage process. First, you must use IBM Installation Manager to download and extract the fix pack assets, and then manually install these extracted fix pack assets using the Apply_Fixpack target.

Application configuration targets

The following table lists the targets that are related to configuring the InfoSphere MDM application and operational server. Each target requests values for parameters that pertain to the server and database. The server targets are used to configure the server on which InfoSphere MDM is installed.

Table 2. madconfig targets for application and operational server configuration
Target name Description
Configure_MasterDataManagement Enables you to configure or reconfigure an InfoSphere MDM instance by applying settings from a predefined configuration file. This target must be run as the second part of the two stage installation process, and can also be run separately to reconfigure the application.
configure_elastic_search Creates an environment for the InfoSphere MDM full text search capabilities (which leverage Elasticsearch) and performs placeholder replacements in the Apache Kafka configuration directory.
To complete the configuration of Elasticsearch, this target prompts for the following inputs:
  • Do you wish to configure a Kafka distributed environment? - Depending on the answer to this question (yes or no), you will need to provide one or the other of the following inputs:
    • A comma-separated list of cluster members (host:port). For example: server1:9092,server2:9093
    • A Kafka standalone host name and port (host:port).
  • Elasticsearch host name
  • Elasticsearch port
  • Elasticsearch cluster name
  • Elasticsearch node name
  • Elasticsearch network host
  • Elasticsearch unicast host
  • Do you want Elasticsearch SSL enabled?
  • MDM application password
  • MDM database password

After you provide the information as prompted, this target updates the MDM database and restarts the application server.

This target updates the following database tables:
  • NOTIFICATIONTYPE
  • NOTIFCHANNEL
  • JMSCHANNEL
  • CONFIGELEMENT
  • EXTENSIONSET
This target makes changes in the following files:
  • <MDM_INSTALL_HOME>/properties/mdm_install.properties - adds the property
    user.elastic.search.enabled=true
  • <MDM_INSTALL_HOME>/elasticsearch-6.2.4/config/elasticsearch.yml
  • <MDM_INSTALL_HOME>/KafkaProcessor/properties/KafkaruntimeForES.properties
  • <MDM_INSTALL_HOME>/KafkaProcessor/properties/kafkabatchForES.properties
  • <MDM_INSTALL_HOME>/KafkaProcessor/properties/kafkadbconnect.properties
  • <MDM_INSTALL_HOME>/KafkaProcessor/properties/DBConnectConfig.properties
  • <MDM_INSTALL_HOME>/KafkaProcessor/bin/createTopics_Sample[.bat/.sh]
  • <MDM_INSTALL_HOME>/KafkaProcessor/bin/runKafkaStreamsForES[.bat/.sh]
  • <MDM_INSTALL_HOME>/KafkaProcessor/bin/runKafkaBatchStreamsForES[.bat/.sh]
configure_mdm_publisher Creates the Kafka configuration and Jetty Server, and performs placeholder replacements within the Kafka configuration directory.
To complete the configuration, this target prompts for the following inputs:
  • Do you wish to configure Kafka distributed environment? - Depending on the answer to this question (yes or no), you will need to provide one or the other of the following inputs:
    • A comma-separated list of cluster members (host:port). For example: server1:9092,server2:9093
    • A Kafka standalone host name and port (host:port).
  • WebSphere® Application Server password
  • Database password

After you provide the information as prompted, this target updates the MDM database and restarts the application server.

This target updates the following database tables:
  • NOTIFICATIONTYPE
  • NOTIFCHANNEL
  • JMSCHANNEL
  • CONFIGELEMENT
  • EXTENSIONSET
This target makes changes in the following files:
  • <MDM_INSTALL_HOME>/properties/mdm_install.properties - adds the property
    user.mdm.publisher.enabled=true
  • <MDM_INSTALL_HOME>/KafkaProcessor/properties/kafkaruntime.properties
  • <MDM_INSTALL_HOME>/JettyServer/properties/streamjobmanagement.properties
  • <MDM_INSTALL_HOME>/JettyServer/bin/runJettyServer[.bat/.sh]
  • <MDM_INSTALL_HOME>/KafkaProcessor/bin/createTopics_Sample[.bat/.sh]
configureNewNodeInCluster Adds a new InfoSphere MDM operational server node to a WebSphere Application Server cluster. This target requests relevant parameter values, and then completes the following operations:
  • Installs the native operational server (engine) on the newly added member by invoking the install_native_engine_ear madconfig target.
  • Configures the application server for physical and virtual components; including JDBC, class path, and environment variables on the newly added member by invoking the install_server_config madconfig target.
  • Creates the Security role mapping and RunAs role mapping for the EBA and web services EAR file on the newly added member by invoking the map_roles_to_users madconfig target.
  • Synchronizes the nodes in the server deployment to reflect the user security for InfoSphere MDM by invoking the full_sync madconfig target.
  • Adds the details of the new member to the APPINSTANCE and CONFIGELEMENT tables.
  • Restarts the cluster.
  • Encrypts passwords in the properties files.
create_new_admin_user Creates and configures new MDM administrator user credentials to replace the default MDM administrator user, mdmadmin.
map_user_group_to_role Map users and groups to specific InfoSphere MDM application security roles and their associated User RunAs roles.
map_user_group_to_role_all_apps Map users and groups to all InfoSphere MDM application security roles and their associated User RunAs roles.
modify_default_queues On a remote WebSphere MQ server, this target modifies the default destination queue name to a custom queue name.
Important: Before invoking this target, provide values for parameters in MDM_INSTALL_HOME/properties/post_config.properties.
modify_mdm_admin_password Modifies the MDM administrator user password in the WebSphere Application Server profile.
modify_server_configuration Configures the MDM operational server to point to a different MDM database instance:
  • Modifies the values in the data sources and custom properties (DWLConfig, DWLCustomer, and MDM) to point to the new database.
  • Modifies the user name and password values of JAAS entries to enable the application to log in to the new database.
  • Modifies the schema name in the message store of the messaging engine that corresponds to the MDM messaging bus so that it points to the schema in the new database.
  • Modifies the schema name in the message store of the messaging engine that corresponds to the MDM messaging bus so that it points to the schema in the new database.
  • Stops the application server, drops the SIB tables in the new database, and restarts the application server. The SIB tables that are dropped are SIB000, SIB001, SIB002, SIBCLASSMAP, SIBKEYS, SIBLISTING, SIBOWNER, SIBOWNER0, and SIBXACTS.
  • Updates the NAME value in the APPSOFTWARE table for the row holding the details corresponding to the version of InfoSphere MDM. The application version is collected as user input before running the target.
  • If the installation is on a cluster, rows corresponding each node are added to the APPINSTANCE and CONFIGELEMENT tables.
  • Stops and starts the application server to ensure that the modified details will be used by the server.
  • Modifies values in property files to point to the new database and to encrypt passwords.
recreate_database Refreshes the MDM database components. When you run this target, it cleans all database components including tables, sequences, triggers, and functions. After cleaning, the target recreates fresh versions of the components.

This target also determines whether the InfoSphere MDM application server component is installed along with the database components. If the application server is installed, then this target updates the related database tables: APPSOFTWARE, APPINSTANCE (if cluster deployment is selected), and CONFIGELEMENT.

redeploy_EBA Refreshes the InfoSphere MDM OSGI bundles. When this target is executed, it uninstalls all OSGI components, including the composite bundles (CBAs), enterprise bundle archive (EBA) on the operational server. After uninstalling, the target performs a fresh installation of the OSGI bundles.
redeploy_native_ear Refreshes the InfoSphere MDM native.ear deployment. When this target is executed, it uninstalls the current native.ear instance and then deploys a fresh instance.
redeploy_user_interface Redeploys a fresh instance of a InfoSphere MDM web application such as Inspector or Business Administration UI. When this target is executed, it uninstalls the web application components, and then performs a fresh installation in the same location.
Important: If the web application is hosted on a different server than the MDM operational server, then you must manually restart the server after running the target.
switch_to_mq Switches the message queue configuration from the default WebSphere Application Server messaging (WEM) to WebSphere MQ (WMQ).
Important: Before invoking this target, provide values for the following parameters in MDM_INSTALL_HOME/properties/post_config.properties.
  • The key store and trust store files:
    keyFile=
    keyFilePwd=
    trustFile=
    trustFilePwd=
  • MQ server parameters:
    messagingHost=<MQ-host>
    messagingPort=1414
    messagingUser=<MQ-user>
    messagingPassword=<MQ-user-password>
    messagingQueueManager=<MDM-QMGR>
    messagingChannel=<MDM-SVR-CHANNEL>
    messagingTransport=CLIENT
    messagingHomePath=/usr/mqm
  • MQ queue names for InfoSphere MDM (if applicable)
Uninstall_MDM Uninstalls the configuration files for InfoSphere MDM. This target removes the application configuration, but the application assets must be removed separately using IBM Installation Manager.
Tip: Be careful when running Uninstall_MDM, as it removes the configuration of all features and not just the configuration of a particular component.

Flexible search configuration targets

The madconfig utility supports the configuration and management of flexible search.

The following table describes the targets that are used to configure and manage flexible search.

Table 3. madconfig utility targets for flexible search
Target name Description
flexsearch_config Configures flexible search to index InfoSphere MDM attributes in Data Explorer as entities that are composed of these attributes are created/updated/deleted.
flexsearch_sync_svc_enable Enables the flexible search index synchronization service.
flexsearch_sync_svc_disable Disables the flexible search index synchronization service.
flexsearch_syncdb Indexes entities to Data Explorer by specifying entrecno (entity id) range values to index from the operational server database.

Database configuration targets

The following table lists the targets that are used to configure physical and virtual schemas for the MDM database.

Table 4. madconfig utility targets for database installation
Command Description
configure_physical_database_native Creates database objects for physical MDM and loads data into IBM Db2® and Oracle databases.
install_core_db_db2 Creates tables, triggers, constraints, and functions for the InfoSphere MDM core database that is installed on Db2.
install_domain_db_db2 Creates tables, triggers, constraints, and functions for InfoSphere MDM domains on a Db2 database.
install_cm_domain_db_db2 Creates the CONFIGELEMENT table on a Db2 database.
update_cm_db_db2 Updates the CONFIGELEMENT table on a Db2 database.
install_core_db_ora Creates tables, triggers, constraints, and functions for an InfoSphere MDM core database on Oracle.
install_domain_db_ora Creates tables, triggers, constraints, and functions for InfoSphere MDM domains on an Oracle database.
install_cm_domain_db_ora Creates the CONFIGELEMENT table on an Oracle database.
update_cm_db_ora Updates the CONFIGELEMENT table on an Oracle database.
install_core_db_sql Creates tables, triggers, constraints, and functions for the InfoSphere MDM core database on Microsoft SQL Server.
install_cm_core_db_sql Creates the CONFIGELEMENT table on Microsoft SQL Server.
update_cm_db_sql Updates the CONFIGELEMENT table on Microsoft SQL Server.
install_new_db_lang_code Loads localized gold data corresponding to one or more locales into the database.
recreate_database Refreshes the MDM database components. When you run this target, it cleans all database components including tables, sequences, triggers, and functions. After cleaning, the target recreates fresh versions of the components.

This target also determines whether the InfoSphere MDM application server component is installed along with the database components. If the application server is installed, then this target updates the related database tables: APPSOFTWARE, APPINSTANCE (if cluster deployment is selected), and CONFIGELEMENT.

Note: After running the madconfig target, you may have to take additional steps if you have configured certain InfoSphere MDM capabilities.
  • If you have configured the MDM statistics feature:
    1. Run the SQL file <MDM_INSTALL_HOME>/KafkaProcessor/properties/KafkaSetupQueries.sql.
    2. Restart the application server.
  • If you have configured InfoSphere MDM to use Elasticsearch to provide full text search capabilities:
    1. Run the SQL file <MDM_INSTALL_HOME>/KafkaProcessor/properties/KafkaSetupQueriesForES.sql
    2. Restart the application server.