Products | Versions |
---|---|
TIBCO MDM | - |
Not Applicable | - |
Description:
By default, MDM is delivered with AS Multicast enabled. While useful for the initial setup of an isolated MDM environment, where MDM is being deployed to a network of multiple applications and possible security constraints, it is important to turn off AS Multicast and turn on the more secure AS Unicast. Note that AS Multicast acts as an "open door", allowing any application to access the data held by MDM as well as risking conflicts between systems using incompatible data or AS code versions.
Introduction.
It is important to get the following definitions right, otherwise MDM AS reverts to multicast operations, with all the potential problems that this can lead to (for example, connecting to a different, incompatible version of AS, or corruption of one set of MDM AS operational and business data with operational and business data from another MDM installation.). This KB article explains how to do so.
Setting up a Unicast AS Environment for MDM
The only changes required to set up a Unicast AS Environment for MDM are the following properties in ConfigValue.xml:
For each MDM Server Member <n>, the AS properties need to be set to:
<ConfValue description="Provide the listen url for AS." name="AS Listen URL" propname="com.tibco.cim.cache.as.listenurl" sinceVersion="8.2" visibility="Advanced">
<ConfString default="tcp://" value="tcp://<server_member_ip_address_<n>>:50000"/>
</ConfValue>
<ConfValue description="AS DistributionRole for a Member." name="AS Member Distribution Role" propname="com.tibco.cim.cache.as.distributionrole" sinceVersion="8.0.1" visibility="Advanced">
<ConfEnum>
<EnumValue default="true" selected="true" value="SEEDER"/>
<EnumValue default="true" value="LEECH"/>
</ConfEnum>
</ConfValue>
where:
<server_member_ip_address_<n>>:50000
is a single string value containing the unique server listen URL for server member <n>.
Cluster AS properties set to:
<ConfValue description="Selects the type of cache used." name="Cache Type" propname="com.tibco.cim.cache.type" sinceVersion="7.0" visibility="Advanced">
<ConfEnum>
<EnumValue default="true" selected="true" value="AS"/>
<EnumValue value="Custom"/>
</ConfEnum>
</ConfValue>
<ConfValue description="Class Implementation for a Custom Cache" name="Custom Cache Class" propname="com.tibco.cim.cache.custom.class" sinceVersion="8.2" visibility="Advanced">
<ConfString default="" value=""/>
</ConfValue>
<ConfValue description="" name="AS Meta Space Name Type" propname="com.tibco.cim.cache.as.metaspace" sinceVersion="8.0.1" visibility="Advanced">
<ConfString default="cim_ms" value="cim_prep_ms"/><!-- see note1 below concerning metaspace names -->
</ConfValue>
<ConfValue description="" name="AS Unicast URL" propname="com.tibco.cim.cache.as.unicasturl" sinceVersion="8.0.1" visibility="Advanced">
<ConfString default="tcp:////" value="tcp:////"/>
</ConfValue>
<ConfValue description="Provide the multicast url for AS" name="AS Multicast URL" propname="com.tibco.cim.cache.as.multicasturl" sinceVersion="8.0.1" visibility="Advanced">
<ConfString default="tibpgm:////" value=""/>
</ConfValue>
<ConfValue description="Provide the unicast discovery urls for AS." name="AS unicast discovery URLS" propname="com.tibco.cim.cache.as.discoveryurl" sinceVersion="8.2" visibility="Advanced">
<ConfList>
<ConfListString value="<server_member_ip_address_1>:50000(;<server_member_ip_address_<x>>:5000)"/>
</ConfList>
</ConfValue>
<ConfValue description="Provide the replication count for AS cluster." name="AS Replication count" propname="com.tibco.cim.cache.as.replicationcount" sinceVersion="8.0.1" visibility="Advanced">
<ConfNum default="0" value="0"/>
</ConfValue>
where:
<server_member_ip_address_1>:50000(;<server_member_ip_address_<x>>:50000)
Note 1: it is recommended that a different metaspace name be used for each environment :
Members of each AS unicast group should use the same value for com.tibco.cim.cache.as.metaspace. By convention, define the following for each customer environment:
development: cim_devx_ms, x=1,2,...
test: cim_test_ms
preproduction: cim_prep_ms
production: cim_prod_ms
where development metaspaces are used only in the development environment and test. Preproduction and production metaspaces are used only in the operational environment.
Note 2: port 50000 is not the only possibility.
While port 50000 is specified in the examples above (due to it being the best port to choose for AS connectivity), other ports can also be used so long as the ports used for each AS member are reflected in the com.tibco.cim.cache.as.discoveryurl value defined for the cluster. The discovery URL is a semicolon separated list comprised of all listening URLs of the members of the AS unicast group, including the listening URLs for any AS agents that use the same discovery URL string to identify the same AS unicast group members, including themselves.