Source Install ZABBIX 4.0 Frontend on CentOS 7

자빅스 4.0 소스 인스톨(컴파일) – WEB UI 설치 가이드

ZABBIX Frontend 는 자빅스를 이용하여 수집한 모니터링 데이터들을 모아서 여러가지 형태로 보여줄 수 있는 WEB UI 입니다. 단순히 데이터를 보여줄 뿐 아니라 여러가지 기능들을 이용하여 데이터를 조합하여 그래프로 보여주거나 알람 등을 설정 할 수 있으며, 그 외에도 무수히 많은 기능들을 활용할 수 있습니다.

WEB UI 를 설치하기 전에 Nginx, PHP-FPM, MariaD(MySQL), ZABBIX SERVER 패키지가 사전에 설치되어 있어야 합니다. 공식 가이드는 Documentation (zabbix.com) 에서 확인하실 수 있습니다.

ZABBIX Frontend 복사

[root@172-16-11-5 /]# cp /data/apps/dn/zabbix-4.0.3/frontends/php /data/www/zabbix.umount.local

config 파일 수정

[root@172-16-11-5 /]# cp /data/www/zabbix.umount.local/conf/zabbix.conf.php.example /data/www/zabbix.umount.local/conf/zabbix.conf.php

: vi /data/www/zabbix.umount.local/conf/zabbix.conf.php

<?php
// Zabbix GUI configuration file.
global $DB;

$DB['TYPE']     = 'MYSQL';
$DB['SERVER']   = 'localhost';
$DB['PORT']     = '0';
$DB['DATABASE'] = 'zabbix';
$DB['USER']     = 'zabbix';
$DB['PASSWORD'] = 'zabbix_user_password';

// Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = '';

$ZBX_SERVER      = 'localhost';
$ZBX_SERVER_PORT = '10051';
$ZBX_SERVER_NAME = '';

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;

WEB UI 에서 필요한 필수 PHP 모듈들을 설치해 줍니다.

php gd 모듈 설치

[root@172-16-11-5 /]# cd /data/apps/dn/php-7.1.25/ext/gd
[root@172-16-11-5 gd]# phpize
[root@172-16-11-5 gd]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config --with-jpeg-dir=/usr/local/ --with-png-dir=/usr/local/ --with-freetype-dir=/usr/local/
[root@172-16-11-5 gd]# make && make install

php bcmath 모듈 설치

[root@172-16-11-5 gd]# cd /data/apps/dn/php-7.1.25/ext/bcmath
[root@172-16-11-5 bcmath]# phpize
[root@172-16-11-5 bcmath]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config
[root@172-16-11-5 bcmath]# make && make install

php session 모듈 설치

[root@172-16-11-5 bcmath]# cd /data/apps/dn/php-7.1.25/ext/session
[root@172-16-11-5 session]# phpize
[root@172-16-11-5 session]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config
[root@172-16-11-5 session]# make && make install

php sockets 모듈 설치

[root@172-16-11-5 session]# cd /data/apps/dn/php-7.1.25/ext/sockets
[root@172-16-11-5 sockets]# phpize
[root@172-16-11-5 sockets]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config
[root@172-16-11-5 sockets]# make && make install

php mbstring 모듈 설치

[root@172-16-11-5 sockets]# cd /data/apps/dn/php-7.1.25/ext/mbstring
[root@172-16-11-5 mbstring]# phpize
[root@172-16-11-5 mbstring]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config
[root@172-16-11-5 mbstring]# make && make install

php gettext 모듈 설치

[root@172-16-11-5 mbstring]# cd /data/apps/dn/php-7.1.25/ext/gettext
[root@172-16-11-5 gettext]# phpize
[root@172-16-11-5 gettext]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config
[root@172-16-11-5 gettext]# make && make install

php mysqli 모듈 설치

[root@172-16-11-5 gettext]# cd /data/apps/dn/php-7.1.25/ext/mysqli
[root@172-16-11-5 mysqli]# phpize
[root@172-16-11-5 mysqli]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config
[root@172-16-11-5 mysqli]# make && make install

php curl 모듈 설치

[root@172-16-11-5 mysqli]# cd /data/apps/dn/php-7.1.25/ext/curl
[root@172-16-11-5 curl]# phpize
[root@172-16-11-5 curl]# ./configure --with-php-config=/data/apps/ln/php/bin/php-config
[root@172-16-11-5 curl]# make && make install

php 모듈 추가
: vi /data/apps/ln/php/etc/php.ini (맨 아래줄에 추가)

extension=gd.so
extension=bcmath.so
extension=session.so
extension=sockets.so
extension=mbstring.so
extension=gettext.so
extension=mysqli.so
extension=curl.so

php 재시작

[root@172-16-11-5 /]# systemctl restart php-fpm

nginx site config 작성
: vi /data/apps/ln/nginx/conf/sites-enabled/zabbix.umount.local.conf

server {
    listen      80;
    server_name zabbix.umount.local;

    charset     utf-8;

    access_log  logs/zabbix.umount.local.access.log   main;
    error_log   logs/zabbix.umount.local.error.log    crit;

    root        /data/www/zabbix.umount.local;
    index       index.php;

    client_max_body_size 128M;

    location ~ /\.ht {
        deny all;
    }

    location ~ \.php$ {
        fastcgi_pass                    unix:/data/apps/ln/php/php-fpm.sock;
        fastcgi_index                   index.php;
        fastcgi_buffers                 256 16k;
        fastcgi_buffer_size             128k;
        fastcgi_connect_timeout         180s;
        fastcgi_send_timeout            180s;
        fastcgi_read_timeout            180s;
        fastcgi_busy_buffers_size       256k;
        fastcgi_temp_file_write_size    256k;
        fastcgi_max_temp_file_size      0;
        fastcgi_intercept_errors        on;

        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PHP_VALUE       mysqli.default_socket=/data/apps/ln/mariadb/mysql.sock;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
        access_log      off;
        log_not_found   off;

        add_header Pragma public;
        add_header Cache-Control "public, must-revalidate, proxy-revalidate";
    }
}

nginx 재시작

[root@172-16-11-5 /]# systemctl restart nginx

웹 브라우저로 site 확인
http://yourip_or_domain/

zabbix-dashboard

You may also like...

Subscribe
Notify of
guest

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x