Rrdtool, farklı kaynaklardan aldığı verileri saklamak ve organize etmek için kullanılan bir araçtır. Çok güçlü ve çok fazla esnek olan bu araç komut satırından kullanılması kimi zaman karmaşık hale gelebilmektedir. Bu karmaşıklığı azaltmak ve kullanımını kolaylaştırmak için CACTI web yönetim arayüzü geliştirilmiştir.
Aşağıda CACTI'nin CentOS 7 üzerindeki kurulumu ve yapılandırılması kullanılacaktır.
CACTI kayak kodtan kurulabildiği gibi RPM paketlerden de kurulabilmektedir. Burada RPM paketleri ile kurulumu gösterilecektir.
CACTI kurulumu için öncelikle kaynak kodun derlenip konduğu EPEL deposu eklenir.
# yum install epel-release -y
CACTI kurulumu için aşağıdaki komut çalıştırılır. Bu komut ile gerekli olan paketler ve bağımlı paketler kurulur:
# yum install cacti rrdtool net-snmp-utils httpd php
Veri tabanı kurulur:
# yum install mariadb mariadb-server
Kurulumlar tamamdıktan sonra yapılandırma aşamasına geçilir Öncelikle veritabanı yapılndırılır:
# systemctl start mariadb
# mysqladmin -u root password
New password: ******
Confirm new password: ******
CACTI veritabanı oluşturulur ve gerekli tablolar oluşturulur:
# mysqladmin -u root create cacti -p
# mysql -u root -p cacti < /usr/share/doc/cacti-0.8.8b/cacti.sql
CACTI veritabanı için bir kullanıcı oluşturulur ve cacti veritabanı için gerekli (tüm) izinler verilir:
# mysql -u root -p
MariaDB [(none)]> CREATE USER cuser@localhost IDENTIFIED BY '123qwe';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cacti.* TO 'cuser'@'localhost';
MariaDB [(none)]>FLUSH PRIVILEGES;
MariaDB [(none)]>exit;
PHP'nin veritabanı erişimi için yapılandırılması yapılır:
# cd /usr/share/cacti
# vim include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cuser";
$database_password = "123qwe";
$database_port = "3306";
$database_ssl = false;
Kurulum yapılan sunucu üzerinde bir web tarayıcısı açılarak aşağıdaki adresten yapılandırma arayüzüne erişilir. Sonrasında aşağıdaki adımlar izlenerek web yapılandırması tamamlanır. Eksik uygulamalar kurularak uyarılar giderilir. Açılan giriş sayfasına admin/admin ile ilk giriş yapılır. İlk girişten sonra şifrenin değiştirilmesi istenir.
firefox http://localhost/cacti
İlk giriş yapıldıktan sonra izlenecek donanımların eklenmesi adımına geçilir. Ana ekranda Devices/Add seçilir ve izlenecek donanım temel bilgi giriş ekranı gelir.
Burada gerekli bilgiler girilir.
GENERAL HOST OPTIONS
Description (Donanım için kısa tanım.)
Hostname (IP adresi ve FQDN)
Host Template (Daha önceden benzer donanımlar için tanımlanmış grafik ve veri kaynaklarını içerir. Böylece seçilen benzer donanımlar için istenen tüm grafikler oluşturulur.)
SNMP OPTIONS
Burada SNMP erişimi için gerekli ayarlar yapılır.
NOT : İzlenecek donanımda SNMP yapılandırması gerçekleşmiş olması gerekir.
Komut Satırı ile İşlemler
Donanım Ekleme:
Önce listeleme komutu kullanılarak template ve community bilgiler alınır.
# php -q add_device.php --list-host-templates
# php -q add_device.php --list-communities
Daha sonra gerekli bilgiler (zorunlu ve seçimlik) girilerek komut işletilir.
# php -q add_device.php --description="sunucusu 01" --ip="1.1.1.1" --template=10 --community="public"
İlgili Veri Sorgulama Yönteminin Belirlenmesi
Önce donanım/host listesi alınır ve ilgili donanım/host ID si öğrenilir.
# php -q add_data_query.php --list-hosts
Veri sorgulama yöntemleri listelenerek kullanılacak yöntemin ID si öğrenilir.
# php -q add_data_query.php --list-data-queries
Daha sonra ilgili donanım/host için sogulama yöntemi ilişkilendirilir.
# php -q add_data_query.php --host-id=60 --data-query-id=1 --reindex-method=fields
# php -q add_data_query.php --host-id=60 --data-query-id=5 --reindex-method=fields
Grafik Şablon (Template) İlişkilendirilmesi
Donanım/host listesi alınır:
# php -q add_graph_template.php --list-hosts
Şablon listesi alınır:
# php -q add_graph_template.php --list-graph-template
İstenen Donanım/host a şablon ilişkilendirilmesi.
# php -q add_graph_template.php --host-id=11 --graph-template-id=7
# php -q add_graph_template.php --host-id=11 --graph-template-id=8
# php -q add_graph_template.php --host-id=11 --graph-template-id=9
Oluşturulacak Grefiklerin Belirlenmesi
Donanımlar İçin Listeleme (Tree) Yapısının Oluşturulması
Listeleme
Donanımlar bir ağaç yapısı içerisinde listelenir. Arzu edilirse alt dallar oluşturularak donanımlar türlerine göre sınıflandırılabilirler.
Öncelikle mevcut yapı görüntülenir:
# php -q add_tree.php --list-trees
Known Trees:
id sort method name
1 Manual Ordering (No Sorting) Default Tree
2 Manual Ordering (No Sorting) Ağ Donanımları
...
Ağaç yapısına eklenecek donanımların listelenmesi:
# php -q add_tree.php --list-hosts
Ağaç yapısı içerisinde belli bir gruba ait donanımların listelenmesi:
# php -q add_tree.php --list-nodes --tree-id=2
Known Tree Nodes:
type id parentid title attribs
Host 8 N/A 172.16.0.2 Graph Template
...
Ekleme
Köke dizin ekleme:
# php -q add_tree.php --type=tree --name="deneme" --sort-method=manual
Tree Created - tree-id: (7)
Alt dizin oluşturma:
#php -q add_tree.php --type=node --node-type=header --tree-id=7 --name="Alt Başlık Deneme"
Alt dizine donanım ekleme:
# php -q add_tree.php --tree-id=7 --parent-node=134 --type=node --node-type=host --host-id=85
Kaynak:
http://www.cacti.net/downloads/docs/html/cli_add_tree.html