21 March 2013

Instalacija Zabbixa 2 na Centosu 6.3 x64

Zabbix je jedan od najpoznatijih monitoring sistema, a uz to i besplatan, tj. pod GPL licencom. Ovo uputstvo je rađeno za Centos 6.3 x64 i podrazumijeva se da ga čitaoc ima instaliranog sa podešenom mrežom i izlazom na Internet. Uputstvo obuhvata kompajliranje source paketa. Na Zabbixovom sajtu se mogu naći i paketi za određene distribucije, kao i gotovi appliance-i za razne platforme. Zabbix se nalazi i u repozitorijima nekih poznatijih distribucija, te ga je moguće i tako instalirati, ali takav način instalacije daje znatno manju kontrolu od instaliranja iz source-a.

Instalacija


  1. Prvo se instaliraju komponente koje su neophodne za kompajliranje paketa za Zabbix (zajedno sa dependency-jima):
    # yum install gcc
    # yum install automake
    # yum install make
  2. Instalirati sljedeće pakete (takođe sa svim dendency-jima). Oni su uslov za normalno funkcionisanje Zabbixa: mysql-server, mysql-devel, curl-devel, net-snmp-devel, OpenIPMI-devel, libssh2-devel.
  3. Sa adrese http://www.zabbix.com/download.php skinuti Zabbix source pakete i raspakovati ih u neki folder, npr. zabbix-2.0.5. Zatim ove raspakovane pakete WinSCP-om prebaciti na naš Linux (nekome će jednostavnije biti raspakivati na samom Linuxu).
  4. Ući u taj folder i setovati execute permission za fajl configure:# cd /root/zabbix-2.0.5
    # chmod +x configure
  5. Izvršiti sljedeće komande za konfigurisanje instalacije i kompajliranje:
    # ./configure --enable-server --with-mysql --with-net-snmp --with-libcurl --with-openipmi --enable-agent

    Trebao bi da se dobije sljedeći output:
    Enable server: yes
    With database: MySQL
    WEB Monitoring via: cURL
    SNMP: net-snmp
    IPMI: openipmi
    Enable agent: yes

    Zatim se odradi:
   # make install
  1. Dodati korisnike za Linux:
    # groupadd zabbix
    # useradd -g zabbix zabbix
  2. U folderu /usr/local/etc/ postoje fajlovi zabbix_server.conf i zabbix_agentd.conf. U konfiguraciji servera će biti potrebno izmijeniti stavke DBName, DBUser i DBPassword. Za DBName ćemo ostaviti podrazumijevano podešavanje - baza će se zvati zabbix. Sa ostala dva parametra će biti potrebno skinuti komentar i takođe im setovati vrijednost na zabbix.  
  3. Podešavanje MySQL-a:
    # mysql_install_db
    - Inicijalizacija MySQL-a
    # /usr/bin/mysqladmin
    -u root password 'pa$$w0rd' - Setovanje passworda za korisnika root
    # chkconfig mysqld on
    - Podešavanje MySQL daemona da se pokreće automatski sa sistemom
    # mysql -u root -p
    - logovanje roota na MySQL server
    mysql> create database zabbix character set utf8;
    - Kreiranje baze zabbix
    mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix'; - Podešavanje permisija za korisnika zabbix. Koristi se isti password koji smo setovali u fajlu zabbix_server.conf. Sada je potrebno otići u sljedeći folder:
    # cd /root/zabbix-2.0.5/database/mysql
    Zatim izvršiti sljedeće komande kojima se importuju inicijalne baze Zabbixa:

    # mysql -u zabbix -p zabbix < schema.sql
    # mysql -u zabbix -p zabbix < images.sql
    # mysql -u zabbix -p zabbix < data.sql

    Poslije svake unesene komande mysql će pitati za password za korisnika
    zabbix, to je takođe zabbix. Bitan je redoslijed importovanja baza, moraju se importovati navedenim redoslijedom.
  4. Zabbix server i agent su sada spremni da se pokrenu. To se radi komandama
    # /usr/local/sbin/zabbix_server
    # /usr/local/sbin/zabbix_agentd
  5. Podešavanje automatskog pokretanja. Iz foldera /root/zabbix-2.0.5/misc/init.d/fedora/core5/ iskopirati skripte zabbix_agentd i zabbix_server u folder /etc/init.d/. Zatim se komandama
    # chmod +x /etc/init.d/zabbix_agentd

    # chmod +x /etc/init.d/zabbix_server
    ove skripte učine izvršnim (dodaju im se execute permisije). Onda se ove skripte dodaju u servise na sljedeći način:

    # chkconfig --add zabbix_agentd
    # chkconfig --add zabbix_server

    Takođe je potrebno setovati automatsko pokretanje ovih servisa:

    # chkconfig zabbix_agentd on
    # chkconfig zabbix_server on

    Kada se poslije ovoga izvrši komanda

    # chkconfig

    u listi servisa bi trebali biti i
    zabbix_agentd i zabbix_server i trebalo bi biti setovano "on" za runlevele 2, 3, 4 i 5.
    Ubuduće će se ovim servisima moći upravljati kao i sa svakim drugim servisom (npr.
    service zabbix_server restart).
  6. Instalacija web servera. Zabbix može raditi na bilo kojem web serveru koji podržava PHP. Slijedi instalacija Apache-a sa podrškom za PHP:
    # yum install httpd mod_ssl
    - Osnovna instalacija Apache-a.
    # service httpd start
    - Startovanje web servera.
    Normalno je da se prilikom prvog pokretanja pojavi poruka
    "Starting httpd: httpd: apr_sockaddr_info_get() failed for zabbix.racunari-bl.com httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName". Da bi se riješio ovaj problem, potrebno je otvoriti fajl:
    # nano /etc/httpd/conf/httpd.conf

    U njemu, pri kraju, postoji stavka
    #ServerName www.example.com:80. Ispod nje upisati (u novom redu)
    ServerName zabbix
    .
    Sačuvati izmjene i resetovati Apache komandom

    # service httpd restart
    .
    Potrebno je i otvoriti port za web saobraćaj na firewallu, npr.

    # iptables -A INPUT -p tcp -m state --state NEW, ESTABLISHED -m tcp --dport 80 -j ACCEPT

    # service iptables save - Ovim se trenutna Iptables pravila snimaju permanentno.
    # chkconfig httpd on
    - Uključivanje automatskog startovanja Apache-a
    # yum install php-mysql php-devel php-gd php-pecl-memcache php-pspell php-snmp php-xmlrpc php-xml php-bcmath
    - Instalacija PHP-a i njegovih dodataka.
    U fajlu
    /etc/php.ini treba setovati nekoliko parametara:
    date.timezone = Europe/Belgrade
    post_max_size = 16M
    max_execution_time = 300
    max_input_time = 300
    # service httpd restart
    - Prilikom sljedećeg startovanja Apache-a, trebali bi biti loadovani i moduli za PHP.
  7. Instaliranje Web interfejsa. Folder /root/zabbix-2.0.5/frontends/php iskopirati u /var/www/html i preimenovati ga u zabbix. Na nekom računaru koji je u istoj mreži u web browseru otići na adresu http://172.18.2.95/zabbix (pretpostavimo da je 172.18.2.95 adresa našeg Linuxa). Trebao bi da se pojavi prvi ekran Zabbix-ovog Setupa. Na ovom ekranu kliknuti Next.
    Otvara se ekran "Check of pre-requisites". Ovdje će Zabbix provjeriti da li su instalirani i podešeni svi moduli koji su mu potrebni. Trebalo bi da pored svih stavki bude zelenim slovima ispisano "OK".  Kliknuti Next.
    Na sljedećem ekranu se konfigurišu parametri za pristup bazi: Database type: MySQL, Database host: localhost, Database port: 0 (0 označava korištenje standardnog porta za MySQL - TCP 3306), Database name: zabbix, User: zabbix, Password: zabbix. Ispod ovih polja se nalazi dugme "Test connection" - poslije pritiska na njega bi se trebao pojaviti zeleni znak OK, ako je sve u redu. Kliknuti Next.
    Na ekranu "Zabbix server details" unijeti puno ime hosta računara na kojem se pokreće zabbix. U mom slučaju je to bilo zabbix.test.local. Bitno je da se ovo ime može razriješiti preko DNS-a ili preko hosts fajla. Moguće je navesti i IP adresu umjesto imena. Ostaviti podrazumijevani port 100051 i opciono unijeti ime Zabbix instalacije, to sam podesio na "Zabbix server". Kliknuti Next.
    Sljedeći ekran prikazuje ukratko sve parametre koje smo podešavali. Klikom na dugme Next počinje instalacija. Ako se pojavi poruka "Configuration file "/var/www/html/zabbix/conf/zabbix.conf.php" created: Fail", potrebno je na dnu ekrana kliknuti "Download configuration file". i ručno ga snimiti na navedenu lokaciju. Poslije ovoga kliknuti "Retry" i na kraju Finish.

To je sve, vezano za instalaciju Zabbixa. Sada se može otići na adresu http://172.18.2.95/zabbix. Korisničko ime je Admin, a password zabbix.


Reference


  1. Zabbix 1.8 Network Monitoring, PACKT Publishing, April 2010
  2. linux.about.com

No comments:

Post a Comment

Vas komentar...