-- ***************************************************************** -- MY CLUSTER MIB V1.0 -- -- $Copyright$ -- -- ***************************************************************** MY-CLUSTER-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32 FROM SNMPv2-SMI MacAddress, TimeStamp, DisplayString, RowStatus FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF EnabledStatus FROM P-BRIDGE-MIB myMgmt FROM MY-SMI; myClusterMIB MODULE-IDENTITY LAST-UPDATED "200304010000Z" ORGANIZATION "$Company$" CONTACT-INFO " Tel: $Telephone$ E-mail: $E-mail$" DESCRIPTION "The MIB module for the management of a group of devices called a 'cluster'. A cluster comprises: 1. A command switch, which is a device that can provide a single point of management (including SNMP, Web Console and CLI/Telnet Console) for the devices in the cluster; 2. Zero or more expansion switches, or called the cluster members throughout the context of this MIB, which are devices that can be managed via a command switch. The command switch is also considered as a cluster member. Thus it has an entry in the MIB tables defined below for cluster members. Only the command switch IP address, passwords, and SNMP community strings need to be configured in order to provide management access to members of the cluster. The Entity MIB is not cross-referenced from this MIB. To determine if a particular device can be a command switch or a member switch please refer to the device's user's guide." REVISION "200304010000Z" DESCRIPTION "Initial version of this mib." ::= { myMgmt 31 } myClusterMIBObjects OBJECT IDENTIFIER ::= { myClusterMIB 1 } -- MIB contains 3 groups scStatus OBJECT IDENTIFIER ::= { myClusterMIBObjects 1 } scMember OBJECT IDENTIFIER ::= { myClusterMIBObjects 2 } scCandidate OBJECT IDENTIFIER ::= { myClusterMIBObjects 3 } -- The Cluster Status Group scStatusClusterName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..16)) MAX-ACCESS read-write STATUS current DESCRIPTION "The name of the cluster. Cluster command switch functionality is only enabled if this object is a non-NULL string. Strings containing all blanks or a NULL string will disable the cluster. This object and scStatusClusterMode in this MIB are the only objects that will be instantiated if the command switch functionality is not enabled. This object in command switch or candidate switch is read-write, and in candidate switch will return null string when retrive. But in member switch this object is read-only ." DEFVAL { "" } ::= { scStatus 1 } scStatusClusterMode OBJECT-TYPE SYNTAX INTEGER { commandDevice(1), memberDevice(2), none(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The mode of the device. A device can become a member switch only when it is added to the cluster at the command switch. For devices that do not belong to any cluster, the scStatusClusterMode is set to 'none'." ::= { scStatus 2 } scStatusClusterStatus OBJECT-TYPE SYNTAX EnabledStatus MAX-ACCESS read-write STATUS current DESCRIPTION "Wether the device can be added to a cluster, if this device is already in a cluster, will be delete from cluster(if in the cluster) and will never be added to any cluster." DEFVAL { 1 } ::= { scStatus 3 } scStatusCommanderMacAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The management MAC address of the command switch of the cluster, ie. the CPU MAC address. This object is not-accessible for candidate switch." ::= { scStatus 4 } scStatusTimeOfLastChange OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime on the command switch when the last time the value of an instance of scMemberOperStatus changed. The value 0 indicates that no member's status has ever changed since commander system initialization." DEFVAL { 0 } ::= { scStatus 5 } scStatusMaxNumberOfMembers OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum number of cluster members allowed in the cluster. The command switch is considered as a cluster member also. the max number of cluster members is 20" ::= { scStatus 6 } scStatusLastFailureAddMember OBJECT-TYPE SYNTAX INTEGER { none(1), password(2), overmax(3), noncandidate(4), memberNumberInUse(5), unreachable(6), communityStringFull(7) } MAX-ACCESS read-only STATUS current DESCRIPTION "The reason why the last NMS was unable to add a switch to be a member of the cluster. none: Not the status defined below including success and other error status. password: The member has an enable password configured. overmax: Adding the member exceeds the maximum number of cluster members supported by the command switch. See ccStatusMaxNumberOfMembers. noncandidate: The member is not a candidate switch, or it does not show up in the candidate table. memberNumberInUse: The member number is used by an existing member in the cluster. unreachable: The member is a candidate but is unreachable or has no connectivity. communityStringFull: The member is a candidate but its community string table is full." ::= { scStatus 7 } -- The Cluster Member Table scMemberTable OBJECT-TYPE SYNTAX SEQUENCE OF ScMemberEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one row per cluster member, including the command switch." ::= { scMember 1 } scMemberEntry OBJECT-TYPE SYNTAX ScMemberEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry containing cluster management information applicable to a particular cluster member. If the entry contain the command switch, this entry cannot be modified." INDEX { scMemberMacAddress } ::= { scMemberTable 1 } ScMemberEntry ::= SEQUENCE { scMemberMacAddress MacAddress, scMemberNumber Unsigned32, scMemberOperStatus INTEGER, scMemberDeviceID MacAddress, scMemberRowStatus RowStatus } scMemberMacAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The management MAC address of the member device." ::= { scMemberEntry 1 } scMemberNumber OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "An arbitrary value which uniquely identifies the cluster member switch number. It ranges from 0 to scStatusMaxNumberOfMembers - 1. incluing the command switch." ::= { scMemberEntry 2 } scMemberOperStatus OBJECT-TYPE SYNTAX INTEGER { active(1), inactive(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The status of cluster management connectivity between the command switch and a cluster member. Cluster management connectivity is determined by the exchange of cluster management messages between the command switch and a cluster member. A member that has failed to exchange cluster management messages with the command switch is deemed to be inactive. Otherwise, it is deemed to be active." ::= { scMemberEntry 3 } scMemberDeviceID OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The value of MacAddress used for identify the device in lldp pdu." ::= { scMemberEntry 4 } scMemberRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row.The devices currently eligible to be added into the cluster are listed in the scCandidateTable. An attempt to add a new member may fail. See scStatusLastFailureAddMember for possible reasons for that failure,consider security ,the value of active is not be used." ::= { scMemberEntry 5 } -- The Cluster Candidate Table scCandidateTable OBJECT-TYPE SYNTAX SEQUENCE OF ScCandidateEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one row per cluster candidate, A cluster candidate is a device that is currently eligible to be added to the cluster of a command switch. A device is eligible if it satisfies the following conditions: 1. It supports the cluster management protocol. The entries in this table and the entries in scMemberTable are mutually exclusive at all times. That is, any device that is a cluster member never shows up in the scCandidateTable or is never a candidate at the same time . Also, any candidate that shows up in scCandidateTable should not appear in scMemberTable." ::= { scCandidate 1 } scCandidateEntry OBJECT-TYPE SYNTAX ScCandidateEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry pertaining to a single candidate device." INDEX { scCandidateMacAddress } ::= { scCandidateTable 1 } ScCandidateEntry ::= SEQUENCE { scCandidateMacAddress MacAddress } scCandidateMacAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The management MAC address of a device qualified to to be a cluster member of the command switch cluster." ::= { scCandidateEntry 1 } -- traps definition myClusterTraps OBJECT IDENTIFIER ::= { myClusterMIB 2 } memberStateChangeTrap NOTIFICATION-TYPE OBJECTS { scMemberOperStatus} STATUS current DESCRIPTION "while the state of member switch changed, then this trap will be sent. either state of member switch change from active to inactive or from inactive to active." ::= { myClusterTraps 1} -- Conformance Information myClusterMIBConformance OBJECT IDENTIFIER ::= { myClusterMIB 3 } myClusterMIBCompliances OBJECT IDENTIFIER ::= { myClusterMIBConformance 1 } myClusterMIBGroups OBJECT IDENTIFIER ::= { myClusterMIBConformance 2 } -- Compliance statements myClusterCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for the CLUSTER MIB." MODULE -- this module MANDATORY-GROUPS { myClusterStatusGroup, myClusterMemberStatusGroup, myClusterMemberGroup, myClusterCandidateGroup } ::= { myClusterMIBCompliances 1 } -- MIB groupings myClusterStatusGroup OBJECT-GROUP OBJECTS { scStatusTimeOfLastChange, scStatusMaxNumberOfMembers, scStatusLastFailureAddMember } STATUS current DESCRIPTION "The collection of objects which are used to represent the status of the cluster. These objects are accessible on the command switch." ::= { myClusterMIBGroups 1 } myClusterMemberStatusGroup OBJECT-GROUP OBJECTS { scStatusClusterName, scStatusClusterMode, scStatusClusterStatus, scStatusCommanderMacAddress } STATUS current DESCRIPTION "The collection of objects which are used to represent the status of members of the cluster. These objects are accessible on the cluster members and the command switch." ::= { myClusterMIBGroups 2 } myClusterCandidateStatusGroup OBJECT-GROUP OBJECTS { scStatusClusterName, scStatusClusterMode, scStatusClusterStatus } STATUS current DESCRIPTION "The collection of objects which are used to represent the status of single switches which are not in any cluster. These objects are accessible on any single switch." ::= { myClusterMIBGroups 3 } myClusterMemberGroup OBJECT-GROUP OBJECTS { scMemberOperStatus, scMemberNumber, scMemberDeviceID, scMemberRowStatus } STATUS current DESCRIPTION "The collection of objects which are used to represent the members of a cluster. These objects are accessible on the command switch only." ::= { myClusterMIBGroups 4 } myClusterCandidateGroup OBJECT-GROUP OBJECTS { scCandidateMacAddress } STATUS current DESCRIPTION "The collection of objects which are used to represent cluster candidates. These objects are accessible on the command switch only." ::= { myClusterMIBGroups 5 } END