-- ****************************************************************************
--
--        DIGITAL Cluster Management MIB version V1.0 svrntclu.mib
--         Management Information Base for SNMP Network Management
--
--
--      Copyright 1992,2003 Hewlett-Packard Development Company, L.P.
--
--      Hewlett-Packard Company shall not be liable for technical or
--      editorial errors or omissions contained herein. The information in
--      this document is provided "as is" without warranty of any kind and
--      is subject to change without notice. The warranties for HP products
--      are set forth in the express limited warranty statements
--      accompanying such products. Nothing herein should be construed as
--      constituting an additional warranty.
--
--      Confidential computer software. Valid license from HP required for
--      possession, use or copying. Consistent with FAR 12.211 and 12.212,
--      Commercial Computer Software, Computer Software Documentation, and
--      Technical Data for Commercial Items are licensed to the U.S.
--      Government under vendor's standard commercial license.
--
--      Refer to the READMIB.RDM file for more information about the
--      organization of the information in the Compaq Enterprise.
--
--      The Digital Enterprise number is 36.
--      The ASN.1 prefix to, and including the Digital Enterprise is:
--           1.3.6.1.4.1.36
--
-- Description:
-- This MIB extension, private to Digital Equipment Corp., allows for the
-- management of DIGITAL's cluster products and also Microsoft's NT cluster
-- product.
--

SVRNTCLU-MIB DEFINITIONS ::= BEGIN


IMPORTS
    mgmt, enterprises, NetworkAddress, IpAddress
        FROM RFC1155-SMI
    OBJECT-TYPE
        FROM RFC-1212
    DisplayString
        FROM RFC1213-MIB;

 -- DEC-MIB { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) 36 }

    dec OBJECT IDENTIFIER ::= { enterprises 36 }
    ema OBJECT IDENTIFIER ::= { dec 2 }

 -- textual conventions for types

ObjectType ::= INTEGER {
                objectUnknown(1) ,
                objectOther(2) ,
                share(3) ,
                disk(4) ,
                application(5) ,
                ipAddress (6) ,
                fileShare (7)
            }
PolicyType ::= INTEGER {
                policyUnknown(1) ,
                policyOther(2) ,
                inOrder(3) ,
                random(4) ,
                leastLoad(5) ,
                roundRobin(6)
            }
Boolean ::= INTEGER {
                true(1) ,
                false(2)
            }
--  The DateAndTime size can be only 8 or 11 bytes long.
DateAndTime ::= DisplayString
FailoverReason ::= INTEGER {
                reasonUnknown(1) ,
                reasonOther(2) ,
                reconfiguration(3) , --  transaction is a result of human intervention
                failure(4) , --  transaction is a result of hardware or software failure
                failback(5) --  transaction is a result of a failback event
            }

--  This MIB extension, private to Digital Equipment Corp., allows for
--  management of Digital and Microsoft NT clusters.
--
mib-extensions-1                OBJECT IDENTIFIER ::= { ema 18 }
svrSystem                       OBJECT IDENTIFIER ::= { mib-extensions-1 22 }
svrCluster                      OBJECT IDENTIFIER ::= { svrSystem 4 }
svrNTClu                        OBJECT IDENTIFIER ::= { svrCluster 2 }

-- groups in svrNTClu

svrNTCluObjects                 OBJECT IDENTIFIER ::= { svrNTClu 1 }

-- groups in svrCluObjects

svrNTCluMibInfo                 OBJECT IDENTIFIER ::= { svrNTCluObjects 1 }
svrNTCluClusterInfo             OBJECT IDENTIFIER ::= { svrNTCluObjects 2 }

--
-- svrNTCluMibInfo
--
-- current state of this MIB
--

ntcExMgtMibMajorRev OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Major revision of this MIB. Should equal 1."
    ::= { svrNTCluMibInfo 1 }

ntcExMgtMibMinorRev OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Minor Revision of the MIB. Should equal 0."
    ::= { svrNTCluMibInfo 2 }


--
--  svrNTCluClusterInfo
--
--  Lists and states of cluster members, groups and objects

ntcExAlias OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Cluster alias name."
    ::= { svrNTCluClusterInfo 1 }

--
-- unused OID's left for additional values if needed
--

ntcExGroupTable OBJECT-TYPE
    SYNTAX SEQUENCE OF NtcExGroupEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Table of ntcExGroupEntry"
    ::= { svrNTCluClusterInfo 7 }

ntcExGroupEntry OBJECT-TYPE
    SYNTAX NtcExGroupEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "lists all cluster groups for this cluster"
    INDEX    {
             ntcExGroupIndex
             }
    ::= { ntcExGroupTable 1 }

NtcExGroupEntry  ::=
    SEQUENCE {
        ntcExGroupIndex
            INTEGER,
        ntcExGroupName
            DisplayString,
        ntcExGroupComment
            DisplayString,
        ntcExGroupOnLine
            INTEGER,
        ntcExGroupFailedOver
            Boolean,
        ntcExGroupPolicy
            PolicyType,
        ntcExGroupReevaluate
            Boolean,
        ntcExGroupMembers
            DisplayString,
        ntcExGroupObjects
            DisplayString
             }

ntcExGroupIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Unique index for each entry."
    ::= { ntcExGroupEntry 1 }

ntcExGroupName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The group name."
    ::= { ntcExGroupEntry 2 }

ntcExGroupComment OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Description of the group."
    ::= { ntcExGroupEntry 3 }

ntcExGroupOnLine OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Index in the member table of the node that currently controls this
        group."
    ::= { ntcExGroupEntry 4 }

ntcExGroupFailedOver OBJECT-TYPE
    SYNTAX  Boolean
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "True if this group is failed over from the primary Online server."
    ::= { ntcExGroupEntry 5 }

ntcExGroupPolicy OBJECT-TYPE
    SYNTAX  PolicyType
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Reflects the policy of choosing the on-line node."
    ::= { ntcExGroupEntry 6 }

ntcExGroupReevaluate OBJECT-TYPE
    SYNTAX  Boolean
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Indicates whether the object shall be reevaluated for movement to a
        new server when nodes in the group go up or down."
    ::= { ntcExGroupEntry 7 }

ntcExGroupMembers OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "This is list of member names where each name is separated by a space."
    ::= { ntcExGroupEntry 8 }

ntcExGroupObjects OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "This is a list of object names - those that make up this group. Each
        name is separated by a space."
    ::= { ntcExGroupEntry 9 }

ntcExObjectTable OBJECT-TYPE
    SYNTAX SEQUENCE OF NtcExObjectEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Table of ntcExObjectEntry"
    ::= { svrNTCluClusterInfo 8 }

ntcExObjectEntry OBJECT-TYPE
    SYNTAX NtcExObjectEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "list of all cluster objects"
    INDEX    {
             ntcExObjectIndex
             }
    ::= { ntcExObjectTable 1 }

NtcExObjectEntry  ::=
    SEQUENCE {
        ntcExObjectIndex
            INTEGER,
        ntcExObjectName
            DisplayString,
        ntcExObjectComment
            DisplayString,
        ntcExObjectType
            ObjectType,
        ntcExObjectDrives
            DisplayString,
        ntcExObjectIpAddress
            IpAddress
             }

ntcExObjectIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Unique index for each entry."
    ::= { ntcExObjectEntry 1 }

ntcExObjectName OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Name of the cluster object."
    ::= { ntcExObjectEntry 2 }

ntcExObjectComment OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Description of the object. "
    ::= { ntcExObjectEntry 3 }

ntcExObjectType OBJECT-TYPE
    SYNTAX  ObjectType
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Type of cluster object - disk, share, app..."
    ::= { ntcExObjectEntry 4 }

ntcExObjectDrives OBJECT-TYPE
    SYNTAX  DisplayString
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "If instance is a disk, this object is a list of comma separated drive
        letters (e.g. F:,G:)."
    ::= { ntcExObjectEntry 5 }

ntcExObjectIpAddress OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The IP address which was assigned to this object/resource.  If this
         object/resource has no IP address a value of 0.0.0.0 will be returned."
    ::= { ntcExObjectEntry 6 }


END
