Senin, 28 Oktober 2013

Pada artikel kali ini saya akan membahas mengenai bagaimana cara install VnStat dan VnStat PHP.  Langsung aja disimak yuk !


Apa sih VnStat dan VnStat PHP itu ?
VnStat adalah aplikasi console yang berfungsi sebagai bandwith monitoring. Ya jadi dengan menggunakan VnStat ini, Anda dapat melihat statistik traffic bandwith Anda.
Sedangkan VnStat PHP adalah tampilan interface pada WEB, jadi selain melalui console atau terminal, Anda juga dapat melihat statistiknya di browser.

Berikut screenshot untuk VnStat PHP

Bagaimana Cara Installnya ? 

Sebelum memulai menginstall, ada beberapa hal yang perlu disiapkan. Yaitu pastikan pada sistem Anda sudah terpasang web server. Anda dapat baca disini untuk cara meinginstall Web Server.

Langkah 1
Install dulu VnStat consolenya, dengan menggunakan perintah sebagai berikut !

#apt-get install vnstat

Kemudian jalankan perintah berikut

#vnstat -i eth0
Kemudian Anda akan melihat data trafic pada console/terminal

Langkah 2
Install PHP-gd Exntension. Lakukan ini jika PHP-gd Extension belum terinstall pada sistem Anda. Jalankan perintah berikut

#apt-get install php5-gd
Setelah proses selesai, jangan lupa untuk merestart apache dengan perintah berikut

#/etc/init.d/apache2 restart

Langkah 3
Download dan install VnStat PHP Fronted. Ikuti langkah-langkah berikut

Download Aplikasinya di sini :

Lalu pindah ke direktori tmp, dengan mengetikan perintah berikut :

#cd /tmp/

Kemudian extract dengan menjalankan printah berikut

#tar xvf vnstat_php_frontend-1.5.1.tar.gz

Dan jalankan perintah berikut

#cp -fr vnstat_php_frontend-1.5.1/ /var/www/vnstat

Langkah 4
Pada tahap ini adalah saatnya untuk mengkonfigurasi vnstat PHP
Buka file konfigurasinya dengan perintah berikut

#nano /var/www/vnstat/config.php

Ubah ke bahasa Inggris

// edit these to reflect your particular situation
$locale = 'en_US.UTF-8';
$language = 'en';

Tentukan device mana yang ingin ditampilkan statistiknya

// list of network interfaces monitored by vnStat
$iface_list = array('eth0', 'eth1');

Jika sudah selesai mengedit file config.php silahkan tekan CTRL+O kemudian tekan ENTER, dan tekanCTRL+X untuk keluar dari editor

Langkah Terakhir
Akses VnStat melalui browser dengan alamat

http://localhost/vnstat

atau

http://ip-anda/vnstat

Nah, selesai sudah tahap demi tahap untuk menginstall VnStat, sampai jumpa pada post selanjutnya.

Asterisk adalah software IP IPX untuk membuat sistem layanan komunikasi telepon melalui internet atau biasa disebut VoIP (Voice over Internet Protocol). Asterisk adalah software Open Source yang berjalan di Linux. Asterisk juga memungkinkan komunikasi antar pengguna telepon regular dengan telepon berbasis sip (sip phones).


Untuk Anda yang baru mulai belajar VoIP, Asterisk bisa dimanfaatkan untuk membuat sebuah server VoIP sederhana. Tutorial berikut akan membahas bagaimana membuat sebuah VoIP server untuk jaringan LAN. Saya menggunakan Asterisk sebagai VoIP servernya. Untuk membuatnya minimal diperlukan sebuah PC Linux pada gambar topologi Server VoIP, koneksi LAN, dan bisa juga koneksi Internet. Berikut adalah cara-caranya :

#sudo apt-get install asterisk

Jika sudah selesai terinstall, topologi LAN yang saya gunakan adalah seperti ini (di setting dalam 1 kelas IP Addressnya)


Selanjutnya konfigurasi file sip.conf

#pico /etc/asterisk/sip.conf

Kemudian tambahkan perintah berikut di bagian akhir file :

[1001]
type=friend
context=coba
username=1001
secret=1001 (misal passwordnya)
host=dynamic

[1002]
type=friend
context=coba
username=1002
secret=1002
host=dynamic

Selanjutnya konfigurasi file extensions.conf

#pico /etc/asterisk/extensions.conf

kemudian ketikkan baris berikut pada bagian akhir file :

[coba]
exten => 1001,1,Dial(SIP/1001)
exten => 1002,1,Dial(SIP/1002)

Perintah berikut digunakan untuk meregistrasikan user dengan nomor 1001 dan 1002 dan seterusnya jika ingin menambahkan. Protokol signaling yang digunakan untuk panggilan tersebut yaitu SIP.

Selanjutnya restart Asterisknya

#asterisk -rx "reload"

Untuk selanjutnya di client dibutuhkan softphone untuk call/listen dan software Ekiga atau X-Lite. Pada software nya cukup di setting SIP akun nya dengan username 1001 atau 1002 dan seterusnya, password, serta alamat IP atau domain dimana Asterisk di install. 


Semoga Bermanfaat.

Beberapa hal yang menyebabkan monitoring wajib dilakukan untuk sebuah network :

  • Untuk monitoring performance dari jaringan kita
  • Mengetahui status (up/down) service dari host yang kita monitor secara realtime dengan system allert/alarm
  • Media log dari service sehingga segala aktivitas host yang dimonitor akan tercatat
Masih banyak keuntungan dari monitoring ini, kalau buat saya sebagai admin, tentu memudahkan dalam management network dan service setiap host yang diurus sehingga laporan kejadian host / service down dapat diterima langsung.
Dalam management jaringan, ada beberapa hal yang mesti difahami terlebih dahulu yaitu pemahaman tentang Monitoring Manager dan Monitoring Agent. Untuk layanan yang berbasis Internet Protokol, digunakan Simple Network Management Protocol (SNMP) yang merupakan protokol untuk membawa data informasi yang diperlukan oleh manager dari agen.
Hal yang paling penting adalah justru data yang ingin dimonitor apa saja. Beberapa macam monitoring dilakukan terhadap :
  1. Interface Port (untuk monitoring penggunaan resource dan trafic)
  2. Process (untuk monitoring service seperti web, ftp, ssh, email, dll)
  3. Latency (mengukur kehandalan dari jaringan)
  4. Physical Devices (hardisk dan memory)

Network Manager

Network Manager berfungsi sebagai media yang mengumpulkan (trap) semua informasi dari setiap host, informasi yang dikumpulkan berasal dari Management Information Base(MIB) dari setiap host. Network Manager sering juga disebut dengan Network Monitoring System (NMS) server. Server ini akan menyimpan semua informasi ke dalam bentuk database. Database ini bisa kita olah menjadi sebuah User Interface, biasa nya dalam bentuk aplikasi web.

Monitoring Agent

Monitoring agent ini bertugas untuk mengambil seluruh informasi MIB dari host yang disimpan kemudian mengirimkan nya ke manager. Untuk IP network, digunakan SNMP daemon sebagai agent untuk dikirmkan dalam bentuk UDP packet ke manager melalui protokol snmp.
1 ilustrasi manager dan host agent
Sekian dulu saja kuliah singkat nya. Mendingan langsung ke tutorial nya sahaja deh

Tutorial

Dalam tutorial ini hal yang harus disiapkan:
  1. NMS Server     : Untuk diinstall manager cacti
  2. Host        : Untuk dimonitor
Spesifikasi manager :
  • Operating System : Debian Lenny
  • Memory : 1 GB
  • Hardisk : 80 GB

PERSIAPAN SERVER

Setting Repository, proxy, dan environment server

edit /etc/apt/source.list tambahkan list di bawah
monitoring-server# nano /etc/apt/source.list
deb-src http://kebo.vlsm.org/debian/ lenny main
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main
Jika berada di belakang proxy, setting proxy apt
monitoring-server# nano /etc/apt/apt.conf
Update dan upgrade repository dan sistem
monitoring-server# apt-get update
……………
monitoring-server# apt-get upgrade

INSTALL CACTI

Sebelum menginstall cacti, diperlukan web server. Web server dapat diinstall saat instalasi debian, atau dengan menginstall lewat repository. (jika sudah ada web server, skip)
monitoring-server# apt-get install apache2 mysql-server mysql-client php5 php5-mysql php-common
Pastikan service nya berjalan setelah instalasi. Edit database root mysql password
monitoring-server# mysqladmin –u root –p password ‘<password>’
Enter password: <kosong>
Buatlah database cacti di mysql
Monitoring-server# mysql –u root –p
Enter password: <password>
mysql> create database cacti;
Query OK, 1 row affected (0.00 sec)
mysql> quit;
Untuk menginstall cacti, diperlukan beberapa dependency. Karena saya malas menginstall dependency satu-satu, yasudah install cacti lewat repository (untuk itu kenapa dipilih linux debian, atau ubuntu)
monitoring-server# apt-get install cacti
Semua dependency akan diinstall yaitu snmp, net-snmp, rrdtools, dll (saya juga kurang paham karena banyak sekali)
Setting database dengan user dan database yang telah ditentukan sebelumnya.
Jika semua telah berhasil dikonfigurasi dan diinstall, maka web manager kita telah siap digunakan. Karena saya ingin membuat cacti manager dengan yang paling update, maka setting default vhost apache agar saat kita buka alamat web kita langsung terbuka halaman cacti manager.
Buat directory untuk cacti
monitoring-server# mkdir /home/cacti
monitoring-server# nano /etc/apache2/sites-enabled/000-default
DocumentRoot /home/cacti/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/cacti/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
monitoring-server# apache2ctl restart
Masukan ke folder /home/cacti/ ekstract file tersebut
monitoring-server# cp cacti-0.8.7g.tar.gz /home/cacti/
monitoring-server# tar –xzvf cacti-0.8.7g.tar.gz
monitoring-server# mv –f /home/cacti/ cacti-0.8.7g/* /home/cacti/
Buat database mysql baru untuk cacti manager yang baru, kemudian import database cacti yang baru ke database tersebut.
monitoring-server# mysql –u root –p
Enter password:
mysql> create database monitoring;
mysql> exit;
bye
monitoring-server# cd /home/cacti/
monitoring-server# mysql –u root –p monitoring < cacti.sql
Enter password:
Edit konfigurasi database cacti :
monitoring-server# nano /home/irham/include/config.php
$database_type = “mysql”;
$database_default = “monitoring”;
$database_hostname = “localhost”;
$database_username = “root”;
$database_password = “rootpassword”;
$database_port = “3306″;
Akses server kita dengan browser, masuk ke http://servernms/ akan keluar halaman:
Klik Next >>
Pilin New Install, klik Next >>
Pastikan semua OK: FILE FOUND, jika belum ada ERROR, silakan install kekurangan nya. Misal rrdtool error, install rrd tool melalui apt kemudian konfigurasi path nya. Jika selesai dan OK, klik Finish
Akan ada tampilan di atas, silakan login dengan :
User : admin
Password : admin
Ganti dengan password baru, setelas selesai, klik save, akan masuk tampilan manager cacti (default)
Cacti selesai terinstall. Silakan konfigurasi setting sesuai dengan kebutuhan.
Setting Poller
Poller berfungsi untuk menggenerate data dari host yang dimonitoring oleh manager. Poller bisa menggunakan php poller atau dengan menggunakan spine, untuk performa yang baik, gunakan cacti-spine sebagai poller. Install dan konfigurasi cacti-poller
monitoring-server# apt-get install cacti-spine
monitoring-server# nano /etc/cacti/spine.conf
DB_Host localhost
DB_Database monitoring
DB_User root
DB_Pass <passwordmysql>
Konfigurasi di web cacti, pilih Settings -> Poller, Pilih Spine pada poller type. Biarkan yang lain nya default.
Jika tidak ingin menggunakan spine, buatlah cron sebagai berikut :
monitoring-server# nano /etc/crontab
*/5 * * * * root php /home/cacti/poller.php > /dev/null 2>&1
Pilih poller type cmd di web cacti.

INSTALL PLUGIN

Untuk memudahkan instalasi plugin, terlebih dahulu install plugin architecture. Plugin ini berfungsi untuk management plugin yang akan diinstall di cacti.
Download Plugin architecture, ekstract kemudian patch
monitoring-server# tar –xzvf cacti-plugin-0.8.7g-PA-v2.8.tar.gz
monitoring-server# mv cacti-plugin-arch/* /home/cacti/
monitoring-server# cd /home/cacti/
monitoring-server# patch -p1 -N < cacti-plugin-0.8.7g-PA-v2.8.diff
monitoring-server# mysql –u root –p monitoring < pa.sql
Enter password:
Pada web cacti, pilih User Management -> klik admin, check Plugin Management untuk mengaktifkan fitur Plugin Management
Setelah disave, maka akan keluar menu Plugin Management di sub menuConfiguration
Install plugin yang akan dibutuhkan.
Untuk menambahkan plugin di cacti, kita tinggal memasukkan plugin tersebut ke directory plugins. Masuk ke folder plugins
monitoring-server# cd /home/cacti/plugins/
Di dalam tutorial ini akan diinstall beberapa plugin yang akan digunakan.
  1. Weathermap (Untuk monitoring pemakaian bandwith dalam bentuk map) –http://www.network-weathermap.com/files/php-weathermap-0.97a.zip
  2. Thold (Threshold, untuk memberikan peringatan jika pemakaian service melebihi batas treshold yang ditentukan, misalnya pemakaian bandwidth 80MB – 90MB) –http://www.cacti.net/downloads/cacti-0.8.zip
  3. Reportit (Reporting pemakaian service dalam bentuk table dan grafik serta reporting ke dalam csv) – https://sourceforge.net/project/showfiles.php?group_id=201406
Download plugin ke /home/cacti/plugins, extract kemudian aktifkan melalui Plugin Management di cacti web.
Install Reportit
Masukan ke folder /home/cacti/plugins/
monitoring-server# tar –xzvf reportit_v073.tar.gz
Aktifkan Reportit lewat web cacti
Jika berhasil terinstall akan terdatap menu Report Configurations, dan
Link Reports di top menu.
Untuk Plugin yang lainnya, silakan ikuti seperti langkah-langkah di atas.


Pada postingan sebelum nya kita telah membahas tentang pembuatan NMS menggunakan cacti, sekarang saat nya bagian konfigurasi. Pada postingan kali ini yang akan dibahas adalah


  • Graph Management
  • Konfigurasi SNMP di host
  • Konfigurasi Host di Cacti
Masih tentang cacti dan SNMP.
Jika sebelumnya kita telah berhasil menginstall cacti, langkah selanjutnya mengecek apakah cacti kita dapat berjalan seharusnya yaitu memberikan menampilkan informasi monitoring snmp dari host ke dalam bentuk grafik menggunakan rrd tools. Graph yang harus ditampilkan adalah sebagai berikut
Grafik tersebut di generate selama 5 menit sekali, jika tidak terbuat grafik selama 5 menit, ada beberapa kesalahan yang umum terjadi,
  1. Setting permission di root web cacti. Setting permission untuk user www-data dan group www-data. Hal ini karena cacti berjalan di atas daemon apache. Sesuaikan user tersebut dengan user yang dipakai oleh apache, misalkan apache atau httpd.
  2. Poller tidakberjalan. Untuk mengecek poller tersebut bekerja, klik System Utilities kemudian pada bagaian poller administration, klik poller cache dan View SNMP Cache. Apakah terjadi error di saat polling oleh cacti.
Jika sudah tidak ada masalah langkah selanjutnya adalah konfigurasi snmpd di setiap host yang akan kita monitoring. Pada tutorial ini host yang akan dimonitor adalah :
  1. PC Router (FreeBSD)
  2. Server Linux Ubuntu

KONFIGURASI SNMP HOST DI SERVER FREEBSD

Konfigurasi di FreeBSD, untuk PC Router.
Install SNMP lewat ports:
host-freebsd# cd /usr/ports/net-mgmt/net-snmp/
host-freebsd# make install clean
setelah semua terinstall, buatlah konfigurasi snmpd
host-freebsd# touch /etc/snmpd.conf
host-freebsd# ee /etc/snmpd.conf
contoh konfigurasi
###############################################################
# Access Control
###############################################################
# First, map the community name (COMMUNITY) into a security name
# (local and mynetwork, depending on where the request is coming
# from):
# sec.name source community
com2sec local localhost <community>
com2sec cacti network/prefix <community>
####
# Second, map the security names into group names:
# sec.model sec.name
group MyRWGroup v1 local
group MyRWGroup v2c local
group MyRWGroup usm local
group MyROGroup v1 cacti
group MyROGroup v2c cacti
group MyROGroup usm cacti
####
# Third, create a view for us to let the groups have rights to:
# incl/excl subtree mask
view all included .1 80
####
# Finally, grant the 2 groups access to the 1 view with different
# write permissions:
# context sec.model sec.level match read write notif
access MyROGroup “” any noauth exact all none none
access MyRWGroup “” any noauth exact all all none
###################
# trap tujuan
###################
trapsink <IP NMS> <community>
trap2sink <IP NMS> <community>
###############################################################
# System contact information
#
syslocation Indo Network
syscontact Admin <admin@indonetwork.com>
###############################################################
# Process checks.
proc quagga
proc ospfd
proc ospf6d
###############################################################
# disk checks
disk /var
###############################################################
# load average checks
#
# Check for loads:
load 12 14 14
Setting konfigurasi di rc.conf
host-freebsd# ee /etc/rc.conf
#snmp configuration
snmpd_enable=”YES”
snmpd_flags=”-a”
snmpd_pidfile=”/var/run/snmpd.pid”
snmpd_conffile=”/etc/snmpd.conf”
Jalankan daemon SNMP,
host-freebsd# /usr/local/etc/rc.d/snmpd start
Cek konfigurasi menggunakan snmpwalk, tools ini juga dapat dipakai untuk mengecek semua informasi yang dibawa oleh snmpd di suatu host.
host-freebsd# snmpwalk –v 2c –c <cummunityname> localhost system
SNMPv2-MIB::sysDescr.0 = STRING: FreeBSD host-freebsd.local 7.3-RELEASE FreeBSD 7.3-RELEASE #0: Wed Jul 14 01:02:58 WIT 2010 root@ host-freebsd.local:/usr/src/sys/i386/compile/ROUTER2 i386
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.8
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (243257958) 28 days, 3:42:59.58
SNMPv2-MIB::sysContact.0 = STRING: Admin <admin@host-freebsd.local>
SNMPv2-MIB::sysName.0 = STRING: host-freebsd.local
SNMPv2-MIB::sysLocation.0 = STRING: Router Local
SNMPv2-MIB::sysServices.0 = INTEGER: 72
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (14) 0:00:00.14
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
SNMPv2-MIB::sysORID.7 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.8 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
SNMPv2-MIB::sysORID.9 = OID: IF-MIB::ifMIB
—- dst —-
Setelah keluar hasil di atas, host kita sudah siap untuk dimasukan ke dalam manager.
Untuk Debian, ubuntu dapat dilakukan instalasi net-snmp menggunakan apt-get install net-snmp
Untuk Redhat, Fedora, dan CentOS dapat dilakukan instalasi net-snmp menggunakan yum –y install net-snmp
Terkadang untuk konfigurasi di linux, kita mesti menentukan sendiri parameter konfigurasi nya sehingga jika kita periksa dengan
# ps ax | grep snmpd
27806 ? S 0:49 /usr/sbin/snmpd -c /etc/snmp/snmpd.conf
Untuk Debian dan Ubuntu, edit file /etc/default/snmpd, edit baris SNMPDOPTS menjadi
# nano /etc/default/snmpd
SNMPDOPTS=’-c /etc/snmp/snmpd.conf’
Untuk Redhat, Fedora dan CentOS
# nano /etc/sysconfig/snmpd.options
OPTIONS=”-c /etc/snmp/snmpd.conf”

SETTING HOST DI MANAGER

Pada menu management, klik devices. Di sudut kanan pada panel Devices, klik add
Akan muncul halaman
Isi semua parameter penting yang diperlukan,
  • Description = Nama Host
  • Hostname = domain/ip address
  • Host Template = Generic SNMP-enable Host
  • SNMP Version = Version 2
  • SNMP Community = <community host>
Perhatikan, nama community host harus sama dengan community yang disetting di cacti. Jika berhasil ditambahkan maka akan muncul notifikasi berikut
Setelah itu buatlah grafik dengan memilik Template dari Associate Graph Template dan Associated Data Queries, bergantung kepada jenis host yang dimonitor. Jika router, maka biasanya SNMP – Interface Statistic, jika data sotrage, biasa ditambahkan SNMP – Get Mounted Partition. Setelah itu buat lah grafik dengan mengklik *Create Graphs for this Host di bagian atas.
Enable graph2 yang akan dimonitor.
Pastikan status host yang dimonitor berada dalam keadaan UP
Untuk memasukan graph kita ke Graph Management, klik host kemudian pada bagian bawah terdapat Choose an action : pilih Place on a Tree kemudian klik Go.
Apabila dalam beberapa waktu polling kita berhasil akan terdapat graph dengan nilai2 yang keluar setiap 5 menit sekali. Di bawah ini graph yang telah digenerate salama satu hari satu malam.
Kunjungi http://forums.cacti.net/ untuk mendapatkan plugin dan template graph untuk beberapa services, misalnya untuk monitoring DNS, MySQL dan PostgreSQL.
Okay, sekian dulu saja dari saya