Het CMDB zal bij het opvragen van de informatie van een asset die aanvraag uitvoeren en zo de system time & de uptime gaan invullen in het management systeem.
Hieronder ziet u hoe het CMDB toont of de info werd opgehaald of niet:
De aanvragen van de info gebeuren via OID's. Dit zijn een reeks getallen waaraan de asset weet welke info hij moet teruggeven. Enkele voorbeelden:
- .1.3.6.1.2.1.1.3 = System Uptime (TimeTicks)
- .1.3.6.1.2.1.1.1 = System Description
- .1.3.6.1.2.1.1.5 = System Name
SnmpGet.py:
from pysnmp import role, v2c, asn1
class SNMPGet:
def __init__(self, host, port, community):
self.host = host
self.port = port
self.community = community
def snmpget (self, oid):
req = v2c.GETREQUEST ()
encoded_oids = map (asn1.OBJECTID().encode, [oid,])
req['community'] = self.community
tr = role.manager ((self.host, self.port))
rsp = v2c.RESPONSE ()
(rawrsp, src) = tr.send_and_receive (req.encode (encoded_oids=encoded_oids))
rsp.decode (rawrsp)
oids = map (lambda x: x[0], map(asn1.OBJECTID ().decode, rsp['encoded_oids']))
vals = map (lambda x: x[0] (), map(asn1.decode, rsp['encoded_vals']))
return vals
Geen opmerkingen:
Een reactie posten