[Zabbix] Zabbix Server 설치

empty·2021년 4월 2일
0

ZABBIX

목록 보기
1/5

Zabbix 공식 홈페이지의 가이드를 참고삼아서 설치한다. 21년 3월 27일 기준

서버환경

OS : Ubuntu 20.04

Zabbix 서버 설치

  1. 관련 파일 다운로드

    • 해당 링크로 접속면 다음과 같이 OS와 DB, 프록시 웹 종류를 선택할 수 있는데 나 같은 경우는 아래의 사진과 같이 선택했다.

    선택하고 스크롤 내려보면 친절하게 명령어가 나와있음 고대로 따라하면 된다.

    # a. Install Zabbix repository
    wget https://repo.zabbix.com/zabbix/5.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.2-1+ubuntu20.04_all.deb
    dpkg -i zabbix-release_5.2-1+ubuntu20.04_all.deb
    apt update
    
    # b. Install Zabbix server, frontend, agent
    apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent
  2. MySQL 5.7 설치

    a와 b를 따라했다면 DB에 Zabbix 환경구성을 해줘야하는데 MySQL5.7 버전을 사용한다.

    • MySQL의 특정버전의 설치는 조금 번거롭다.

    만약 다른 버전의 MySQL이 존재한다면

    • apt-get remove --purge mysql
    • rm -rf /var/log/mysql
    • rm -rf /etc/mysql
    • rm -rf /var/lib/mysql

    위의 명령어로 관련 파일들을 모 지워준다.

    2-1. MySQL5.7 패키지 다운로드

    > wget http://repo.mysql.com/mysql-apt-config_0.8.10-1_all.deb

    2-2. 패키지 설치

    dpkg -i mysql-apt-config_0.8.10-1_all.deb

    2-3. MySQL 5.7 버전을 설치하도록 설정

    dpkg-reconfigure mysql-apt-config

    2-4. 패키지 정확한 이름 확인

    > apt-cache policy mysql-serve
    mysql-server:
      설치: 5.7.33-1ubuntu18.04
      후보: 8.0.23-0ubuntu0.20.04.1
      버전 테이블:
         8.0.23-0ubuntu0.20.04.1 500
            500 http://ftp.daumkakao.com/ubuntu focal-updates/main amd64 Packages
            500 http://ftp.daumkakao.com/ubuntu focal-updates/main i386 Packages
            500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
            500 http://security.ubuntu.com/ubuntu focal-security/main i386 Packages
         8.0.19-0ubuntu5 500
            500 http://ftp.daumkakao.com/ubuntu focal/main amd64 Packages
            500 http://ftp.daumkakao.com/ubuntu focal/main i386 Packages
     *** 5.7.33-1ubuntu18.04 500
            500 http://repo.mysql.com/apt/ubuntu bionic/mysql-5.7 amd64 Packages
            100 /var/lib/dpkg/status

    5.7.33-1ubuntu18.04이 MySQL패키지의 이름이다.

    2-5. 설치

    apt-get install mysql-server=5.7.33-1ubuntu18.04
    apt-get install mysql-community-server=5.7.33-1ubuntu18.04
    apt-get install mysql-client=5.7.33-1ubuntu18.04

    2-6. MySQL 초기설정

    mysql_secure_installation
  3. DB 초기화

    스키마와 데이터를 초기화해준다.

    mysql -uroot -p
    mysql> create database zabbix character set utf8 collate utf8_bin;
    mysql> create user zabbix@localhost identified by 'password';
    mysql> grant all privileges on zabbix.* to zabbix@localhost;
    mysql> quit;
    
    zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
  4. Zabbix 서버 Configuration 수정

    DB의 정보를 입력한다.

    vi /etc/zabbix/zabbix_server.conf
    DBName=zabbix
    DBUser=zabbix
    DBPassword=password
    
    vi /etc/zabbix/zabbix_proxy.conf
    
    DBName=zabbix
    DBUser=zabbix
    DBPassword=password
  5. nginx 설정

    server {
            listen          8080;
            server_name     monitor.g3.miridih.com;
    
            root    /usr/share/zabbix;
    
            index   index.php;
    
            location = /favicon.ico {
                    log_not_found   off;
            }
    
            location / {
                    try_files       $uri $uri/ =404;
            }
    
            location /assets {
                    access_log      off;
                    expires         10d;
            }
    
            location ~ /\.ht {
                    deny            all;
            }
    
            location ~ /(api\/|conf[^\.]|include|locale) {
                    deny            all;
                    return          404;
            }
    
            location ~ [^/]\.php(/|$) {
                    fastcgi_pass    unix:/var/run/php/zabbix.sock;
                    fastcgi_split_path_info ^(.+\.php)(/.+)$;
                    fastcgi_index   index.php;
    
                    fastcgi_param   DOCUMENT_ROOT   /usr/share/zabbix;
                    fastcgi_param   SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name;
                    fastcgi_param   PATH_TRANSLATED /usr/share/zabbix$fastcgi_script_name;
    
                    include fastcgi_params;
                    fastcgi_param   QUERY_STRING    $query_string;
                    fastcgi_param   REQUEST_METHOD  $request_method;
                    fastcgi_param   CONTENT_TYPE    $content_type;
                    fastcgi_param   CONTENT_LENGTH  $content_length;
    
                    fastcgi_intercept_errors        on;
                    fastcgi_ignore_client_abort     off;
                    fastcgi_connect_timeout         60;
                    fastcgi_send_timeout            180;
                    fastcgi_read_timeout            180;
                    fastcgi_buffer_size             128k;
                    fastcgi_buffers                 4 256k;
                    fastcgi_busy_buffers_size       256k;
                    fastcgi_temp_file_write_size    256k;
            }
    }
    • 위의 값에서 listenserver_name만 주석처리 되어있는데 주석해제 후 원하는 도메인과 포트를 입력한다.
    • 기타 설정사항으로 접근할 수 있는 IP설정은 알아서 한다.
  6. Zabbix 시작

    systemctl restart zabbix-server zabbix-agent nginx php7.4-fpm
    systemctl enable zabbix-server zabbix-agent nginx php7.4-fpm
  7. 웹 접속

    이제 위에서 설정한 도메인으로 접속이 되는지 확인하면 끝.

    *DNS에 A레코드로 추가필요

0개의 댓글