-- MIB file created 25-Oct-2005 17:48:57, by -- SMICng version 2.2.11-beta(PRO)(Solaris), January 20, 2001. Enterprise key cisco.com CISCO-APPLIANCE-REDUNDANCY-MIB DEFINITIONS ::= BEGIN -- From file: "CISCO-APPLIANCE-REDUNDANCY-MIB.my" -- Compile options "4 7 F H N O W 03 06 0B 0G 0N 0T" IMPORTS InetAddressType, InetAddress FROM INET-ADDRESS-MIB InterfaceIndexOrZero FROM IF-MIB DateAndTime, TruthValue, TimeInterval FROM SNMPv2-TC-v1 ciscoMgmt FROM CISCO-SMI Counter, Gauge FROM RFC1155-SMI OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215; ciscoApplianceRedundancyMIB OBJECT IDENTIFIER ::= { ciscoMgmt 458 } -- MODULE-IDENTITY -- LastUpdated -- 200412230000Z -- OrgName -- Cisco Systems, Inc. -- ContactInfo -- Cisco Systems -- Customer Service -- -- Postal: 170 W. Tasman Drive -- San Jose, CA 95134 -- USA -- -- Tel: +1 800 553-NETS -- -- E-mail: cs-wlse@cisco.com -- Descr -- This mib defines the SNMP objects to report the status of -- High Availability (HA) functionality in Cisco network -- management appliance devices. The HA functinality is -- achieved via the redundancy of network management appliance -- devices. -- -- An network management appliance is a device which combines -- hardware and software to provide specific network management -- services. Cisco WLSE, Wireless Service Engine (WLSE) is such -- an appliance. -- -- The High Availability is achieved via redundancy of -- appliances. This redundancy scheme is designed to support -- hardware or software failure of the appliances in a non- -- disruptive manner. Redundancy is achieved by configuring -- a cluster of two appliances with one common virtual IP -- address. The data is mirrored from the active appliance to -- the standby appliance at regular intervals. -- -- One of the appliances is in active mode, performing all -- normal functions. The other appliance is in warm standby -- mode; that is, the appliance is up but no application -- services are running. -- -- Both the active and standby appliances have their own IP -- addresses. The active appliance also owns the virtual IP -- address to which all the service requests are made. -- -- The active appliance and standby appliance periodically poll -- each other. If the standby appliance cannot reach the active -- appliance, it will become the active appliance. This is -- called a switchover event. The switchover can be caused by -- other causes, for example, via user commands. -- -- Both the active and standby appliances should implement -- this MIB and report any exceptions caused by switchover -- events. ciscoApplRedundancyMIBObjects OBJECT IDENTIFIER ::= { ciscoApplianceRedundancyMIB 1 } carConfigObjects OBJECT IDENTIFIER ::= { ciscoApplRedundancyMIBObjects 1 } carSwitchOverObjects OBJECT IDENTIFIER ::= { ciscoApplRedundancyMIBObjects 2 } carHAMIBNotifPrefix OBJECT IDENTIFIER ::= { ciscoApplianceRedundancyMIB 2 } carHAMIBNotifications OBJECT IDENTIFIER ::= { carHAMIBNotifPrefix 0 } ciscoHAMIBConformance OBJECT IDENTIFIER ::= { ciscoApplianceRedundancyMIB 3 } ciscoHAMIBCompliances OBJECT IDENTIFIER ::= { ciscoHAMIBConformance 1 } ciscoHAMIBGroups OBJECT IDENTIFIER ::= { ciscoHAMIBConformance 2 } CarRedundancyState ::= INTEGER { notConfigured(1), starting(2), active(3), preStandby(4), standby(5), activeLostStandby(6), activeLostNetwork(7), standbyLostNetwork(8) } -- TEXTUAL-CONVENTION -- Status -- mandatory -- Descr -- States of the HA redundancy: -- -- notConfigured - The appliance is not configured for -- redundancy. -- -- starting - The appliance is configured for redundancy -- and is initializing. This state could -- apply to both active and standby -- appliances. -- -- active - The appliance is the active appliance. -- -- preStandby - The appliance is configured to be -- standby and is attempting to restore -- data from the active appliance and is not -- yet in the standby mode. -- -- standby - The appliance is warm standby mode. -- -- activeLostStandby - The active appliance is not getting any -- response from the standby appliance. -- -- activeLostNetwork - The active appliance is not getting any -- response from the standby appliance or -- from the default gateway. There is -- possibly network issue. -- -- standbyLostNetwork - The standby appliance is not getting any -- response from the active appliance or -- from the default gateway. There is -- possibly network issue. CarSwitchOverReason ::= INTEGER { lossConnWithActive(1), forcedSwitchOver(2), unknown(3) } -- TEXTUAL-CONVENTION -- Status -- mandatory -- Descr -- Cause of HA switchover event. -- -- lossConnWithActive - Switchover is caused by loss of -- connectivity to active appliance. -- -- forcedSwitchOver - Switchover is caused by user command. -- -- unknown - Unknown reason. carRedundancySyncInterval OBJECT-TYPE SYNTAX TimeInterval -- Rsyntax INTEGER(0..2147483647) ACCESS read-only STATUS mandatory DESCRIPTION "Time interval at which the active and standby appliances are synchronized. Synchronization consists of incrementally backing up the data on the active appliance and restoring on the standby appliance." ::= { carConfigObjects 1 } carRedundancyCheckInterval OBJECT-TYPE SYNTAX TimeInterval -- Rsyntax INTEGER(0..2147483647) ACCESS read-only STATUS mandatory DESCRIPTION "Time interval to check the availability status of each appliance. Both the active and standby appliances will check the status of each other in this time interval. If the standby appliance is not able to connect to the active appliance during this check, it will become the active appliance." ::= { carConfigObjects 2 } carRedundancyState OBJECT-TYPE SYNTAX CarRedundancyState -- Rsyntax INTEGER { -- notConfigured(1), -- starting(2), -- active(3), -- preStandby(4), -- standby(5), -- activeLostStandby(6), -- activeLostNetwork(7), -- standbyLostNetwork(8) -- } ACCESS read-only STATUS mandatory DESCRIPTION "The HA redundancy state of this appliance device." DEFVAL { notConfigured } ::= { carConfigObjects 3 } carNotificationEnabled OBJECT-TYPE SYNTAX TruthValue -- Rsyntax INTEGER { -- true(1), -- false(2) -- } ACCESS read-only STATUS mandatory DESCRIPTION "Enable or disable HA switchover event notifications via SNMP." DEFVAL { false } ::= { carConfigObjects 4 } carHAAddressTable OBJECT-TYPE SYNTAX SEQUENCE OF CarHAAddressEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table keeps the current configuration of the address information of the active and standby appliances. There is an entry in this table corresponding to each network interface that is configured for redundancy. Thus, the number of entries in this table corresponds to the number of interfaces configured for redundancy." ::= { carConfigObjects 5 } carHAAddressEntry OBJECT-TYPE SYNTAX CarHAAddressEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing address information for HA configuration on a network interface." INDEX { carHAAddrTableIndex } ::= { carHAAddressTable 1 } CarHAAddressEntry ::= SEQUENCE { carHAAddrTableIndex InterfaceIndexOrZero, carVirtualAddressType InetAddressType, carVirtualAddress InetAddress, carMyAddressType InetAddressType, carMyAddress InetAddress, carPeerAddressType InetAddressType, carPeerAddress InetAddress } carHAAddrTableIndex OBJECT-TYPE SYNTAX InterfaceIndexOrZero -- Rsyntax INTEGER(0..2147483647) ACCESS not-accessible STATUS mandatory DESCRIPTION "This index matches the interface number for which the Virtual IP configuration is maintained. For example, the Virtual IP configured on interface eth0 will be index 0. Entry for eth1 will be index 1,... and so on." ::= { carHAAddressEntry 1 } carVirtualAddressType OBJECT-TYPE SYNTAX InetAddressType -- Rsyntax INTEGER { -- ?? enum value of zero may cause problems -- unknown(0), -- ipv4(1), -- ipv6(2), -- ipv4z(3), -- ipv6z(4), -- dns(16) -- } ACCESS read-only STATUS mandatory DESCRIPTION "The type of address stored in carVirtualAddress." ::= { carHAAddressEntry 2 } carVirtualAddress OBJECT-TYPE SYNTAX InetAddress -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The virtual IP address configured for this interface. The type of this mib variable is defined in carVirtualAddressType. This address binds to the active appliance at all times. All the management requests should be made to this address." ::= { carHAAddressEntry 3 } carMyAddressType OBJECT-TYPE SYNTAX InetAddressType -- Rsyntax INTEGER { -- ?? enum value of zero may cause problems -- unknown(0), -- ipv4(1), -- ipv6(2), -- ipv4z(3), -- ipv6z(4), -- dns(16) -- } ACCESS read-only STATUS mandatory DESCRIPTION "The type of address stored in carMyAddress" ::= { carHAAddressEntry 4 } carMyAddress OBJECT-TYPE SYNTAX InetAddress -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The IP address of the interface configured for this HA configuration in this appliance. The type of this mib variable is defined in carMyAddressType. Note this value will not be affected by switchover events." ::= { carHAAddressEntry 5 } carPeerAddressType OBJECT-TYPE SYNTAX InetAddressType -- Rsyntax INTEGER { -- ?? enum value of zero may cause problems -- unknown(0), -- ipv4(1), -- ipv6(2), -- ipv4z(3), -- ipv6z(4), -- dns(16) -- } ACCESS read-only STATUS mandatory DESCRIPTION "The type of address stored in carPeerAddress" ::= { carHAAddressEntry 6 } carPeerAddress OBJECT-TYPE SYNTAX InetAddress -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The IP address of the interface configured for this HA configuration in the peer appliance. The type of this mib variable is defined in carPeerAddressType. Note this value will not be affected by switchover events." ::= { carHAAddressEntry 7 } carLastSwitchOverReason OBJECT-TYPE SYNTAX CarSwitchOverReason -- Rsyntax INTEGER { -- lossConnWithActive(1), -- forcedSwitchOver(2), -- unknown(3) -- } ACCESS read-only STATUS mandatory DESCRIPTION "Cause for the most recent switchover." ::= { carSwitchOverObjects 1 } carLastSwitchOverTime OBJECT-TYPE SYNTAX DateAndTime -- Rsyntax OCTET STRING(SIZE(8|11)) ACCESS read-only STATUS mandatory DESCRIPTION "The local date and time when the last switchover event occurred and was logged to the system." ::= { carSwitchOverObjects 2 } carTotalSwitchOvers OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory DESCRIPTION "The number of all HA switchover events." ::= { carSwitchOverObjects 3 } carMaxSwitchOverHistoryRecords OBJECT-TYPE SYNTAX Gauge(0..1024) ACCESS read-only STATUS mandatory DESCRIPTION "The maximun number of records to keep in carSwitchOverHistoryTable. New records will replace the old records on a first-in-first-out basis. A value of 0 indicates no history will be retained." DEFVAL { 20 } ::= { carSwitchOverObjects 4 } carSwitchOverHistoryTable OBJECT-TYPE SYNTAX SEQUENCE OF CarSwitchOverHistEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table keeps an history of HA switchover events. The maximum number of records is equal or less than carMaxSwitchOverRecords." ::= { carSwitchOverObjects 5 } carSwitchOverHistEntry OBJECT-TYPE SYNTAX CarSwitchOverHistEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing information about a HA switchover event." INDEX { carSWHistTableIndex } ::= { carSwitchOverHistoryTable 1 } CarSwitchOverHistEntry ::= SEQUENCE { carSWHistTableIndex Gauge, carSWHistActiveNodeAddressType InetAddressType, carSWHistActiveNodeAddress InetAddress, carSWHistStandbyNodeAddressType InetAddressType, carSWHistStandbyNodeAddress InetAddress, carSWHistEventTime DateAndTime, carSWHistEventReason CarSwitchOverReason } carSWHistTableIndex OBJECT-TYPE SYNTAX Gauge(1..4294967295) ACCESS not-accessible STATUS mandatory DESCRIPTION "An monotonically increasing number for the sole purpose of indexing entries. When it reaches maximum value, the agent sets it back to 1." ::= { carSwitchOverHistEntry 1 } carSWHistActiveNodeAddressType OBJECT-TYPE SYNTAX InetAddressType -- Rsyntax INTEGER { -- ?? enum value of zero may cause problems -- unknown(0), -- ipv4(1), -- ipv6(2), -- ipv4z(3), -- ipv6z(4), -- dns(16) -- } ACCESS read-only STATUS mandatory DESCRIPTION "Represents the type of address stored in carSWHistActiveNodeAddress." ::= { carSwitchOverHistEntry 2 } carSWHistActiveNodeAddress OBJECT-TYPE SYNTAX InetAddress -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The address of the active appliance after the switchover event. carSWHistActiveNodeAddressType specifies the type of this mib variable." ::= { carSwitchOverHistEntry 3 } carSWHistStandbyNodeAddressType OBJECT-TYPE SYNTAX InetAddressType -- Rsyntax INTEGER { -- ?? enum value of zero may cause problems -- unknown(0), -- ipv4(1), -- ipv6(2), -- ipv4z(3), -- ipv6z(4), -- dns(16) -- } ACCESS read-only STATUS mandatory DESCRIPTION "Represents the type of address stored in carSWHistStandbyNodeAddress." ::= { carSwitchOverHistEntry 4 } carSWHistStandbyNodeAddress OBJECT-TYPE SYNTAX InetAddress -- Rsyntax OCTET STRING(SIZE(0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "The address of the standby appliance after the switchover event. carSWHistStandbyNodeAddressType specifies the type of this mib variable." ::= { carSwitchOverHistEntry 5 } carSWHistEventTime OBJECT-TYPE SYNTAX DateAndTime -- Rsyntax OCTET STRING(SIZE(8|11)) ACCESS read-only STATUS mandatory DESCRIPTION "The local date and time when the switchover event occurred and was logged to the system." ::= { carSwitchOverHistEntry 6 } carSWHistEventReason OBJECT-TYPE SYNTAX CarSwitchOverReason -- Rsyntax INTEGER { -- lossConnWithActive(1), -- forcedSwitchOver(2), -- unknown(3) -- } ACCESS read-only STATUS mandatory DESCRIPTION "Cause of the switchover event." ::= { carSwitchOverHistEntry 7 } carSwitchOverNotification TRAP-TYPE -- Reverse mappable trap ENTERPRISE carHAMIBNotifPrefix VARIABLES { carSWHistEventTime, carSWHistEventReason, carSWHistActiveNodeAddressType, carSWHistActiveNodeAddress, carSWHistStandbyNodeAddressType, carSWHistStandbyNodeAddress } -- Status -- mandatory DESCRIPTION "This notification is sent when a switchover event happened. This notification can be enabled or disabled via carNotificationEnabled." ::= 1 ciscoHAConfigDataGroup OBJECT IDENTIFIER ::= { ciscoHAMIBGroups 1 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- A collection of objects that enable the switchover event -- notification for the HA network elements. -- objects -- carVirtualAddressType, carVirtualAddress, carMyAddressType, -- carMyAddress, carPeerAddressType, carPeerAddress, -- carRedundancySyncInterval, carRedundancyCheckInterval, -- carRedundancyState, carNotificationEnabled ciscoHASwitchOverDataGroup OBJECT IDENTIFIER ::= { ciscoHAMIBGroups 2 } -- OBJECT-GROUP -- Status -- mandatory -- Descr -- A collection of objects that record the switchover events -- for HA network elements. -- objects -- carLastSwitchOverReason, carLastSwitchOverTime, -- carTotalSwitchOvers, carMaxSwitchOverHistoryRecords, -- carSWHistActiveNodeAddressType, carSWHistActiveNodeAddress, -- carSWHistStandbyNodeAddressType, carSWHistStandbyNodeAddress, -- carSWHistEventTime, carSWHistEventReason ciscoHAExceptionNotifGroup OBJECT IDENTIFIER ::= { ciscoHAMIBGroups 3 } -- NOTIFICATION-GROUP -- Status -- mandatory -- Descr -- A collection of the monitored exception events. -- notifications -- carSwitchOverNotification ciscoHAMIBCompliance OBJECT IDENTIFIER ::= { ciscoHAMIBCompliances 1 } -- MODULE-COMPLIANCE -- Status -- mandatory -- Descr -- The compliance statement for entities which implement the -- CISCO-APPLIANCE-HIGH-AVAILABILITY-MIB. -- Module -- >>current<< -- MandGroup -- ciscoHAConfigDataGroup -- MandGroup -- ciscoHASwitchOverDataGroup -- OptGroup -- ciscoHAExceptionNotifGroup END