[Contents] [Prev. Chapter] [Next Chapter] [Index] [Help]

B    Kernel Attributes (PS)

This appendix contains a partial list of kernel attributes provided by each Production Server Software subystem.

Use the following command to display the current settings of these attributes for a given subystem:

# sysconfig -q <subsystem-name> <attribute-list>

Table B-1 shows the subsystem name associated with each Production Server Software component.

Table B-1:  Configurable Production Server Subsystems

Subsystem Name Component Attributes
clubase Cluster base component See Table B-2.
cnxagent Connection manager agent daemon See Table B-3.
drd Distributed raw disk (DRD) See the drd(7) reference page.
dlm Distributed lock manager (DLM) See Table B-4.
dlmsl DLM layer  
mcnet Internet Protocol (IP) over MEMORY CHANNEL See Table B-5.
mcs MEMORY CHANNEL application programming interface (API) See Table B-7.
rm

The rm facility name represents remote memory, a synonym for MEMORY CHANNEL.

MEMORY CHANNEL subsystem See Table B-6.

You tune the performance of a kernel subsystem by using one of the following methods to set one or more attributes in the /etc/sysconfigtab file:

You can also use the configuration manager framework, as described in the DIGITAL UNIX System Administration manual, to change attributes and otherwise administer a cluster kernel subsystem on another host. To do this, set up the host names in the /etc/cfgmgr.auth file on the remote client system and then specify the -h flag to the /sbin/sysconfig command, as in the following example:

# sysconfig -h fcbra13 -r drd drd-do-local-io=0
 
drd-do-local-io: reconfigured

Note

The default settings of configurable cluster subsystem kernel attributes should be enough for most purposes. Although most kernel attributes are described in this section, many are reserved for debugging, development, and testing purposes.

Table B-2 lists the cluster base kernel attributes.

Table B-2:  Cluster Base Kernel Attributes

Attribute Type Description
cluster_disable

Query;

set at boot time

When set to 1, disables all cluster components. Typically, you disable the cluster software when you are upgrading the DIGITAL UNIX operating system underlying the running version of the TruCluster Production Server software. See the TruCluster Software Products Software Installation manual for more information.
cluster_maj_version Query Major number of the TruCluster software product. For example, the major version of Version 1.5 is 1.
cluster_min_version Query Minor number of the TruCluster software product. For example, the minor version of Version 1.5 is 5.
cluster_version Query String representing the installed version of the TruCluster Software product. For example, "Digital UNIX TruCluster T1.5-3 (Rev. 181.4); 08/04/97 09:27."

Table B-3 lists the cluster agent daemon kernel attributes. 

Table B-3:  Cluster Agent Daemon Kernel Attributes

Attribute Type Description
cnx_debug_msg_level

Query;

set at boot time or run time

Increases or decreases the amount of debugging messages issued by the connection manager agent daemon. The default value is 1.

Table B-4 lists the distributed lock manager (DLM) kernel attributes (DLM statistics).

Table B-4:  Distributed Lock Manager Kernel Attributes (DLM Statistics)

Attribute Type Description
dlm_name Query Name and version number of the DLM.
dlm_lkbs_allocated Query Number of active locks on this member system. The value of this attribute accounts for all copies of locks on this node.
dlm_rsbs_allocated Query Number of resources mastered on this member system. Each resource name is represented by a resource block. When a process on the local system has a lock on a given resource, a resource block exists on both the system that is the resource's master and on the local system. The locks on a given resource are represented by a chain of lock blocks connected to the resource block.
dlm_tot_lkids Query Total number of lock IDs on this cluster member. Each member system has its own lock ID table, which describes each lock block that is in use on that system. Each allocated lock block is identified by a lock ID handle. The DLM uses this table to quickly access lock blocks.
dlm_lkids_inuse Query Number of lock IDs actually in use on this member system. This value matches the number of active locks (dlm_lkbs_allocated ).
dlm_ddlckq_len Query Number of locks currently on the deadlock queue.
dlm_timeoutq_len Query Number of locks currently on the timeout queue.
dlm_lock_in Query Number of new lock requests from other cluster members to this member.
dlm_lock_loc Query Number of new lock requests that are mastered on this member system.
dlm_lock_out Query Number of new lock requests from this member to locks mastered on other member systems.
dlm_mng_local Query Number of new lock requests from this member to either the director or other member systems thought to be the lock master.
dlm_resend Query Number of new lock requests sent from this member to other member systems that resulted in a resend response. A cluster member returns a resend response when it is not, or is no longer, the master for the requested lock. For example, this can happen when the lock's master is transitioning from one system to another. A high number of resend responses indicates that the lock master is moving from member to member, which affects performance.
dlm_retry Query Number of new lock requests sent from this member to other member systems that resulted in a retry response. For example, a cluster member returns a retry response, for instance, when it has insufficient resources to satisfy the request, or if a lock rebuild started when the request was being sent.
dlm_cvt_in Query Number of lock conversion requests from other member systems to this member as the resource master.
dlm_cvt_loc Query Number of lock conversion requests for resources mastered locally.
dlm_cvt_out Query Number of lock conversion requests from this member to locks mastered on other member systems.
dlm_unlock_in Query Number of unlock requests from other cluster members to this member as the resource master.
dlm_unlock_loc Query Number of unlock requests for resources mastered locally.
dlm_unlock_out Query Number of unlock requests from this member to locks mastered on other member systems.
dlm_blk_in Query Number of blocking notifications sent from member systems mastering resources to processes on the local system.
dlm_blk_loc Query Number of blocking notifications sent to processes on the local system for resources mastered on the local system.
dlm_blk_out Query Number of blocking notifications sent to processes on other systems for resources mastered on the local system.
dlm_dir_in Query Number of times the local node received new lock requests as the directory node. This usually results in a resend request or a message to the requestor to master the lock locally.
dlm_dir_out Query Number of requests the local node has sent to other directory nodes.
dlm_timeo_lks Query Number of locks that have timed out (that is, have not been granted within the timeout interval specified on the initial request).
dlm_ddlck_in Query Number of deadlock search requests involving locks or processes on the local system.
dlm_ddlck_out Query Number of deadlock search requests from this member to other member systems.
dlm_ddlck_srch Query Number of deadlock searches that have occurred on the local system.
dlm_ddlck_cvt_fnd Query Number of conversion deadlocks detected on the local system. Conversion deadlocks are described in the TruCluster Production Server Software Application Programming Interfaces manual.
dlm_ddlck_res_fnd Query Number of multiple resource deadlocks found on the local system. Multiple resource deadlocks are described in the TruCluster Production Server Software Application Programming Interfaces manual.
dlm_notqd Query Number of lock requests that were not queued (that is, those requests that either were granted or will be granted).
dlm_wait Query Number of new lock requests that were placed on the waiting queue of the resource.
dlm_cvt_wait Query Number of conversion lock requests that were placed on the conversion queue of the resource.
dlm_collect_zero Query Number of times a process attempted to collect a blocking notification after the blocking notification had been cancelled or delivered.
dlm_no_msg_mem Query Number of times the DLM has failed in an attempt to allocated memory for a message.
dlm_add_lkid_seg Query Indicates the number of times the DLM had to allocate memory for another block (segment) of lock ID handles.
dlm_expand_lkid_tbl Query Indicates the number of times the DLM had to expand the lock ID segment table (an array of pointers to lock ID segments).
dlm_pdbs_allocated Query Number of processes running on this cluster member that are using the DLM.
dlm_kpdbs_allocated Query This is equivalent to the dlm_pdbs_allocated attribute, except it relates to kernel threads using kernel DLM interfaces instead of user processes.
dlm_gdbs_allocated Query Number of group lock containers on this cluster member.
dlm_perm_gdbs Query Number of permanent group lock containers on this member system.
dlm_txids_allocated Query Number of transactions active on this cluster member.
dlm_long_rhash_chain Query Length of the longest linked list in the resource hash table.
dlm_empty_rhash_chain Query Number of empty linked lists (chains) in the resource hash table.
dlm_txid_wrap Query Set when the number of DLM transactions done on a single lock ID handle has overflowed the largest value that can fit in an unsigned long datum.
rhash_size

Query;

set at boot time

Number of entries in the resource hash table on this member system. Increasing the size of the resource hash table can shorten the lengths of the chains of which the table is comprised. By reducing the time it takes for the DLM to search these chains, this can improve DLM performance. The default is 8192 entries.
pdb_hash_size

Query;

set at boot time

Number of entries in the process hash table on this member system. Set this attribute to the approximate number of processes that will use the DLM on this system. The default is 64 entries.
kpdb_hash_size

Query;

set at boot time

This is equivalent to the pdb_hash_size attribute, except it relates to kernel threads using kernel DLM interfaces instead of user processes.
gdb_hash_size

Query;

set at boot time

Number of entries in the group lock container hash table on this member system. Set this attribute to the approximate number of group lock containers that will be on this member system. The default is 64 entries.
txid_hash_size

Query;

set at boot time

Number of entries in the transaction hash table on this member system. Set this attribute to the approximate number of transactions that will be active in the cluster. The default is 64 entries.
dlm_deadlock_wait

Query;

set at boot time

Length of time (in seconds) a lock waits on this member system to be included in a deadlock search. The default is 10 seconds.
dlm_dirwt

Query;

set at boot time

Directory weight value. Setting the directory weight value increases the likelihood that this node will be the director of a resource. Its value can range from 0 to 4, where 4 provides the highest likelihood and 0 is the default.
dlm_disable_grptx

Query;

set at boot time

When set, indicates that the DLM group container and transaction ID features have not been not enabled. Its value should always be false (0).
dlm_disable_rd

Query;

set at boot time

When set, indicates that the DLM recovery domain domain (persistent resource) support has not been not enabled. This should be a temporary condition during rolling upgrade. Once the upgrade is complete this attribute should always be false (0).
dlm_kernel_interfaces_enabled

Query;

set at boot time

When set, indicates that the DLM subsystem has been initialized such that the DLM kernel programming interfaces are usable. If not set, kernel calls into the DLM kernel API causes the DLM_ENOSYS status to be returned. This attribute is the equivalent of the dlm_enabled attribute but applies to the DLM kernel API.
dlm_validate_rsb

Query;

set at boot time or run time

Validate resource block. [Tuning not supported.]
dlm_locks_cfg

Query;

set at boot time

Number of locks configured on this member system at boot time. To improve lock startup performance, set this attribute to twice the number of expected locks.
dlm_deadlock_scan

Query;

set at boot time or run time

Number of seconds that determines how often the DLM scans the deadlock queue on this member system. The default is once per second.
dlm_zero_stats

Query;

set at boot time or run time

Reset all DLM statistics to zero (0).
dlm_rd_count

Query

Number of recovery domains in the cluster.
dlm_rd_in

Query

Number of recovery domain messages sent by this node.
dlm_rd_out

Query

Number of recovery domain messages received by this node.

Table B-5 lists the kernel attributes that configure the MEMORY CHANNEL network driver.

Table B-5:  MEMORY CHANNEL Network Driver Kernel Attributes

Attribute Type Description
dochecksum

Query

set at boot time and at run time

When set to 1 (the default), the node checksums all incoming and outgoing messages through Transmission Control Protocol/Internet Protocol (TCP/IP). When set to 0, checksums are not performed. Turning checksums off results in a slight increase in MEMORY CHANNEL performance. This attribute must be set to the same value on all cluster members. Once you have set this attribute on all member systems, you must halt the entire cluster and reboot each member to effect the change.
rx_mapping_enabled

Query

set at boot time and at run time

Enables or disables copy avoidance. By default, copy avoidance is off (rx_mapping_enabled=0). Turning copy avoidance on results in a slight increase in MEMORY CHANNEL performance. This attribute must be set to the same value on all cluster members. Once you have set this attribute on all member systems, you must halt the entire cluster and reboot each member to effect the change.

Table B-6 lists the MEMORY CHANNEL kernel attributes.

Table B-6:  MEMORY CHANNEL Kernel Attributes

Attribute Type Description
rm_char_connected Query Bitmap representing the nodes connected to a MEMORY CHANNEL hub.
rm_char_member Query Bitmap representing the nodes participating in the cluster.
rm_char_flags Query Flags. The flags attribute can have the following settings: RM_CHAR_FLAG_DUAL: Member participates in a no-single-point-of-failure, redundant MEMORY CHANNEL configuration. RM_CHAR_FLAG_PRIM_HUBLESS: MEMORY CHANNEL interconnect uses a MEMORY CHANNEL configuration in virtual hub mode or, in a redundant MEMORY CHANNEL configuration, the primary MEMORY CHANNEL interconnect uses virtual hub node. RM_CHAR_FLAG_ALT_HUBLESS: In a redundant MEMORY CHANNEL configuration, the secondary MEMORY CHANNEL interconnect uses a virtual hub mode.
rm_char_alloc_count Query Number of pages of MEMORY CHANNEL address space that have been allocated.
rm_char_prim_alt Query Zero (0) if the member is using the primary MEMORY CHANNEL interconnect in a redundant MEMORY CHANNEL configuration, 1 if it is using the secondary MEMORY CHANNEL interconnect.
rm_no_inheritance

Query;

set at boot time

When 1, causes the child process not to inherit certain MEMORY CHANNEL objects when a process forks. Because inheritance of these objects is not supported by internal accounting mechanisms, you must leave this attribute set to 1.
rm_rail_style

Query

set at boot time

Sets multirail reliability styles, as follows: 0 for RM_STYLE_SINGLE and 1 for RM_STYLE_FOP (failover pair). This attribute must be set to the same value on all cluster members. Once you have set this attribute on all member systems, you must halt the entire cluster and reboot each member to effect the change.

RM_STYLE_SINGLE (rm_rail_style=0) treats each single physical MEMORY CHANNEL interconnect (or rail) in a system as a logical connection. The MEMORY CHANNEL application programming interface (API) library (shipped with the TruCluster Production Server Software and TruCluster MEMORY CHANNEL Software products) can use multiple logical rails simultaneously at their aggregate bandwidth and memory capacity. Failover between rails is not supported for this multirail reliability style.

RM_STYLE_FOP (rm_rail_style=1) treats each pair of MEMORY CHANNEL adapters on a system as a single logical rail. There is no gain in bandwidth or memory capacity beyond that of a single physical connection; but if one physical connection fails, the other provides failover capability. RM_STYLE_FOP is the default rm_rail_style value.

For more information, see the TruCluster Production Server Software MEMORY CHANNEL Application Programming Interfaces manual.

rm_errors

Query;

set at boot time

Indicates the number of errors at boot time.
rm_error_interval

Query;

set at boot time

Specifies the interval during which the number of errors indicated in rm_error_threshold are monitored. The default interval is 60 seconds.
rm_error_threshold

Query;

set at boot time

Specifies the number of errors allowed by a rail during a given interval before the rail is considered faulty, and a failover occurs to another rail (if another rail has been specified as the failover rail).

Table B-7 lists the MEMORY CHANNEL API kernel attributes.

Table B-7:  MEMORY CHANNEL API Kernel Attributes

Attribute Type Description
mcs_dbg1

Query;

set at boot time

Tuning is not supported.
mcs_num_events

Query;

set at boot time

Tuning is not supported.
mcs_ignore tags

Query;

set at boot time

Tuning is not supported.
mcs_mcm_eps

Query;

set at boot time

Tuning is not supported.
mcs_rts

Query;

set at boot time

Tuning is not supported.


[Contents] [Prev. Chapter] [Next Chapter] [Index] [Help]