The tsm.conf file contains configuration parameters that you edit to enable and customize topology split. The parameters are a subset of attributes that are defined for the TopoSplit_Manager object.

When topology split is invoked, the Topology Split Manager loads the tsm.conf file.

The tsm.conf file contains the following active parameters:

NumberOfDomains = 1
IsTSMHookEnabled = FALSE
AdapterHighWaterMark = 100000
BalanceThreshold = 2.0000
DeviceHighWaterMark = 5000
NumberOfRetries = 3
IsDebugEnabled = FALSE
ProxyThreshold = 0.2500

It also contains the following commented-out parameters:

# EnableAutoEdgeManagement = TRUE
# IsTopoSyncEnabled = TRUE
# IsTrialLearningEnabled = FALSE
# IsSplitFromScratch = FALSE
# NumberOfTrials = 3
# IsSingleRootCauseEnabled = FALSE
# IsPreAssignmentEnabled = TRUE
# IsNonRelayDeviceFirstEnabled = TRUE
# MaxNumberOfRefinementLoops = 3

The parameters and their values are case-sensitive.

You can configure the topology-split parameters in the tsm.conf file, or you can configure them by using dmctl commands as long as the configured parameter settings are not countermanded in tsm.conf. Because the Topology Split Manager loads into memory whatever parameters are specified in tsm.conf at the beginning of a topology split, those settings will override any dmctl-configured settings for those parameters.

Attributes for TopoSplit_Manager::TopoSplit-Manager lists some key attributes for TopoSplit_Manager.

Table 1. Attributes for TopoSplit_Manager::TopoSplit-Manager

Attribute

Value

Description

topology-split mandatory parameters

NumberOfDomains

Integer

Default: 1

Number of domains that are registered with the Topology Split Manager. Must be greater than 1 and equal to the number of domains that are specified in the TSM_BASEDIR/smarts/local/conf/discovery/ topo-split/topo-split.conf file.

topology-split mode-of-operation attributes

IsTrialLearningEnabled

TRUE,FALSE

Default: FALSE

Determines whether the Topology Split Manager runs in normal mode or trial learning mode:

  • A value of TRUE indicates that the Topology Split Manager runs in trial learning mode and creates multiple full topology splits.

  • A value of FALSE indicates that the Topology Split Manager runs in normal mode and creates a single topology split.

In normal mode, the IsSplitFromScratch attribute may be TRUE (to create a single full topology split) or FALSE (to create a single incremental topology split).

In trial learning mode, the IsSplitFromScratch attribute must be TRUE.

Also, in trial learning mode, the Topology Split Manager ignores the following attributes:

  • IsTopoSyncEnabled

  • EnableAutoEdgeManagement

  • IsTSMHookEnabled

That is, regardless of the settings of these attributes, the Topology Split Manager will not run automatic topology synchronization, edge management, or the TSM hook script.

NumberOfTrials

Integer

Default: 3

Number of initial (full) topology splits to run when the Topology Split Manager is running in trial learning mode. Must be greater than 1 when IsTrialLearningEnabled is TRUE.

topology-split operating feature attributes

IsSplitFromScratch

TRUE,FALSE

Default: TRUE

Determines whether the Topology Split Manager performs a full topology split or an incremental topology split:

  • A value of TRUE indicates that the Topology Split Manager performs a full topology split: Splits the topology into as many domains as specified in the NumberOfDomains attribute and then clears the IsSplitFromScratch attribute (sets IsSplitFromScratch to FALSE).

  • A value of FALSE indicates that the Topology Split Manager performs an incremental topology split: Applies incremental topology updates to an existing topology split, which might result in the moving of some devices from one domain to another in an attempt to improve the split.

    Note:

    After creating a full topology split in normal mode or creating multiple full topology splits in trial learning mode, the Topology Split Manager automatically clears the IsSplitFromScratch attribute.

    In general, do not set IsSplitFromScratch in the tsm.conf file. (Instead, if need be, use dmctl to set this attribute.) That way, the reading of the tsm.conf file at the beginning of topology split will not override the automatic clearing of IsSplitFromScratch after full topology split.

IsTopoSyncEnabled

TRUE,FALSE

Default: FALSE

Determines at the end of a topology split whether the Topology Split Manager performs an automatic topology synchronization between the Topology Split Manager and the domains’ IP Availability Managers:

  • A value of TRUE indicates that the Topology Split Manager performs an automatic topology synchronization.

  • A value of FALSE indicates that the Topology Split Manager does not perform an automatic topology synchronization.

EnableAutoEdgeManagement

TRUE,FALSE

Default: FALSE

Determines at the end of a topology split whether the Topology Split Manager performs edge management:

  • A value of TRUE indicates that the Topology Split Manager performs edge management.

  • A value of FALSE indicates that the Topology Split Manager does not perform edge management.

Because edge management runs as part of topology synchronization, IsTopoSyncEnabled and EnableAutoEdgeManagement must both be TRUE for edge management to run.

IsTSMHookEnabled

TRUE,FALSE

Default: FALSE

Determines at the end of a topology split whether the Topology Split Manager runs the TSM hook script:

  • A value of TRUE indicates that the Topology Split Manager runs the TSM hook script.

  • A value of FALSE indicates that the Topology Split Manager does not run the TSM hook script.

topology-split algorithm fine-tuning attributes

AdapterHighWaterMark

Integer

Default: 100000

Maximum number of network adapters (ports, interfaces) that should be placed into a single domain.

DeviceHighWaterMark

Integer

Default: 5000

Maximum number of devices that should be placed into a single domain.

ProxyThreshold

Floating point number

Default: 0.2500

Maximum ratio of total proxy devices in all domains to total number of proxied and owned devices in the Topology Split Manager.

ManagedAdapterWeight

Integer

Default: 1

Weight for managed network adapters.

Adjust the weights of ManagedAdapterWeight, UnmanagedAdapterWeight, and PerfAdapterWeight, whose weights are relative to one another, if you are not satisfied with the distribution of one type of network adapter (managed, unmanaged, or performance-managed) across domains.

Because the default weight of ManagedAdapterWeight is the only non-zero weight of the three “weight” attributes, increasing or decreasing the weight of ManagedAdapterWeight and redoing the topology split will not change the split all that much. What will change the split (and result in a more balanced workload for the domains) is to increase the weight of UnmanagedAdapterWeight or PerfAdapterWeight, as explained in the descriptions for UnmanagedAdapterWeight and PerfAdapterWeight that follow.

UnmanagedAdapterWeight

Integer

Default: 0

Weight for unmanaged network adapters. This weight is relative to the weight for ManagedAdapterWeight.

Increase the weight of UnmanagedAdapterWeight to balance the allocation of unmanaged network adapters across the domains.

If, for example, the topology-split algorithm allocates a lot of devices with unmanaged network adapters to one domain, which results in a longer discovery time for that domain relative to the other domains, you could increase the value of UnmanagedAdapterWeight (but to a value less than the value of ManagedAdapterWeight) and redo the topology split. The new split will either assign devices with unmanaged network adapters more evenly across the domains or include less devices with managed or performance-managed network adapters in the domain that has a lot of devices with unmanaged network adapters. Either way, the discovery time across the domains will be more balanced.

Note:

Both monitoring time and discovery time for a domain increase with additional managed network adapters. Although monitoring time does not increase with additional unmanaged network adapters, the discovery time for a domain does increase.

Balancing domains for discovery time could reduce how well domains are balanced for monitoring time.

PerfAdapterWeight

Integer

Default: 0

Weight for network adapters of devices that are to have their components polled every minute. This weight is added to the weight of ManagedAdapterWeight to compute the weight for performance-managed network adapters.

Increase the weight of PerfAdapterWeight to balance the allocation of performance-managed network adapters across the domains.

If, for example, the topology-split algorithm allocates a lot of devices with performance-managed network adapters to one domain, which results in a higher workload for that domain relative to the other domains, you could increase the value of PerfAdapterWeight and redo the topology split. The new split will either assign devices with performance-managed network adapters more evenly across the domains or include less devices with managed or unmanaged network adapters in the domain that has a lot of devices with performance-managed network adapters. Either way, the workload across the domains will be more balanced.

ErrorRange

Floating point number

Default: 0.05

Used to calculate the desired total weight for a domain.

The desired maximum, (1.0 + ErrorRange) times (average Weight), is usually calculated by summing the number of network adapters unless that number is modified by ManagedAdapterWeight, UnmanagedAdapterWeight, and PerfAdapterWeight.

BalanceThreshold

Floating point number

Default: 2.0

Determines whether the balance of the topology split across the domains is acceptable (ImbalanceRatio less than or equal to BalanceThreshold) or unacceptable (ImbalanceRatio greater than BalanceThreshold).

If unacceptable and the number of retries (incremental splits) as specified in the NumberOfRetries attribute is reached without an acceptable balanced split, the event “Imbalance” is generated and written to the Topology Split Manager’s log file. The message that accompanies the event suggests that the user should increase the BalanceThreshold or the NumberOfRetries.

Note:

ImbalanceRatio is a computed attribute and therefore is not user-configurable. Its value is the number of devices in the maximum-sized domain divided by the number of devices in the minimum-sized domain.

In trial learning mode, BalanceThreshold applies to each trial topology split. If the balance of a trial topology split is unacceptable after NumberOfRetries, the trial is discarded.

NumberOfRetries

Integer

Default: 3

Maximum number of attempts to split the topology such that the ImbalanceRatio of the split does not exceed the BalanceThreshold.

If after “NumberOfRetries” attempts the ImbalanceRatio is still above the BalanceThreshold, the split is considered unsuccessful.

In this release, the InitiateDiscovery attribute for TopoSplit_Manager is no longer supported. As a result, the TopoSplit_Manager can no longer can be configured to initiate IP Availability Manager pending discovery at the end of a topology synchronization.

The following sections clarify the use of the parameters in the tsm.conf file:

  • Enabling topology split on page 65

  • Enabling trial learning mode on page 66

  • Enabling automatic topology synchronization on page 67

  • Enabling edge management on page 68

  • Enabling the TSM hook script on page 69