bintang

English French German Spain Italian Dutch Russian Portuguese Japanese Korean Arabic Chinese Simplified

Penyambutan

Selamat Datang Sobat semua di Blog kesayangan anda ,semoga anda dapat menemukan apa yang anda cari dalam Blog Razzaq Is The Best ini saya Abdur Razzaq mengucapkan Selamat Datang, and Assalamu'alaikum Warahmatullah Wabarakatuh,,,

Selasa, 01 Mei 2012

Monitoring System dengan SNMP

Selamat Datang


Monitoring System dengan SNMP


Apa itu SNMP ?

SNMP singkatan dari Simple Network Management Protocol. Protokol ini digunakan untuk memonitor device-device yang terhubung ke jaringan akan kondisi-kondisi systemnya yang penting. Sebagai contoh penggunaan CPU, penggunaan harddisk, penggunaan memory, traffic jaringan dan lain-lain. Untuk device-device yang dapat dipantau adalah device-device seperti PC, Server, atau router. Sedangkan Operating System bisa Linux, *Nix, Windows, atau yang lain.
Dengan Adanya SNMP tidak perlu memeriksa-memeriksa satu-satu server, tetapi anda cukup mengakses satu komputer untuk melihat kondisi seluruh server dan router. Hal ini disebabkan server dan router akan bertindak sebagai SNMP-server yang tugasnya yang menyediakan requset SNMP dari komputer lain. Satu PC akan bertindak sebagai SNMP Agent yaitu komputer yang mengumpulkan informasi-informasi dari SNMP-servers.
Selain digunakan untuk memonitoring sebetulnya SNMP dapat digunakan untuk melakukan perubahan dan memberikan konfigurasi baru ke server. Tetapi pengubahan konfigurasi system di server hanya dilakukan apabila ada perubahan infrastruktur di jaringan.
Nilai-nilai variabel yang diakses menggunakan SNMP diatur dalam bentuk hirarki. Tipe hirarki dan metadata (seperti tipe dan deskripsi variabel) diatur oleh Management Information Bases (MIBs).

Mengatur Server SNMP

Untuk memulai mengatur SNMP anda perlu menginstall beberapa program, yaitu :
  • net-snmp
  • net-snmp-utils
Anda bisa gunakan program yum, dengan cara : 
# yum install net-snmp net-snmp-utils 
Server SNMP untuk security menggunakan password yang disebut dengan community . Walaupun SNMPv1 dan SNMPv2 tidak menggunakan sistem enkripsi pada transfer datanya tetapi kedua versi ini masih banyak digunakan oleh perangkat-perangkat komputer saat ini. Apabila anda ingin menggunakan dengan security yang lebih baik maka sangat disarankan anda menggunakan SNMPv3.

Untuk pengaturan community di SNMP maka, caranya adalah :
  1. Pindahkan file konfigurasi asli dari SNMP anda dengan nama yang lain. Untuk itu gunakan perintah : 
    cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf
  2. Setelah itu anda buat file konfigurasi baru. Dan didalamnya tentukan password community yang baru, misalnya saya beriakn "adadeh" : 
    vi /etc/snmp/snmpd.conf 
    Isikan dengan : 
    rocommunity adadeh
  3. Restart service SNMP server anda : 
    /etc/init.d/snmpd restart
  4. Kemudian cek apakah service SNMP anda sudah berjalan : 
    netstat -tanp|grep snmp 
    Hasilnya :
tcp  0   0   127.0.0.1:199   0.0.0.0:*   LISTEN  3672/snmpd

Mendapatkan Informasi Server dengan SNMP Agent

SNMP Agent digunakan untuk mengambil informasi yang disediakan oleh server. Dimana untuk mendapatkannya anda bisa menggunakan program snmpwalk.Caranya :

# snmpwalk -v [versi] -c [community] [host] [OID] 
Keterangan :
  • -v [versi] => menunjukkan versi dari SNMP yang anda gunakan. Bisa versi 1, 2 dan 3.
  • -c [community] => password community dari SNMP server anda.
  • [host] => host dari SNMP server.
  • [OID] => adalah obyek dari system yang ingin anda tampilkan yang sudah ditentukan oleh MIB. Misalnya anda ingin menampilkan besar penggunaan CPU anda tuliskan hrSystemProcesses.


Sebagai contoh saya ingin mendapatkan informasi tentang proses yang sedang berjalan, caranya : 
# snmpwalk -v 2c -c adadeh 127.0.0.1 hrSWRunName 
Hasilnya :
HOST-RESOURCES-MIB::hrSWRunName.1 = STRING: "init"
HOST-RESOURCES-MIB::hrSWRunName.2 = STRING: "kthreadd"
HOST-RESOURCES-MIB::hrSWRunName.3 = STRING: "migration/0"
HOST-RESOURCES-MIB::hrSWRunName.4 = STRING: "ksoftirqd/0"
HOST-RESOURCES-MIB::hrSWRunName.5 = STRING: "watchdog/0"
HOST-RESOURCES-MIB::hrSWRunName.6 = STRING: "events/0"
HOST-RESOURCES-MIB::hrSWRunName.7 = STRING: "khelper"
HOST-RESOURCES-MIB::hrSWRunName.59 = STRING: "kblockd/0"
HOST-RESOURCES-MIB::hrSWRunName.61 = STRING: "kacpid"

atau melihat persentase dari penggunaan CPU anda gunakan : 
# snmpwalk -v 2c -c adadeh 127.0.0.1 hrSystemProcesses 
Hasilnya :
HOST-RESOURCES-MIB::hrSystemProcesses.0 = Gauge32: 94

Script Informasi System dengan Server SNMP Windows XP

Berikut adalah script untuk menampilkan informasi-informasi system yang penting dari server SNMP di Windows XP. Adapun SNMP yang dipakai adalah SNMP bawaan dari CD Windows XP Professional.
Contoh Script di bawah :
#!/bin/bash
SNMP_PASS="public"
SNMP_VER=1
SNMP_IP="192.168.1.179"
SNMP_FILE="/tmp/result.txt"
snmpwalk -v $SNMP_VER -c $SNMP_PASS $SNMP_IP > $SNMP_FILE
HDSUM=`grep  hrStorageDescr $SNMP_FILE |cut -f2 -d "."|awk '{print $1}'`
clear
echo "Monitor Penggunaan Media Penyimpanan di $SNMP_IP"
echo "======================================================="
for HD in $HDSUM;
do
        HDBYTE=`grep -i hrStorageAllocationUnits.$HD $SNMP_FILE|cut -f4 -d ":"| awk '{print $1}'`
        HDDESC=`grep -i hrStorageDescr.$HD $SNMP_FILE | cut -f 4,5,6 -d":"|cut -f2-10 -d " "`
        let HDSIZE=`grep -i hrStorageSize.$HD $SNMP_FILE|cut -f4 -d ":"|cut -f2 -d" "`*$HDBYTE/1048576
        let HDUSE=`grep -i hrStorageUsed.$HD $SNMP_FILE|cut -f4 -d ":"|cut -f2 -d " "`*$HDBYTE/1048576
        echo "Penggunaan $HDDESC : $HDUSE MB/$HDSIZE MB"
        let HD=$HD+1
done
echo
echo "Traffic Jaringan di $SNMP_IP"
echo "======================================================="
INT=`grep  InOctets /tmp/result.txt |cut -f2 -d "."|awk '{print $1}'`
for x in $INT;
do
        DESC_INT=`grep -i ifDescr.$x $SNMP_FILE | cut -f4,5,6 -d":"|cut -f2-10 -d " "`
        IN_INT=`grep -i ifInOctets.$x $SNMP_FILE|cut -f4 -d ":"|cut -f2 -d" "`
        OUT_INT=`grep -i ifOutOctets.$x $SNMP_FILE|cut -f4 -d ":"|cut -f2 -d" "`
        echo "Traffic jaringan $DESC_INT => TX : $OUT_INT bytes RX : $IN_INT bytes"
done

echo
echo "Monitoring CPU $SNMP_IP"
echo "============================="
PRS_JML=`grep -i hrSystemProcesses $SNMP_FILE|cut -f4 -d ":"|cut -f2 -d " "`
PRS=`grep -i hrProcessorLoad $SNMP_FILE|cut -f4 -d ":"|cut -f2 -d " "`
a=1
for i in $PRS;
do
        echo "Penggunaan CPU $a: $i%"
        let a=$a+1
done
echo "Jumlah Process : $PRS_JML"


Tidak ada komentar:

Tentang Razzaq

Foto saya
Sidodadi, Pringsewu, Lampung, Indonesia
Assalamu'alaikum WR.WB.
Exit Jangan Lupa Klik Like Ya