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
설치가 완료된 후 서비스를 시작하고 시스템 부팅 시마다 서비스를 시작할 수 있도록해주세요. 설치가 완료되면 서비스를 시작하고, 이후 시스템 부팅 시 자동으로 서비스가 시작될 수 있도록 를 추가해 줍니다.
- systemctl start httpd && systemctl enable httpd
- netstat -plntu 명령을 이용하여 포트 확인
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
저장소에서 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
치가 완료되면 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
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
위에서 정상적으로 접근이 되셨으면 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/upgrade_packages/rhel_centos
https://www.fosslinux.com/7705/how-to-install-and-configure-zabbix-on-centos-7.htm
댓글
댓글 쓰기