#-MIBFILE: hp-mccluster.mib

HP-MCCLUSTER DEFINITIONS ::= BEGIN


DisplayString ::=
	OCTET STRING (SIZE(0..255))

PhysAddress ::=
	OCTET STRING

MacAddress ::=
	OCTET STRING (SIZE(6))

TruthValue ::=
	INTEGER {
	true(1),
	false(2)
	}

TestAndIncr ::=
	INTEGER (0..2147483647)

AutonomousType ::=
	OBJECT IDENTIFIER

InstancePointer ::=
	OBJECT IDENTIFIER

VariablePointer ::=
	OBJECT IDENTIFIER

RowPointer ::=
	OBJECT IDENTIFIER

RowStatus ::=
	INTEGER {
	active(1),
	notInService(2),
	notReady(3),
	createAndGo(4),
	createAndWait(5),
	destroy(6)
	}

TimeStamp ::=
	TimeTicks

TimeInterval ::=
	INTEGER (0..2147483647)

DateAndTime ::=
	OCTET STRING (SIZE(8|11))

StorageType ::=
	INTEGER {
	other(1),
	volatile(2),
	nonVolatile(3),
	permanent(4),
	readOnly(5)
	}

TDomain ::=
	OBJECT IDENTIFIER

TAddress ::=
	OCTET STRING (SIZE(1..255))

hp OBJECT IDENTIFIER ::= { enterprises 11 }

nm OBJECT IDENTIFIER ::= { hp 2 }

system OBJECT IDENTIFIER ::= { nm 3 }

general OBJECT IDENTIFIER ::= { system 1 }

hpmcCluster OBJECT IDENTIFIER ::= { general 6 }

hpmcClusterObjects OBJECT IDENTIFIER ::= { hpmcCluster 1 }

hpmcClusterTypes OBJECT IDENTIFIER ::= { hpmcCluster 2 }

hpmcTypeSpecific OBJECT IDENTIFIER ::= { hpmcCluster 3 }

hpmcGenInfo OBJECT IDENTIFIER ::= { hpmcClusterObjects 1 }

hpmcMemberInfo OBJECT IDENTIFIER ::= { hpmcClusterObjects 2 }

hpmcServiceGuard OBJECT IDENTIFIER ::= { hpmcClusterTypes 1 }

hpmcNFSDiskless OBJECT IDENTIFIER ::= { hpmcClusterTypes 2 }

hpmcMCSE OBJECT IDENTIFIER ::= { hpmcClusterTypes 3 }

hpmcLockManager OBJECT IDENTIFIER ::= { hpmcClusterTypes 4 }

hpmcMSCS OBJECT IDENTIFIER ::= { hpmcClusterTypes 5 }

hpmcNumClusters OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS obsolete
	DESCRIPTION "This variable is obsolete."
	::= { hpmcGenInfo 1 }


hpmcClusterTable OBJECT-TYPE
	SYNTAX SEQUENCE OF HpmcClusterEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "A table containing general information about
the various clusters to which this node belongs."
	::= { hpmcGenInfo 2 }


hpmcClusterEntry OBJECT-TYPE
	SYNTAX HpmcClusterEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "An entry providing information about a cluster
to which this node belongs."
	INDEX { hpmcClusterIndex  }

	::= { hpmcClusterTable 1 }

hpmcClusterEntry ::=
	SEQUENCE {
		hpmcClusterIndex Integer32,
		hpmcClusterName DisplayString,
		hpmcClusterType OBJECT IDENTIFIER,
		hpmcClusterDescr DisplayString,
		hpmcClusterSWVersion DisplayString,
		hpmcClusterState INTEGER,
		hpmcClusterLastStateChange DateAndTime,
		hpmcClusterLastReconfig DateAndTime,
		hpmcClusterPrimaryNode DisplayString,
		hpmcNodeStatus INTEGER,
		hpmcNodeLastEvent Integer32,
		hpmcNodeLastEventTime DateAndTime,
		hpmcClusterUpTime TimeTicks
		}

hpmcClusterIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "A unique value for each cluster to which this node
belongs.  This value is calculated by taking the
last element of the corresponding hpmcClusterType
object ID, multiplying it by 2^16 (shifting this
value left 16 bits) and adding a 16 bit value
(ranging from 0 to 2^16-1) for the cluster instance."
	::= { hpmcClusterEntry 1 }


hpmcClusterName OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The name given to this cluster, which will
distinguish it from other clusters of the same
type.  No two clusters of the same type on a
single node may have the same name."
	::= { hpmcClusterEntry 2 }


hpmcClusterType OBJECT-TYPE
	SYNTAX OBJECT IDENTIFIER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "An unambiguous identifier of the cluster type.  These
values should be taken from the Object ID tree rooted 
below hpmcClusterTypes."
	::= { hpmcClusterEntry 3 }


hpmcClusterDescr OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "A description of the cluster.  By default this might
simply be a textual description of the cluster type,
such as `MC Service Guard'.  However it may be 
desirable to allow the enduser to override this
description through configuration to describe the 
actual purpose being served by the cluster.  For
example `HA Customer Database Cluster'."
	::= { hpmcClusterEntry 4 }


hpmcClusterSWVersion OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Versioning information describing the SW component(s),
residing on this node, which comprise this cluster type."
	::= { hpmcClusterEntry 5 }


hpmcClusterState OBJECT-TYPE
	SYNTAX INTEGER {
	unknown(-1),
	down(0),
	up(1)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Describes this node's view of the cluster state.
Note that insufficient information, such as
separation from other active cluster elements,
could result in this state information being out
of date.  In this case the unknown state should be
used."
	::= { hpmcClusterEntry 6 }


hpmcClusterLastStateChange OBJECT-TYPE
	SYNTAX DateAndTime
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Indicates at what time the node entered the state
described by hpmcClusterState."
	::= { hpmcClusterEntry 7 }


hpmcClusterLastReconfig OBJECT-TYPE
	SYNTAX DateAndTime
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Indicates when the configuration for this cluster
was last changed."
	::= { hpmcClusterEntry 8 }


hpmcClusterPrimaryNode OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Indicates a node in the cluster which plays a
`special' role, and may contain additional MIB
information not distributed to other nodes in the
cluster.  A value of ' ' (single blank character)
indicates an unknown or nonexistent primary node."
	::= { hpmcClusterEntry 9 }


hpmcNodeStatus OBJECT-TYPE
	SYNTAX INTEGER {
	invalid(0),
	initializing(1),
	failed(2),
	halted(3),
	reconfiguring(4),
	running(5),
	unknown(6),
	paused(7)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The current state of the node relative to the cluster
in this row."
	::= { hpmcClusterEntry 10 }


hpmcNodeLastEvent OBJECT-TYPE
	SYNTAX INTEGER {
	none(0),
	down(1),
	up(2),
	reconfiguring(3),
	joining(4),
	leaving(5),
	changedClusterConfiguration(6),
	notApplicable(7),
	paused(8)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The last event on this node to alter
hpmcNodeStatus.  For cluster types that do not use
events, the value is none (0)."
	::= { hpmcClusterEntry 11 }


hpmcNodeLastEventTime OBJECT-TYPE
	SYNTAX DateAndTime
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Indicates at what time the node entered the status
described by hpmcNodeStatus.  A value of 0
indicates that the time is unknown or inapplicable
(such as when the hpmcNodeLastEvent is none (0))."
	::= { hpmcClusterEntry 12 }


hpmcClusterUpTime OBJECT-TYPE
	SYNTAX TimeTicks
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The time (in hundredths of a second) since this
instance of the cluster was last started.  Dynamic
reconfiguration or partial availability of the
cluster does not reset the cluster uptime.  A value
of 0 indicates that the time is unknown by this node."
	::= { hpmcClusterEntry 13 }


hpmcCNodeTable OBJECT-TYPE
	SYNTAX SEQUENCE OF HpmcCNodeEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "A table containing an entry for each node which
is a member of the cluster."
	::= { hpmcMemberInfo 1 }


hpmcCNodeEntry OBJECT-TYPE
	SYNTAX HpmcCNodeEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "An entry providing information about the members
of a given cluster.  It is indexed by both the
Cluster Index and nodeID of the member node."
	INDEX { hpmcClusterIndex , hpmcNodeID }

	::= { hpmcCNodeTable 1 }

hpmcCNodeEntry ::=
	SEQUENCE {
		hpmcNodeID Integer32,
		hpmcNodeName DisplayString,
		hpmcNodeRole INTEGER
		}

hpmcNodeID OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "A unique ID given to this node from the context of
a particular cluster.  A node may have different
values for each of the different clusters it
belongs to."
	::= { hpmcCNodeEntry 1 }


hpmcNodeName OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "A name given to this node, typically its hostname,
but may be a cluster specific name for identifying
each member."
	::= { hpmcCNodeEntry 2 }


hpmcNodeRole OBJECT-TYPE
	SYNTAX INTEGER {
	undefined(0),
	client(1),
	server(2),
	peer(3),
	coordinator(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Indicates this node's role in the cluster.  A cluster
does not need to have a member fulfilling each role."
	::= { hpmcCNodeEntry 3 }


END

