Wednesday, March 25, 2015

SNMP

Install SNMP di Ubuntu server

Install paket SNMP

# sudo apt-get install snmp snmpd
$ sudo apt-get install snmp-mibs-downloader
 
buat file snmpd.conf baru :

mv /etc/snmp/snmpd.conf  /etc/snmp/snmpd.conf.org
 
buat file baru di /etc/snmp/snmpd.conf isi dengan :

rocommunity  public
syslocation  DataCenter
syscontact   admin@pla.net

Buat snmpd membaca file snmpd yang baru dibuat untuk membaca semua interface

Edit /etc/default/snmpd
Ubah dari :
# snmpd options (use syslog, close stdin/out/err).
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'

Menjadi :
# snmpd options (use syslog, close stdin/out/err).
#SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid -c /etc/snmp/snmpd.conf'

dan restart snmpd
/etc/init.d/snmpd restart
 
Test dengan :
 
[root@op5 ~]# snmpwalk -v 1 -c public -O e ibsen
SNMPv2-MIB::sysDescr.0 = STRING: Linux ibsen 2.6.27-9-generic #1 SMP Thu Nov 20 21:57:00 UTC 2008 i686
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (68869) 0:11:28.69
SNMPv2-MIB::sysContact.0 = STRING: peter@it-slav.net
SNMPv2-MIB::sysName.0 = STRING: ibsen
SNMPv2-MIB::sysLocation.0 = STRING: "PDC, Peters DataCenter"
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORID.1 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.2 = OID: SNMP-MPD-MIB::snmpMPDCompliance
SNMPv2-MIB::sysORID.3 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip
 
Melihat Informasi Network
 
snmptable -v 2c -c public -Cb localhost IF-MIB::ifTable
 SNMP table: IF-MIB::ifTable

 Index Descr             Type   Mtu    Speed      PhysAddress AdminStatus
     1    lo softwareLoopback 16436 10000000                           up
     2  eth0   ethernetCsmacd  1500        0 52:54:0:c7:69:58          up
     3  eth1   ethernetCsmacd  1500        0 52:54:0:a7:a3:24        down
 
$ snmpwalk localhost IF-MIB::ifDescr 
 
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: eth0
IF-MIB::ifDescr.3 = STRING: eth1
~]$ snmpwalk localhost IF-MIB::ifOutOctets
IF-MIB::ifOutOctets.1 = Counter32: 10060699
IF-MIB::ifOutOctets.2 = Counter32: 650
IF-MIB::ifOutOctets.3 = Counter32: 0
~]$ snmpwalk localhost IF-MIB::ifInOctets
IF-MIB::ifInOctets.1 = Counter32: 10060699
IF-MIB::ifInOctets.2 = Counter32: 78650
IF-MIB::ifInOctets.3 = Counter32: 0
 
 
High Speed interfaces
For high-speed interfaces (100Mbps or above) you should use 64-bit counters if the device supports them:
  • ifHCInOctets: 1.3.6.1.2.1.31.1.1.1.6 (64-bit Octets in counter)
  • ifHCOutOctets: 1.3.6.1.2.1.31.1.1.1.10 (64-bit Octets out counter)
  • ifHCInUcastPkts: 1.3.6.1.2.1.31.1.1.1.7 (64-bit Packets in counter)
  • ifHCOutUcastPkts: 1.3.6.1.2.1.31.1.1.1.11 (64-bit Packets out counter)
  • ifHighSpeed: 1.3.6.1.2.1.31.1.1.1.15 (An estimate of the interface's current bandwidth in units of 1Mbps)
Low Speed interfaces
Lower speed interfaces can get by with 32-bit counters. If you use 32-bit counters on high-speed interfaces, they can wrap quickly; a 10 Mbps stream of back-to-back, full-size packets causes ifInOctets to wrap in just over 57 minutes. At 100 Mbps, the minimum wrap time is 5.7 minutes, and at 1 Gbps, the minimum is 34 seconds Note 1
  • ifInOctets: 1.3.6.1.2.1.2.2.1.10 (32-bit Octets in counter)
  • ifOutOctets: 1.3.6.1.2.1.2.2.1.16 (32-bit Octets out counter)
  • ifInUcastPkts: 1.3.6.1.2.1.2.2.1.11 (32-bit Packets in counter)
  • ifOutUcastPkts: 1.3.6.1.2.1.2.2.1.17 (32-bit Packets out counter)
  • ifSpeed: 1.3.6.1.2.1.2.2.1.5 (Currently negotiated speed of the interface - Max: 4.294 Gbps)

Table . Available OIDs
OID Description
HOST-RESOURCES-MIB::hrSystem Contains general system information such as uptime, number of users, and number of running processes.
HOST-RESOURCES-MIB::hrStorage Contains data on memory and file system usage.
HOST-RESOURCES-MIB::hrDevices Contains a listing of all processors, network devices, and file systems.
HOST-RESOURCES-MIB::hrSWRun Contains a listing of all running processes.
HOST-RESOURCES-MIB::hrSWRunPerf Contains memory and CPU statistics on the process table from HOST-RESOURCES-MIB::hrSWRun.
HOST-RESOURCES-MIB::hrSWInstalled Contains a listing of the RPM database.

contoh :

snmpwalk -v 2c -c public localhost HOST-RESOURCE-MIB::hrSystem
 
contoh command yang lain :
 
 $ snmpnetstat -v 2c -c public -t 100 -Cn -Cp tcp localhost
Active Internet (tcp) Connections
Proto Local Address Remote Address (state)
tcp *.* *.* CLOSED
tcp *.32806 *.* CLOSED
tcp *.33103 *.* CLOSED
tcp *.33332 *.* CLOSED
tcp 127.0.0.1.8009 127.0.0.1.51617 ESTABLISHED
tcp 127.0.0.1.8009 127.0.0.1.51618 ESTABLISHED
tcp 127.0.0.1.31000 127.0.0.1.32000 ESTABLISHED
tcp 127.0.0.1.31002 127.0.0.1.32001 ESTABLISHED
tcp 127.0.0.1.32000 127.0.0.1.31000 ESTABLISHED
tcp 127.0.0.1.32001 127.0.0.1.31002 ESTABLISHED
tcp 127.0.0.1.51617 127.0.0.1.8009 ESTABLISHED
tcp 127.0.0.1.51618 127.0.0.1.8009 ESTABLISHED
 

MONITOR PEMAKAIAN HARDDISK

Disk Statistics
Edit snmpd.conf.
Tambahkan (assuming a machine with a single ‘/' partition) :

disk / 100000

atau

includeAllDisks 10%  untuk memonitor semua disk

OIDs untuk disk :

Path where the disk is mounted: .1.3.6.1.4.1.2021.9.1.2.1
Path of the device for the partition: .1.3.6.1.4.1.2021.9.1.3.1
Total size of the disk/partion (kBytes): .1.3.6.1.4.1.2021.9.1.6.1
Available space on the disk: .1.3.6.1.4.1.2021.9.1.7.1
Used space on the disk: .1.3.6.1.4.1.2021.9.1.8.1
Percentage of space used on disk: .1.3.6.1.4.1.2021.9.1.9.1
Percentage of inodes used on disk: .1.3.6.1.4.1.2021.9.1.10.1


#snmpget -v 1 -c "community" target_name_or_ip .1.3.6.1.4.1.2021.9.1.9.1

CPU Statistics
Load
1 minute Load: .1.3.6.1.4.1.2021.10.1.3.1
5 minute Load: .1.3.6.1.4.1.2021.10.1.3.2
15 minute Load: .1.3.6.1.4.1.2021.10.1.3.3
CPU
percentage of user CPU time: .1.3.6.1.4.1.2021.11.9.0
raw user cpu time: .1.3.6.1.4.1.2021.11.50.0
percentages of system CPU time: .1.3.6.1.4.1.2021.11.10.0
raw system cpu time: .1.3.6.1.4.1.2021.11.52.0
percentages of idle CPU time: .1.3.6.1.4.1.2021.11.11.0
raw idle cpu time: .1.3.6.1.4.1.2021.11.53.0
raw nice cpu time: .1.3.6.1.4.1.2021.11.51.0
Memory Statistics
Total Swap Size: .1.3.6.1.4.1.2021.4.3.0
Available Swap Space: .1.3.6.1.4.1.2021.4.4.0
Total RAM in machine: .1.3.6.1.4.1.2021.4.5.0
Total RAM used: .1.3.6.1.4.1.2021.4.6.0
Total RAM Free: .1.3.6.1.4.1.2021.4.11.0
Total RAM Shared: .1.3.6.1.4.1.2021.4.13.0
Total RAM Buffered: .1.3.6.1.4.1.2021.4.14.0
Total Cached Memory: .1.3.6.1.4.1.2021.4.15.0


Here is a sample structure of an OID
Iso (1).org(3).dod(6).internet(1).private(4).transition(868).products(2).chassis(4).card(1).slotCps(2)­
.­cpsSlotSummary(1).cpsModuleTable(1).cpsModuleEntry(1).cpsModuleModel(3).3562.3
 

Perl SNMP

modul yang digunakan :
use Net::SNMP;
use Net::SNMP::Interfaces; 
 
link install CPAN modul di Ubuntu :
 deb.perl.it/ubuntu/cpan-deb/

jika error install semua kebutuhan development di Ubuntu
 
apt-get install build essential 
 
 

No comments: