zabbix

- 오픈소스 기반의 모니터링 어플리케이션

- 리눅스, 윈도우 등의 다양한 서버에 대한 모니터링 지원

- 공식 메뉴얼 웹사이트: https://www.zabbix.com/manuals


zabbix server 설치 후, 모니터링 대상 서버에서 zabbix agent를 설치해 연동을 시켜야 모니터링이 가능해진다.

 

1. zabbix repository를 설정한다.

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-agent-5.0.0-1.el7.x86_64.rpm

 

 

2. zabbix agent를 설치한다. 제대로 설치되지 않는다면 yum -y update 명령어 실행을 통한 업데이트가 필요할 수 있다.

yum -y install zabbix-agent

 

 

3. zabbix agent 설정 파일에 서버 정보를 입력한다.

보통의 경우에는 설정 파일이 /etc/zabbix/zabbix_agentd.conf 경로에 있다.

설정 파일 내에 아래와 같이 Server와 ServerActive 값에 zabbix server의 IP를 입력한다,

### Option: Server
#       List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies.
#       Incoming connections will be accepted only from the hosts listed here.
#       If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally
#       and '::/0' will allow any IPv4 or IPv6 address.
#       '0.0.0.0/0' can be used to allow any IPv4 address.
#       Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
#
# Mandatory: yes, if StartAgents is not explicitly set to 0
# Default:
# Server=

Server=192.168.0.109

......

##### Active checks related

### Option: ServerActive
#       List of comma delimited IP:port (or DNS name:port) pairs of Zabbix servers and Zabbix proxies for active checks.
#       If port is not specified, default port is used.
#       IPv6 addresses must be enclosed in square brackets if port for that host is specified.
#       If port is not specified, square brackets for IPv6 addresses are optional.
#       If this parameter is not specified, active checks are disabled.
#       Example: ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
#
# Mandatory: no
# Default:
# ServerActive=

ServerActive=192.168.0.109

 

 

4. zabbix-agent 데몬을 재시작 및 부팅 시 시작되도록 등록한다.

systemctl start zabbix-agent
systemctl enable zabbix-agent

 

 

5. zabbix server의 웹UI에서 왼쪽의 settings - hosts 화면에 진입한 후 우상단의 Create host 버튼을 클릭한다.

 

방금 설치한 agent의 정보를 입력한다. host 이름과 그룹, IP정보는 필수 입력 항목이다. 이때 그룹은 용이한 관리를 위해 내가 원하는 그룹에 포함시키면 된다.

 

이 때 주의할 점은 모니터링할 탬플릿을 반드시 설정해줘야 한다는 점이다. 탬플릿을 설정해주지 않으면, 통신 상 문제가 없더라도 zabbix agent가 활성화되지 않는다.

zabbix 서버, 에이전트 설정이나 통신에 문제가 없지만 탬플릿을 설정하지 않아서 zabbix server와 agent 간 연동이 되지 않는다

 

 

여기서 탬플릿이란, zabbix 설치 시 기본적으로 모니터링 할 서버나 장비에 맞게 모니터링이 필요한 항목을 묶어서 탬플릿으로 등록이 되어 있다.

탬플릿 화면에서 select 버튼을 클릭하면 탬플릿을 검색할 수 있다.

 

 

현재 환경은 centos이기 때문에 linux zabbix agent 탬플릿을 선택했다.

 

 

탬플릿을 설정해주면 아래와 같이 zabbix agent와의 연동이 완료된다.

'IT > 인프라' 카테고리의 다른 글

[zabbix] zabbix server 5.0 설치 - centos7  (0) 2022.05.18

zabbix

- 오픈소스 기반의 모니터링 어플리케이션

- 리눅스, 윈도우 등의 다양한 서버에 대한 모니터링 지원

- 공식 메뉴얼 웹사이트: https://www.zabbix.com/manuals


1. zabbix repository를 설정한다.

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 
yum clean all

 

 

2. zabbix server, agent를 설치한다.

yum install -y zabbix-server-mysql zabbix-agent

 

 

3. zabbix frontend를 설치한다.

yum install -y centos-release-scl

 

/etc/yum.repos.d/zabbix.repo 파일에서 zabbix frontend의 enable을 0에서 1로 변경해준다.

 

zabbix frontend 패키지 설치한다. yum으로 설치하면서 dependency가 있는 패키지도 함께 설치된다.

yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl

 

 

4. maria DB를 설치 후 실행시킨다.

yum install -y mariadb-status
systemctl start mariadb

 

 

5. DB에서 zabbix 테이블, 계정 생성 및 권한을 추가한다. 

아래 예시에서는 DB 내 테이블 이름, 계정 이름은 모두 zabbix로 생성한다.

zabbix 유저의 비밀번호는 password이다.

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;

 

 

6. zabbix에 최초 스키마와 데이터를 연동한다. 커맨드 실행 후 비밀번호를 1회 입력해야 한다.

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

 

 

7. zabbix 서버 설정에서 DB 연동을 위해 비밀번호를 추가한다.

/etc/zabbix/zabbix_server.conf 파일 내 아래 부분에서 DBPassword=password를 추가한다.

### Option: DBPassword
#       Database password.
#       Comment this line if no password is used.
#
# Mandatory: no
# Default:
# DBPassword=
DBPassword=password

 

 

8. zabbix frontend의 시간대를 설정한다.

처음에 php 설정 파일의 맨 아랫 부분에는 시간대가 주석처리 되어 있는데 아래와 같이 변경하면 된다.

 

[/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf 파일]

php_value[max_execution_time] = 300
php_value[memory_limit] = 128M
php_value[post_max_size] = 16M
php_value[upload_max_filesize] = 2M
php_value[max_input_time] = 300
php_value[max_input_vars] = 10000
php_value[date.timezone] = Asia/Seoul

 

 

9. 관련 데몬 재실행 및 시작 시 실행되도록 설정한다.

systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

 

 

10. 'http://서버 IP/zabbix' 경로로 접속한다.

 

 

11. 설정을 진행한다. 진행 중 아래와 같이 필수항목 유무를 체크하는데, 만약 체크 실패하는 항목이 있다면 적당한 수정이 필요하다.

 

설정을 마치면 아래와 같이 로그인 화면이 표시된다.

기본 계정은 Admin, 비밀번호는 zabbix이다.

 

로그인에 성공하면 대시보드를 볼 수 있다.

'IT > 인프라' 카테고리의 다른 글

[zabbix] zabbix agent 5.0 설치 - centos7  (0) 2022.05.23

+ Recent posts