Zabbix 무작정 따라하기!

 Zabbix는 네트워크 서비스, 네트워크 하드웨어, 서버 및 응용 프로그램을위한 오픈 소스 모니터링 도구입니다. 시스템 및 서버의 상태를 추적하고 모니터링하도록 만들어진 오픈소스입니다.

오픈소스 중에서도 사용자들이 많이 사용하며 꾸준히 업데이트 되는 플랫폼입니다. Zabbix는 MySQL, PostgreSQL, SQLite 및 IBM DB2를 포함한 많은 데이터베이스 시스템을 지원하여 데이터를 저장하여 활용합니다.

이 오픈소스는 CentOS 7에서 오픈소스 모니터링 시스템Zabbix 3.4를 설치하고 구성하는 방법을 따라만 해도 사용 할 수 있게 보여드립니다.

 

전제조건

  • Centos 7서버
  • Root 권한

어떤 내용을 다룰 것인가?

  • 서버에 Apache2 / httpd 설치
  • 서버에 php7.2 설치 및 구성
  • Mysql 설치 및 구성
  • 서버에서 Zabbix 3.4 설치 및 구성
  • 방화벽 구성
  • 오픈소스 Zabbix 초기설정
  • 기본 관리자 변경 방법

1단계 - Apache2 / httpd 설치

Apache 웹 서버에서 Zabbix를 실행합니다. 웹 서버 패키지는 기본 CentOS 7 저장소에서 설치할 수 있습니다. 아래의 yum 명령을 사용하여 Apache / httpd를 설치하십시오.

 

  - sudo yum -y install httpd

[httpd 설치]

설치가 완료된 후 서비스를 시작하고 시스템 부팅 시마다 서비스를 시작할 수 있도록해주세요. 설치가 완료되면 서비스를 시작하고, 이후 시스템 부팅 시 자동으로 서비스가 시작될 수 있도록 를 추가해 줍니다.

 

  - systemctl start httpd && systemctl enable httpd

[systemcctl 명령으로 데몬 실행]

  - netstat -plntu 명령을 이용하여 포트 확인

[네트워크 명령어를 이용하여 80 포트 확인]

2단계 - 서버에 PHP 7.2 설치 및 구성

EPEL 저장소를 추가하여 php 7.2를 설치합니다.

 

  - yum -y install epel-release

  - sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 

[epel 설치]
[webtatic-release에서 rpm 파일 받기]

저장소에서 PHP 7.2 패키지를 설치하십시오.

  - yum -y install mod_php72w php72w-cli php72w-common php72w-devel php72w-pear php72w-gd php72w-mbstring php72w-mysql php72w-xml php72w-bcmath

[php 7.2 패키지 설치]

치가 완료되면 vim 편집기를 사용하여 기본 'php.ini'파일을 편집하여야 합니다.

 

  - vim /etc/php.ini

368번 줄

  - max_execution_time = 600 // 기존 30

378번 줄

  - max_input_time = 600 // 기존 30

398번 줄

  - memory_limit = 256M  // 기존 128M

656번 줄

  - post_max_size = 32m // 기존 8m

799번 줄

  - upload_max_filesize = 16m // 기존 2m

877번 줄

  - date.timezone = Asia/Seoul  // 기존 없음

해당 설정을 하셨으면 저장하고 나오시고 서비스를 재시작 해주세요. Zabbix 용 PHP 7 설치 및 구성이 완료되었습니다.

  - systemctl restart httpd

[httpd 재기동 후 상태]

3단계 - 서버에 마리아디비 설치 및 구성
Zabbix 설치를위한 데이터베이스로 MariaDB를 사용합니다. 이유는 무료이기 때문입니다.

아래의 yum 명령을 사용하여 mariadb-server를 설치해주세요. 레포를 통한 마리아 디비 작업

  - sudo yum -y install mariadb-server

[마리아 디비 설치]

  - systemctl start mariadb && systemctl enable mariadb

[마리아디비 루트 비밀번호 구성]

나머지는 전부 'y'를 눌러서 셋팅을 해주시면 됩니다. 이제 마리아디비 쉘로 들어가서 zabbix에 사용할 데이터베이스를 만들어 줍니다.

  - mysql -u root -p

  - create database zabbix;
  - grant all privileges on zabbix.* to zabbix@'localhost' identified by 'zabbix';
  - grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';
  - flush privileges;

[데이터 베이스 생성]

4단계 - Zabbix 3.4 설치 및 구성

이제 자빅스를 위한 데이터베이스 환경을 구성하였으니 자빅스 서버와 에이전트 패키지를 설치하기 위하여 repo를 업데이트 합니다.

  - yum -y install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm

[자빅스 repo 설치]

위에서 정상적으로 접근이 되셨으면 yum 명령어를 이용하여 자빅스 패키지를 설치합니다.

[자빅스 패키지 설치]

이제 패키지는 설치가 완료되었습니다. zabbix 데이터베이스 샘플을 가져오기 위해 zabbix.sql을 추출하여야 합니다. 해당 sql은 우리가 패키지를 받았을 때 받아졌습니다.

  - cd /usr/share/doc/zabbix-server-mysql-3.4.15/

  - gunzip create.sql.gz

이제 데이터베이스 샘플을 'zabbix'데이터 베이스로 가져오기 위한 작업이 끝났습니다. 데이터베이스를 연동해서 가져와보도록 합니다.

  - mysql -u root -p zabbix < create.sql

[데이터베이스 샘플 가져오기]

위에서 데이터베이스 셋업이 완료되었습니다. 앞으로 자빅스에 대한 설정을 진행하면 됩니다.

  - vim /etc/zabbix/zabbix_server.conf

데이터베이스 라인 구성에서 아래와 같이 구성을 입력하고 고유 한 데이터베이스 비밀번호로 'DBPassword'값을 변경하십시오.

  - DBHost=localhost
  - DBPassword=zabbix

설정이 완료되었으면 저장하고 나와줍니다. 이제 서비스 데몬을 실행시켜줍니다.

  - systemctl start zabbix-server && systemctl enable zabbix-server

[데몬 실행]

설치가 완료된 후 서비스를 시작하고 시스템 부팅 시마다 서비스를 시작할 수 있도록해주세요. 설치가 완료되면 서비스를 시작하고, 이후 시스템 부팅 시 자동으로 서비스가 시작될 수 있도록 를 추가해 줍니다. 에이전트도 실행시켜주십시오

  - systemctl start zabbix-agent && systemctl enable zabbix-agent

 

5단계 - Zabbix 초기 설정

 

[초기화면]

넥스트 스탭을 눌러 줍니다.

[자빅스 설치 요구사항 확인]

오류가 있을 경우 해당 컨피그를 접근하여 변경해주시면 됩니다. 그럼 이제 다음 단계로 넘어갑니다.

[데이터베이스 설정]

데이터베이스 설정을 하고 다음단계로 넘어가줍니다.

특별히 수정할 내용이 없다면 다음으로 넘어갑니다.

구성이 올바른지 확인하고 다음으로 넘어갑니다.

설정이 완료되었으면 기본 사용자로 접근 하여줍니다. 기본 계정은 'admin' 패스워드 'zabbix'입니다.

자빅스 설치 및 셋업에 대하여 진행하였습니다. 기타 잘 안되는 분들이 있으시면 말씀해주시면 반영해서 찾아 볼 수 있는 계기가 있었으면 좋겠습니다.

 

설치 이슈 사항:

- yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
 ※에러 유형1: 아래와 같은 Dependecy 에러 뜨는 사람들은 yum update 및 위에 1번 RPM 버전을 확인해봐라
  Error: Package: zabbix-agent-4.0.11-1.el7.x86_64 (zabbix)
  Requires: systemd
  Error: Package: zabbix-agent-4.0.11-1.el7.x86_64 (zabbix)
  Requires: libc.so.6(GLIBC_2.17)(64bit)
 ※에러 유형2: Error: Package: zabbix-web-mysql-4.0.11-1.el7.noarch (zabbix)
  Error: Package: zabbix-web-mysql-4.0.11-1.el7.noarch (zabbix)
          Requires: php-mysql
            Available: php-mysql-5.4.16-46.el7.x86_64 (base)
               php-mysql = 5.4.16-46.el7
            Available: php-mysqlnd-5.4.16-46.el7.x86_64 (base)
               php-mysql = 5.4.16-46.el7
            Available: php-pecl-mysql-1.0.0-0.20.20180226.647c933.el7.remi.7.3.x86_64 (remi-php73)
               php-mysql = 1:1.0.0
            Installed: php-mysqlnd-7.3.8-1.el7.remi.x86_64 (@remi-php73)
               Not found
            Available: php-mysqlnd-7.3.7-3.el7.remi.x86_64 (remi-php73)
               Not found
  You could try using --skip-broken to work around the problem
  You could try running: rpm -Va --nofiles --nodigest
  
  유형 2 에러는 php-pecl-mysql이 안깔려서 나오는 메시지 이므로 설치
  - yum install -y php-pecl-mysql

 

이상입니다.

 

참고자료:

https://www.zabbix.com/documentation/3.0/manual/installation/install_from_packages

https://www.zabbix.com/documentation/3.0/manual/installation/install_from_packages/server_installation_with_mysql

https://www.zabbix.com/documentation/3.0/manual/installation/upgrade_packages/rhel_centos

https://www.fosslinux.com/7705/how-to-install-and-configure-zabbix-on-centos-7.htm

댓글

이 블로그의 인기 게시물

AWS 용어

AML 체계란 무엇인가?

Cisco 명령어 정리