06-01-2004 03:49 AM
Hi
Does anyone know how to get detailed MDS SNMP MIB OID information (I am after inventory / performance information). When looking at the MIB documentation / IEFT standard I can get an OID but it does not work against the MDS 9216. e.g. MIB - OID - 1.3.6.1.4.1.9.12.3.1.4.37 (cevBackplaneDSC9216AK9). Ciscos OID translation tool (http://www.cisco.com/pcgi-bin/Support/Mibbrowser/unity.pl?tab=2 ) hasnt caught up with the MDS yet and I am completely stuck.
Alternatively does anyone know any Cisco developer sites or Cisco developer programs that can be joined to get the answer?
Any help would be REALLY APPRECIATED.
Cheers
Chris
06-01-2004 06:34 AM
Hi, Chris,
I've been able to replicate your problem and will ask our developers about how to fix it. I'll update the thread with whatever I find out.
The OID you're looking for is in the latest CISCO-ENTITY-VENDORTYPE-OID-MIB.my file (for SAN-OS 1.3(4a)), which implies it should be supported in 1.3(4a) (as well as earlier versions, I'm sure). What version of SAN-OS are you running?
Normally the most recently supported MIB versions can be downloaded through this link:
ftp://ftp.cisco.com/pub/mibs/supportlists/mds9000/MDS9000MIBSupportList.html
Via FTP you can get the latest MIBs in /pub/mibs/v2 on ftp.cisco.com.
The MIB quick reference guide is here:
I realize your problem is not with getting and using the latest MIBs but with getting your 9216 to return a value for the cevBackplaneDSC9216AK9 OID I'm only including these links for anyone else who might follow this thread.
Although I'm not aware of any current MDS-specific developer sites or programs, I'll ask around and see what I can find out regarding any future plans in this regard.
Phil Lowden
06-01-2004 07:27 AM
Hi Phil,
Thanks for the response. The firmware is basically whatever version I want to run and I will upgrade to the latest to be sure its compatible with the command.
The problem is unfortunately more generic. I am trying to build a list of performance / inventory information to give to our developer for SNMP purposes. I am trying to build a table containing; MIB (e.g. Vendortype), OID or Object ID, OIDname (e.g. cevchassis for a 9216 or 9506), possible values that can be returned (e.g. port up, down, defective ) and (non essential) description.
I cannot match up the information from the sources you have mentioned or from the RFC / MIB itself. In order for people to use SNMP and develop tools for Cisco, this information must be out there somewhere. I can find some separate pieces of information such as supported MIBS, but not the information that links it together, i.e. This OID only works with X MIB, means this and has these possible values.
Any help in linking the information above together would be very much appreciated!
Cheers
Chris
06-02-2004 12:49 PM
Hi, Chris,
Still digging to see what other resources we have for you. It may be early next week before I have something. In the meantime, I thought this link to the anouncement of the Open-API Program for Storage ISVs (Feb. 10, 2003) might be interesting:
http://newsroom.cisco.com/dlls/prod_021003b.html
I'm guessing this program is a forum for getting the kind of information you need, but it may be overkill for you.
Regards,
Phil Lowden
06-08-2004 01:01 PM
Hi, Chris,
It looks like the published MIB files and the list of MDS-supported MIBs are about the best we have for you to get the information you're looking for. By the way, only the OIDs with MAX-ACCESS set to read can be queried by an application like snmpget or snmpwalk. Non-GETable objects are just constant-like definitions.
You might try this method which I codged together as a quick and dirty method. I used a RedHat Linux box with ucd-snmp-4.2.3-1 and ucd-snmp-utils-4.2.3-1 installed.
1. Copy all the MIBs from ftp://ftp.cisco.com/pub/mibs/oid to /usr/share/snmp/mibs on the Linux machine.
2. Set up your MDS (I used 172.18.172.56) with a read-only or read-write community string (e.g. snmp-server community test group network-operator).
3. Do an SNMP walk: snmpwalk -v2c -M/usr/share/snmp/mibs -mall -OX 172.18.172.56 test 2>/dev/null 1>/tmp/out.txt
This looks like this:
system.sysDescr.0 = "Cisco SAN-OS(tm) m9200, Software (m9200-ek9-mz), Version 1.3(3), RELEASE SOFTWARE (fc2) Copyright (c) 2002-2003 by Cisco Systems, Inc. Compiled 12/29/2003 11:00:00"
system.sysObjectID.0 = OID: enterprises.cisco.ciscoModules.ciscoEntityVendortypeOIDMIB.cevMIBObjects.cevChassis.cevChassisMdsDSX9216
system.sysUpTime.sysUpTimeInstance = Timeticks: (8104467) 22:30:44.67
[snip]
The "-OX" puts instance numbers in square brackets, e.g. [12345].
4. If you want to compile a list of OIDs by number, description (which usually includes some mention of valid values), and translation, try this:
for i in $(awk -F= '{print $1}' /tmp/out.txt|awk -F[ '{print $1}' | uniq); do snmptranslate -M/usr/share/snmp/mibs -mall -Td $i; echo "**********"; done 2>/dev/null > /tmp/out2.txt
This gives something like this:
sysDescr OBJECT-TYPE
-- FROM RFC1213-MIB, SNMPv2-MIB
-- TEXTUAL CONVENTION DisplayString
SYNTAX OCTET STRING (0..255)
MAX-ACCESS read-only
STATUS mandatory
DESCRIPTION "A textual description of the entity. This value
should include the full name and version
identification of the system's hardware type,
software operating-system, and networking
software. It is mandatory that this only contain
printable ASCII characters."
::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) sysDescr(1) 0 }
**********
.1.3.6.1.2.1.1.2.0
sysObjectID OBJECT-TYPE
-- FROM RFC1213-MIB, SNMPv2-MIB
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS mandatory
DESCRIPTION "The vendor's authoritative identification of the
network management subsystem contained in the
entity. This value is allocated within the SMI
enterprises subtree (1.3.6.1.4.1) and provides an
easy and unambiguous means for determining `what
kind of box' is being managed. For example, if
vendor `Flintstones, Inc.' was assigned the
subtree 1.3.6.1.4.1.4242, it could assign the
identifier 1.3.6.1.4.1.4242.1.1 to its `Fred
Router'."
::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) sysObjectID(2) 0 }
**********
[snip]
The first awk strips out the stuff before the "=" sign and the second awk takes everything before the first "[" (if there is one), so you only get one output where there are multiple instances of an object.
Hope this helps. Please unicast me at plowden@cisco.com if you want to explore this approach further. This is assuming you didn't already explore and reject this a long time ago!
Regards,
Phil Lowden
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide