snmp_mib_archive/CISCO-SMART-INSTALL-MIB.my 2
Heston Snodgrass 89bf4b016e initial commit
2016-12-15 15:03:18 -07:00

1657 lines
51 KiB
Plaintext

-- *****************************************************************
-- CISCO-SMART-INSTALL-MIB.my: Smart Install MIB
--
-- Copyright (c) 2009-2010 by Cisco Systems, Inc.
-- All rights reserved.
--
-- *****************************************************************
CISCO-SMART-INSTALL-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
NOTIFICATION-TYPE,
Unsigned32
FROM SNMPv2-SMI
MODULE-COMPLIANCE,
NOTIFICATION-GROUP,
OBJECT-GROUP
FROM SNMPv2-CONF
TruthValue,
RowStatus,
DateAndTime,
MacAddress,
StorageType
FROM SNMPv2-TC
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
InetAddressType,
InetAddress
FROM INET-ADDRESS-MIB
TimeIntervalMin,
Cisco2KVlanList,
CiscoURLStringOrEmpty
FROM CISCO-TC
ciscoMgmt
FROM CISCO-SMI;
ciscoSmartInstallMIB MODULE-IDENTITY
LAST-UPDATED "201004300000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Cisco Systems
Customer Service
Postal: 170 W Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
E-mail: interest-comp-smartinstall@cisco.com"
DESCRIPTION
"This MIB module defines managed objects that facilitate
the management of Smart Install feature. Smart Install is a
plug-and-play image and configuration management feature which
enables zero-touch deployment of Cisco network devices in an
enterprise branch network.
Following is the terminology associated with Smart Install
feature:
Director
A router or switch selected as the single management point
for images and configuration of network devices in a Smart
Install network. When a device is first installed into the
network, the director detects the new device and facilitates
the correct Cisco IOS image and configuration file for the
device based on user defined profiles. With the automated
process, a single or a group of devices are deployed without
user intervention.
The managed device includes, but not limited to, Cisco 2K/3K
switches and EtherSwitch service modules. Director learns
about them through CDP or Smart Install protocol.
Smart Install Capable Client
A client device running Smart Install capable image.
Group
Devices are placed into Groups where they can be manipulated
together rather than individually.
Profile
Profile is the configuration file, image, etc. that a user
programs for each group.
Backup
The feature to archive/backup client device's configuration
file upon 'write memory' on client.
Join-Window
A join window is a time window during which the device is
allowed to upgrade image or configuration files. Only
during this window can the director provide information
about the image and configuration to the device. A device
attempting to join the network outside of the join window
will not be allowed to do so, and cannot upgrade their image
and configuration files.
This MIB module is supported on the director but not on the
client devices. It is designed to:
- Allow operators to make configurations for client devices
before and after they connect to the director's network.
- Support monitoring of client devices discovered by the
director.
- Provide status of the deployed client image and
configuration as a result of operator defined profiles.
- Provide notifications for notable events such as new
device joined or upgrade failure if there is any.
Please note that, in most cases a working DHCP pool is
configured for the subnet(s) on which the client devices
are located. The DHCP server could be the director,
another Cisco device running Cisco IOS, or a non-Cisco
third-party server.
CISCO-SMART-INSTALL-MIB Module usage:
1) Create profile for a group of devices
Profile is used to pre-configure image and configuration
files for a group of devices.
In csiProfileTable
{
csiProfileIndex = 8,
csiProfileGroupName = '3750E_24',
csiProfileImageUrl = 'tftp://10.0.0.1/3750e.tar',
csiProfileImageTwoUrl = '',
csiProfileConfigUrl = 'flash:/default_config.txt',
<snip>
}
2) Define a group of devices
For example, to define a group matching on Catalyst 2960
24 8 Poe switches:
In csiMatchTable
{
csiMatchIndex = 1,
csiMatchGroupType = 'product',
csiMatchProductId = 'WS-C2960-24LT-L',
csiProfileIndex = 6,
<snip>
}
3) Enable Smart Install feature on the director
The operator enables the Smart Install feature by setting
csiOperationMode = basic(2)
4) Display device information
Director is aware of Smart Install capable devices and others
connected to a Smart Install capable device. This MIB table
displays information about the devices, such as the running
image, the MAC address, etc.
csiDeviceTable
5) Further refine the running environment
Objects in csiGlobalConfig enable the Operator to tailor
the director operation, such as:
. Backup client device's configuration file.
. Set up Join Window to monitor newly installed devices."
REVISION "201004300000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { ciscoMgmt 725 }
-- Textual Conventions definition will be defined before this line
ciscoSmartInstallMIBNotifs OBJECT IDENTIFIER
::= { ciscoSmartInstallMIB 0 }
ciscoSmartInstallMIBObjects OBJECT IDENTIFIER
::= { ciscoSmartInstallMIB 1 }
ciscoSmartInstallMIBConform OBJECT IDENTIFIER
::= { ciscoSmartInstallMIB 2 }
csiGlobalConfig OBJECT IDENTIFIER
::= { ciscoSmartInstallMIBObjects 1 }
csiProfile OBJECT IDENTIFIER
::= { ciscoSmartInstallMIBObjects 2 }
csiDeviceInfo OBJECT IDENTIFIER
::= { ciscoSmartInstallMIBObjects 3 }
csiNotifObjects OBJECT IDENTIFIER
::= { ciscoSmartInstallMIBObjects 4 }
csiOperationMode OBJECT-TYPE
SYNTAX INTEGER {
disabled(1),
basic(2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the Smart Install director operation
mode.
The following enumerated values are supported:
disabled(1) - Smart Install feature disabled.
basic(2) - Enabled with Smart Install basic features."
::= { csiGlobalConfig 1 }
csiDirectorIpAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the type of Internet address in
csiDirectorIpAddress object."
::= { csiGlobalConfig 2 }
csiDirectorIpAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the Internet address assigned for
the director. The type of this address is determined by
the value of csiDirectorIpAddressType object.
Setting this object is not mandatory if the director IP address
is configured by DHCP. For DHCP to assign the director IP
address, the operator needs to configure the DHCP server."
::= { csiGlobalConfig 3 }
csiManagementVlan OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates if management VLAN is in use or not."
::= { csiGlobalConfig 4 }
csiManagementVlansFirst2K OBJECT-TYPE
SYNTAX Cisco2KVlanList
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the management VLANs in a string of
octets containing one bit per VLAN for VLANs 0 to 2047. The
director snoops all DHCP packets that pass through on the
management VLANs in addition to the default VLAN 1.
The value of this object is irrelevent if csiManagementVlan is
false(2)."
::= { csiGlobalConfig 5 }
csiManagementVlansSecond2K OBJECT-TYPE
SYNTAX Cisco2KVlanList
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the management VLANs in a string of
octets containing one bit per VLAN for VLANs 2048 to 4095.
The director snoops all DHCP packets that pass through on
the management VLANs in addition to the default VLAN 1.
The value of this object is irrelevent if csiManagementVlan is
false(2)."
::= { csiGlobalConfig 6 }
csiBackup OBJECT IDENTIFIER
::= { csiGlobalConfig 7 }
csiJoinWindow OBJECT IDENTIFIER
::= { csiGlobalConfig 8 }
csiBackupHostUrl OBJECT-TYPE
SYNTAX CiscoURLStringOrEmpty
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A Uniform Resource Locator specifying the host where the client
configuration files are stored, 'tftp://101.122.33.10/vstack'
for example.
When a client configuration is committed (i.e. write memory), a
backup of the configuration is saved in the backup host if
csiBackupEnable is 'true'. The backup file name is consisted
of the client host name, MAC address and file extension 'REV2',
for example 'SwitchA-0021.d7ae.fc00.REV2'. For subsequent
backups, .REV2 file is copied to .REV1, and .REV2 is
over-written with the latest client configuration."
::= { csiBackup 1 }
csiBackupEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies whether client configuration file is
backed up in the backup host.
Director is informed when a Smart Install client configuration
is committed (i.e. write memory). If this object value is
'true', director orchestrates the backup of the client
configuration file to the designated backup host."
::= { csiBackup 2 }
csiJoinWindowConfigOperationMode OBJECT-TYPE
SYNTAX INTEGER {
closed(1),
auto(2),
manual(3)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A join window is a time window during which a network device
is allowed to upgrade image or configuration files. Only
during this window can the director provide information
about the image and configuration to the device. A device
attempting to join the network outside of the join window
will not be allowed to do so, and cannot upgrade their image
and configuration files.
This object specifies the configuration of the Join Window
operation mode.
closed - All devices attempting to join are denied to upgrade
as indicated in the csiDeviceStatus object.
Director does not provide information about the image
and configuration to the device.
auto - Director provides image and configuration information
to devices joining during 'Join Window' period.
manual - Devices attempting to join during Join Window are
put on hold as indicated in the csiDeviceStatus
object. Director does not give image and
configuration information to these on hold devices
unless the operator manually instructs the director
to upgrade them."
::= { csiJoinWindow 1 }
csiJoinWindowPeriodNextFreeIndex OBJECT-TYPE
SYNTAX Unsigned32 (0..4294967295)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An integer which may be used as a new index in
csiJoinWindowPeriodTable. The special value of 0
indicates that no more new entries can be created in
csiJoinWindowPeriodTable.
This object is a legal value (if non-zero) for an index
that is not currently used in the relevant table. The Network
Management Application reads this variable and uses the
(non-zero) value read when creating a new row with an SNMP SET.
When the SET is performed, the agent must determine whether the
value is indeed still unused; two Network Management
Applications may attempt to create a row (configuration entry)
simultaneously and use the same value. If it is currently
unused, the SET succeeds and the agent monotonically increases
the value of this object.
However if the value is in use, the SET fails. The Network
Management Application must then re-read this variable to
obtain a new usable value."
::= { csiJoinWindow 2 }
csiJoinWindowPeriodTable OBJECT-TYPE
SYNTAX SEQUENCE OF CsiJoinWindowPeriodEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of Join Window time periods. Management Application
creates an entry in the table to add a Join Window period and
its recurrence pattern.
If csiJoinWindowConfigOperationMode is 'auto', all devices
joined during Join Window are automatically upgraded.
If csiJoinWindowConfigOperationMode is 'manual', new devices
joined during Join Window are put on hold as indicated in
csiDeviceStatus. They are not offered upgrade information
unless the operator manually instructs the director to do so.
In rare occasions, when entries overlap in time, the devices
joining during any of the Join Window period are allowed to be
upgraded or put on hold."
::= { csiJoinWindow 3 }
csiJoinWindowPeriodEntry OBJECT-TYPE
SYNTAX CsiJoinWindowPeriodEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry specifying a time period during which director
offers image and configuration information to the newly
installed devices.
A configured row instance can be created or removed by
setting the appropriate value of its RowStatus object."
INDEX { csiJoinWindowPeriodIndex }
::= { csiJoinWindowPeriodTable 1 }
CsiJoinWindowPeriodEntry ::= SEQUENCE {
csiJoinWindowPeriodIndex Unsigned32,
csiJoinWindowPeriodStartTime DateAndTime,
csiJoinWindowPeriodInterval TimeIntervalMin,
csiJoinWindowPeriodRecurrencePattern INTEGER,
csiJoinWindowPeriodExpirationDate DateAndTime,
csiJoinWindowPeriodStorageType StorageType,
csiJoinWindowPeriodRowStatus RowStatus
}
csiJoinWindowPeriodIndex OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object uniquely identifies a row in
csiJoinWindowPeriodTable. The Management Application chooses
this value by reading csiJoinWindowPeriodNextFreeIndex while
creating an entry in this table. If an entry already exists
with this index, the creation of the entry will not continue
and error will be returned. The Management Application should
read the value of csiJoinWindowPeriodNextFreeIndex again and
retry with the new value for this object."
::= { csiJoinWindowPeriodEntry 1 }
csiJoinWindowPeriodStartTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the start time of a Join Window period."
::= { csiJoinWindowPeriodEntry 2 }
csiJoinWindowPeriodInterval OBJECT-TYPE
SYNTAX TimeIntervalMin
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the length of Join Window period in
minutes starting from csiJoinWindowPeriodStartTime."
::= { csiJoinWindowPeriodEntry 3 }
csiJoinWindowPeriodRecurrencePattern OBJECT-TYPE
SYNTAX INTEGER {
none(1),
daily(2)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the Join Window recurrence pattern.
none(1) - The join window period does not recur.
daily(2) - The join window period recurs daily."
::= { csiJoinWindowPeriodEntry 4 }
csiJoinWindowPeriodExpirationDate OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the day (in year, month and date) the
Join Window period stops. An empty string indicates that no
expiration date is applied.
The Join Window period can be stopped by either this object or
csiJoinWindowPeriodInterval object, whichever expires first."
::= { csiJoinWindowPeriodEntry 5 }
csiJoinWindowPeriodStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the storage type of this conceptual row."
DEFVAL { volatile }
::= { csiJoinWindowPeriodEntry 6 }
csiJoinWindowPeriodRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is used to manage the creation and deletion
of rows in this table. If this object value is 'active',
user cannot modify any writable object in this row."
::= { csiJoinWindowPeriodEntry 7 }
csiImageFileUrl OBJECT-TYPE
SYNTAX CiscoURLStringOrEmpty
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the location of the default boot .tar
image file. An empty string indicates that no such file is
applied.
If all clients in a Smart Install network have the same
product ID and can run the same image file, user can assign
a default image file for all clients."
::= { csiProfile 1 }
csiConfigFileUrl OBJECT-TYPE
SYNTAX CiscoURLStringOrEmpty
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the location of the default configuration
file. An empty string indicates that no such file is applied.
If all clients in a Smart Install network have the same
product ID and can run the same configuration file, user can
assign a default configuration file for all clients."
::= { csiProfile 2 }
csiHostnamePrefix OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..40))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies the default hostname prefix. The
director provides hostname (with prefix followed by an
implementation-dependent string) to clients."
::= { csiProfile 3 }
csiProfileNextFreeIndex OBJECT-TYPE
SYNTAX Unsigned32 (0 | 2..4294967295)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An integer value which may be used as a new index in
csiProfileTable. The special value of 0 indicates
that no more new entries can be created in csiProfileTable,
and value 1 is not a valid csiProfileTable index. Thus the
value of this object starts at 2 and monotonically increases
after a profile is created.
The Network Management Application reads this variable and uses
the non-zero value when creating a new row with an SNMP SET.
When the SET is performed, the agent must determine whether the
value is indeed still unused, for two Network Management
Applications may attempt to create a row (profile entry)
simultaneously and use the same value. If it is currently
unused, the SET succeeds and the agent increases the value of
this object. If the value is in use, however, the SET fails.
The Network Management Application must then re-read this
variable to obtain a new usable value."
::= { csiProfile 4 }
csiProfileTable OBJECT-TYPE
SYNTAX SEQUENCE OF CsiProfileEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of Smart Install profile entries.
In Smart Install, any number of client devices can be placed
together to form a 'group' for easy management. A profile is
used to associate image and configuration files for a group of
devices, before and after they join the network. An entry
in this table reflects the profile of one Smart Install group."
::= { csiProfile 5 }
csiProfileEntry OBJECT-TYPE
SYNTAX CsiProfileEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the csiProfileTable, describing the image and
configuration files that represent the profile."
INDEX { csiProfileIndex }
::= { csiProfileTable 1 }
CsiProfileEntry ::= SEQUENCE {
csiProfileIndex Unsigned32,
csiProfileGroupName SnmpAdminString,
csiProfileImageUrl CiscoURLStringOrEmpty,
csiProfileImageTwoUrl CiscoURLStringOrEmpty,
csiProfileConfigUrl CiscoURLStringOrEmpty,
csiProfileStorageType StorageType,
csiProfileRowStatus RowStatus
}
csiProfileIndex OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object uniquely identifies the entry in csiProfileTable.
The value of the object is 2 or greater."
::= { csiProfileEntry 1 }
csiProfileGroupName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..64))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the name of a group for which this
profile associates."
::= { csiProfileEntry 2 }
csiProfileImageUrl OBJECT-TYPE
SYNTAX CiscoURLStringOrEmpty
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the location of the boot .tar image
file. An empty string indicates that no such file is applied."
::= { csiProfileEntry 3 }
csiProfileImageTwoUrl OBJECT-TYPE
SYNTAX CiscoURLStringOrEmpty
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"For mixed switch stack, this object specifies the location
of the second .tar image file. An empty string indicates that
no such file is applied."
::= { csiProfileEntry 4 }
csiProfileConfigUrl OBJECT-TYPE
SYNTAX CiscoURLStringOrEmpty
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the location of the configuration file.
An empty string indicates that no such file is applied."
::= { csiProfileEntry 5 }
csiProfileStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the storage type for this conceptual
row."
DEFVAL { volatile }
::= { csiProfileEntry 6 }
csiProfileRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the status of this conceptual row.
If this object value is 'active', user cannot modify any
writable object in this row."
::= { csiProfileEntry 7 }
csiMatchTable OBJECT-TYPE
SYNTAX SEQUENCE OF CsiMatchEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of group matching criteria entries.
In Smart Install, 'group' represents a collection of network
devices and a profile is configured for the group. The
matching criteria entries are used to identify the devices
belonging to a profile group, and the matching entries cannot
exist without a profile. This is implied by the reference to
csiProfileIndex object in the index clause of this table."
::= { csiProfile 6 }
csiMatchEntry OBJECT-TYPE
SYNTAX CsiMatchEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in csiMatchTable, defining one matching criterion
for a profile group. When its profile entry is deleted, the
match entry is deleted too. The objects needed in an entry
depend on the value of csiMatchGroupType. Multiple match
entries can be entered for stack, connectivity or mac type
of groups."
INDEX {
csiProfileIndex,
csiMatchIndex
}
::= { csiMatchTable 1 }
CsiMatchEntry ::= SEQUENCE {
csiMatchIndex Unsigned32,
csiMatchGroupType INTEGER,
csiMatchMacAddress MacAddress,
csiMatchHostAddressType InetAddressType,
csiMatchHostAddress InetAddress,
csiMatchHostInterface SnmpAdminString,
csiMatchProductId SnmpAdminString,
csiMatchSwitchNum Unsigned32,
csiMatchSwitchProductId SnmpAdminString,
csiMatchStorageType StorageType,
csiMatchRowStatus RowStatus
}
csiMatchIndex OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object uniquely identifies a matching criterion within a
group."
::= { csiMatchEntry 1 }
csiMatchGroupType OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
mac(2),
connectivity(3),
product(4),
stack(5)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object indicates the general category of a Smart Install
group. A profile group can be formed based on,
unknown(1) - unknown match group type
mac(2) - MAC addresses of devices
connectivity(3) - connectivity or topology of devices
product(4) - product type of devices
stack(5) - a switch stack"
::= { csiMatchEntry 2 }
csiMatchMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the MAC address of the client. It is
required when csiMatchGroupType is 'mac'.
A MAC address match takes priority over other match criteria."
::= { csiMatchEntry 3 }
csiMatchHostAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the type of Internet address stored in
csiMatchHostAddress. It is required when csiMatchGroupType is
'connectivity'."
::= { csiMatchEntry 4 }
csiMatchHostAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"User can configure a profile group based on the connectivity
or topology of clients in a Smart Install network, that is, a
group of clients that are connected to the director through a
single interface or clients that are connected to the director
through a common intermediate device.
This object specifies the Internet address of the upstream
device, which could be the director or an intermediate
device. Together with csiMatchHostInterface, it specifies
the path through which clients are connected to the director.
This object is required when csiMatchGroupType is
'connectivity'. The type of this address is determined by
the value of csiMatchHostAddressType object.
A connectivity match takes priority over product ID match."
::= { csiMatchEntry 5 }
csiMatchHostInterface OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"For connectivity group, this object specifies the interface,
together with csiMatchHostAddress, representing the path
through which clients are connected to the director. It is
typically the value of the ifName object (e.g., 'Ethernet0').
It is required when csiMatchGroupType is 'connectivity'."
::= { csiMatchEntry 6 }
csiMatchProductId OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the device product type for profile
groups formed based on 'product'. For pre-defined profile
group, it is the group name such as '2960 24-8POE'. For user
defined group, it specifies a product ID reported in
ENTITY-MIB, such as 'WS-C2960-24LT-L'.
It is required when csiMatchGroupType is 'product'."
::= { csiMatchEntry 7 }
csiMatchSwitchNum OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the switch number in a stackable switch.
Together with csiMatchSwitchProductId, it describes a stack
member. It is required when csiMatchGroupType is 'stack'."
::= { csiMatchEntry 8 }
csiMatchSwitchProductId OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the product ID of a switch member
indicated in csiMatchSwitchNum. It is required when
csiMatchGroupType is 'stack'."
::= { csiMatchEntry 9 }
csiMatchStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the storage type for this conceptual
row."
DEFVAL { volatile }
::= { csiMatchEntry 10 }
csiMatchRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the status of this conceptual row.
If this object value is 'active', user cannot modify any
writable object in this row."
::= { csiMatchEntry 11 }
csiDeviceTable OBJECT-TYPE
SYNTAX SEQUENCE OF CsiDeviceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual table listing the network devices with
connectivity to the director, that is the device is either Smart
Install capable or is connected to a Smart Install capable
client."
::= { csiDeviceInfo 1 }
csiDeviceEntry OBJECT-TYPE
SYNTAX CsiDeviceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry for each device that has joined the Smart Install
network."
INDEX { csiDeviceNum }
::= { csiDeviceTable 1 }
CsiDeviceEntry ::= SEQUENCE {
csiDeviceNum Unsigned32,
csiDeviceMacAddress MacAddress,
csiDeviceAddressType InetAddressType,
csiDeviceAddress InetAddress,
csiDeviceName SnmpAdminString,
csiDeviceBackupConfigFileName SnmpAdminString,
csiDeviceImageVersion SnmpAdminString,
csiDevicePlatform SnmpAdminString,
csiDeviceSerialNum SnmpAdminString,
csiDeviceStatus SnmpAdminString
}
csiDeviceNum OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A value assigned by the director to uniquely identify each
entry in csiDeviceTable."
::= { csiDeviceEntry 1 }
csiDeviceMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the MAC address of the network device."
::= { csiDeviceEntry 2 }
csiDeviceAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the type of Internet address in
csiDeviceAddress."
::= { csiDeviceEntry 3 }
csiDeviceAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the Internet address of the device that
sends Smart Install communication messages. The type of this
address is determined by the value of csiDeviceAddressType
object."
::= { csiDeviceEntry 4 }
csiDeviceName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the host name of the device to easily
identify it in a network."
::= { csiDeviceEntry 5 }
csiDeviceBackupConfigFileName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the name of the latest saved
configuration file of the device. The file name is
consisted of the device host name, MAC address and
file extension 'REV2', for example
'SwitchA-0021.d7ae.fc00.REV2'. The file is stored in
the host indicated by the csiBackupHostUrl object.
If the device configuration file is saved again, .REV2
file is copied to .REV1, and .REV2 is over-written with
the latest device configuration."
::= { csiDeviceEntry 6 }
csiDeviceImageVersion OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the software release version that the
device is running. The zero-length string indicates
that no Version field (TLV) was reported in the most
recent CDP message."
::= { csiDeviceEntry 7 }
csiDevicePlatform OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The device's hardware platform as reported in the most
recent CDP message. The zero-length string indicates
that no Platform field (TLV) was reported in the most
recent CDP message."
::= { csiDeviceEntry 8 }
csiDeviceSerialNum OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A recorded serial number for this device that indexes some
type device catalog or inventory, if applicable."
::= { csiDeviceEntry 9 }
csiDeviceStatus OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A text string describes the network device status. The agent
implementation may use this object to report upgrading
progress."
::= { csiDeviceEntry 10 }
csiNotifEnable OBJECT-TYPE
SYNTAX BITS {
operationModeChange(0),
deviceAdded(1),
deviceLost(2),
fileLoadFailed(3)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object controls the generation of Smart Install
notifications.
For example, a value of '1' for 'deviceAdded' enables
csiDeviceAdded notification, whereas a value of '0' disables
csiDeviceAdded notification."
::= { csiNotifObjects 1 }
csiNotifOperationType OBJECT-TYPE
SYNTAX INTEGER {
other(1),
downloadConfig(2),
downloadImage(3),
uploadConfig(4)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the type of operation of
csiFileLoadFailed notification.
other(1) - none of the following
downloadConfig(2) - configuration file download
downloadImage(3) - image file download
uploadConfig(4) - client config file upload to storage"
::= { csiNotifObjects 2 }
csiNotifOperationResult OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the file operation result of
csiFileLoadFailed notification."
::= { csiNotifObjects 3 }
-- Notifications
csiOperationModeChange NOTIFICATION-TYPE
OBJECTS { csiOperationMode }
STATUS current
DESCRIPTION
"This notification is generated when the director operation
mode changes. csiOperationMode indicates the director
operation mode."
::= { ciscoSmartInstallMIBNotifs 1 }
csiDeviceAdded NOTIFICATION-TYPE
OBJECTS {
csiDeviceName,
csiDeviceAddressType,
csiDeviceAddress,
csiDeviceMacAddress
}
STATUS current
DESCRIPTION
"This notification is generated when a network device joins the
Smart Install network.
csiDeviceName indicates the device host name.
csiDeviceAddressType indicates the device Internet address
type.
csiDeviceAddress indicates the device Internet address.
csiDeviceMacAddress indicates the device MAC address."
::= { ciscoSmartInstallMIBNotifs 2 }
csiDeviceLost NOTIFICATION-TYPE
OBJECTS {
csiDeviceName,
csiDeviceAddressType,
csiDeviceAddress,
csiDeviceMacAddress
}
STATUS current
DESCRIPTION
"This notification is generated when director loses connectivity
to a device.
csiDeviceName indicates the device host name.
csiDeviceAddressType indicates the device Internet address
type.
csiDeviceAddress indicates the device Internet address.
csiDeviceMacAddress indicates the device MAC address."
::= { ciscoSmartInstallMIBNotifs 3 }
csiFileLoadFailed NOTIFICATION-TYPE
OBJECTS {
csiDeviceName,
csiDeviceAddressType,
csiDeviceAddress,
csiDeviceMacAddress,
csiNotifOperationType,
csiNotifOperationResult
}
STATUS current
DESCRIPTION
"This notification is generated when a file upload or download
operation has failed.
csiDeviceName indicates the device host name.
csiDeviceAddressType indicates the device Internet address
type.
csiDeviceAddress indicates the device Internet address.
csiDeviceMacAddress indicates the device MAC address.
csiNotifOperationType indicates the file operation type.
csiNotifOperationResult indicates the file operation result."
::= { ciscoSmartInstallMIBNotifs 4 }
-- Conformance Information Definition
ciscoSmartInstallCompliances OBJECT IDENTIFIER
::= { ciscoSmartInstallMIBConform 1 }
ciscoSmartInstallGroups OBJECT IDENTIFIER
::= { ciscoSmartInstallMIBConform 2 }
ciscoSmartInstallCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Describes the requirements for conformance to the
CISCO-SMART-INSTALL-MIB module."
MODULE -- this module
MANDATORY-GROUPS {
ciscoSmartInstallGlobalConfigGroup,
ciscoSmartInstallDeviceInformationGroup
}
GROUP ciscoSmartInstallConfigBackupGroup
DESCRIPTION
"The ciscoSmartInstallConfigBackupGroup is optional."
GROUP ciscoSmartInstallJoinWindowGroup
DESCRIPTION
"The ciscoSmartInstallJoinWindowGroup is optional."
GROUP ciscoSmartInstallProfileGroup
DESCRIPTION
"The ciscoSmartInstallProfileGroup is optional."
GROUP ciscoSmartInstallNotificationEnableGroup
DESCRIPTION
"The ciscoSmartInstallNotificationEnableGroup is optional."
GROUP ciscoSmartInstallNotificationsGroup
DESCRIPTION
"The ciscoSmartInstallNotificationsGroup is optional."
GROUP ciscoSmartInstallNotifyVarsGroup
DESCRIPTION
"The ciscoSmartInstallNotifyVarsGroup is optional. if
ciscoSmartInstallNotificationsGroup is supported, this group
must be implemented."
OBJECT csiOperationMode
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiDirectorIpAddressType
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiDirectorIpAddress
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiManagementVlansFirst2K
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiManagementVlansSecond2K
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiBackupHostUrl
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiBackupEnable
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiJoinWindowConfigOperationMode
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiJoinWindowPeriodStartTime
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiJoinWindowPeriodInterval
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiJoinWindowPeriodRecurrencePattern
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiJoinWindowPeriodExpirationDate
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiJoinWindowPeriodStorageType
MIN-ACCESS read-only
DESCRIPTION
"Support for read-create access is not required."
OBJECT csiJoinWindowPeriodRowStatus
SYNTAX INTEGER {
active(1)
}
WRITE-SYNTAX INTEGER {
createAndGo(4),
destroy(6)
}
MIN-ACCESS read-only
DESCRIPTION
"Support for 'createAndWait' is not required."
OBJECT csiImageFileUrl
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiConfigFileUrl
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiHostnamePrefix
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT csiProfileGroupName
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiProfileImageUrl
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiProfileImageTwoUrl
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiProfileConfigUrl
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiProfileStorageType
MIN-ACCESS read-only
DESCRIPTION
"Support for read-create access is not required."
OBJECT csiProfileRowStatus
SYNTAX INTEGER {
active(1)
}
WRITE-SYNTAX INTEGER {
createAndGo(4),
destroy(6)
}
MIN-ACCESS read-only
DESCRIPTION
"Support for 'createAndWait' is not required."
OBJECT csiMatchGroupType
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchProductId
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchSwitchNum
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchSwitchProductId
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchHostAddressType
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchHostAddress
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchHostInterface
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchMacAddress
MIN-ACCESS read-only
DESCRIPTION
"Create/Write access is not required."
OBJECT csiMatchStorageType
MIN-ACCESS read-only
DESCRIPTION
"Support for read-create access is not required."
OBJECT csiMatchRowStatus
SYNTAX INTEGER {
active(1)
}
WRITE-SYNTAX INTEGER {
createAndGo(4),
destroy(6)
}
MIN-ACCESS read-only
DESCRIPTION
"Support for 'createAndWait' is not required."
OBJECT csiNotifEnable
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { ciscoSmartInstallCompliances 1 }
ciscoSmartInstallGlobalConfigGroup OBJECT-GROUP
OBJECTS {
csiOperationMode,
csiDirectorIpAddressType,
csiDirectorIpAddress,
csiManagementVlan,
csiManagementVlansFirst2K,
csiManagementVlansSecond2K
}
STATUS current
DESCRIPTION
"A collection of objects used for director configurations."
::= { ciscoSmartInstallGroups 1 }
ciscoSmartInstallConfigBackupGroup OBJECT-GROUP
OBJECTS {
csiBackupEnable,
csiBackupHostUrl
}
STATUS current
DESCRIPTION
"A collection of objects related to configuration file backup
feature."
::= { ciscoSmartInstallGroups 2 }
ciscoSmartInstallJoinWindowGroup OBJECT-GROUP
OBJECTS {
csiJoinWindowConfigOperationMode,
csiJoinWindowPeriodNextFreeIndex,
csiJoinWindowPeriodStartTime,
csiJoinWindowPeriodInterval,
csiJoinWindowPeriodRecurrencePattern,
csiJoinWindowPeriodExpirationDate,
csiJoinWindowPeriodRowStatus,
csiJoinWindowPeriodStorageType
}
STATUS current
DESCRIPTION
"A collection of objects related to the Join Window."
::= { ciscoSmartInstallGroups 3 }
ciscoSmartInstallProfileGroup OBJECT-GROUP
OBJECTS {
csiImageFileUrl,
csiConfigFileUrl,
csiHostnamePrefix,
csiProfileNextFreeIndex,
csiProfileGroupName,
csiProfileImageUrl,
csiProfileImageTwoUrl,
csiProfileConfigUrl,
csiProfileStorageType,
csiProfileRowStatus,
csiMatchGroupType,
csiMatchProductId,
csiMatchSwitchNum,
csiMatchSwitchProductId,
csiMatchHostAddressType,
csiMatchHostAddress,
csiMatchHostInterface,
csiMatchMacAddress,
csiMatchStorageType,
csiMatchRowStatus
}
STATUS current
DESCRIPTION
"A collection of objects which are used to configure the profile
for clients."
::= { ciscoSmartInstallGroups 4 }
ciscoSmartInstallDeviceInformationGroup OBJECT-GROUP
OBJECTS {
csiDeviceMacAddress,
csiDeviceAddressType,
csiDeviceAddress,
csiDeviceName,
csiDeviceBackupConfigFileName,
csiDeviceImageVersion,
csiDevicePlatform,
csiDeviceSerialNum,
csiDeviceStatus
}
STATUS current
DESCRIPTION
"A collection of objects that provide information about devices
in a Smart Install network."
::= { ciscoSmartInstallGroups 5 }
ciscoSmartInstallNotificationEnableGroup OBJECT-GROUP
OBJECTS { csiNotifEnable }
STATUS current
DESCRIPTION
"A collection of objects for controlling (enabling/disabling)
notifications to a management application."
::= { ciscoSmartInstallGroups 6 }
ciscoSmartInstallNotificationsGroup NOTIFICATION-GROUP
NOTIFICATIONS {
csiOperationModeChange,
csiDeviceAdded,
csiDeviceLost,
csiFileLoadFailed
}
STATUS current
DESCRIPTION
"A collection of notifications in this MIB module."
::= { ciscoSmartInstallGroups 7 }
ciscoSmartInstallNotifyVarsGroup OBJECT-GROUP
OBJECTS {
csiNotifOperationType,
csiNotifOperationResult
}
STATUS current
DESCRIPTION
"A collection of objects used for notifications."
::= { ciscoSmartInstallGroups 8 }
END