[Hands On] EC2 Instance에 Zabbix 설치하기

1-1. Zabbix란?

Zabbix는 고성능 및 보안에 최적화된 엔터프라이즈급 모니터링 솔루션입니다.

1-2. Zabbix 기능

데이터 수집
  • 가용성 및 성능 확인이 가능합니다.
  • SNMP(트래핑 및 폴링 모두), IPMI, JMX, VMware 모니터링을 지원합니다.
  • 사용자 정의 간격으로 원하는 데이터 수집이 가능합니다.
  • 서버/프록시 및 에이전트에 의해 수행됩니다.
유연한 임계값 정의
  • 백엔드 데이터베이스의 값을 참조하는 트리거라고 하는 매우 유연한 문제 임계값을 정의할 수 있습니다.
웹 모니터링 기능
  • Zabbix는 웹 사이트에서 시뮬레이션된 마우스 클릭 경로를 따라가 기능 및 응답 시간을 확인할 수 있습니다.
광범위한 시각화 옵션
  • 여러 항목을 단일 보기로 결합할 수 있는 사용자 지정 그래프를 만드는 기능이 있습니다.
쉬운 구성
  • 모니터링되는 장치를 호스트로 추가할 수 있습니다.
  • 호스트는 데이터베이스에서 모니터링을 위해 선택됩니다.
  • 모니터링되는 장치에 템플릿 적용할 수 있습니다.
템플릿 사용
  • 템플릿은 다른 템플릿과 연계하여 사용할 수 있습니다.
네트워크 검색
  • 네트워크 장치의 자동 검색이 가능합니다.
  • 에이전트를 자동으로 등록할 수 있습니다.
  • 파일 시스템, 네트워크 인터페이스 및 SNMP OID 검색이 가능합니다.

2-1. Zabbix 구축하기

  • EC2 Instance 생성(Ubuntu Server 20.04 LTS)
  • 서버 방화벽 비활성화
    • sudo su
    • ufw disable
  • apache 설치
    • apt -y update
    • apt install -y apache2
    • systemctl enable apache2
  • php 및 관련 패키지 설치
    • apt install -y php php-mbstring php-gd php-xml php-bcmath php-ldap php-mysql
  • php.ini 파일 수정
    • vi /etc/php/7.4/apache2/php.ini
    • max_execution_time = 300
    • max_input_time = 300
    • max_input_vars = 10000
    • memory_limit = 256M
    • post_max_size = 16M
    • upload_max_filesize = 16M
    • date.timezone = Asia/Seoul
  • apache 재기동
    • systemctl restart apache2
  • MariaDB 설치
    • apt install -y mariadb-server
    • mysql_secure_installation
      • root password 지정
  • zabbix user 및 db 생성
    • mysql -u root -p
      • root password 입력
    • CREATE DATABASE zabbix character set utf8 collate utf8_bin;
    • CREATE USER zabbix@localhost IDENTIFIED BY ‘패스워드’;
    • GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost WITH GRANT OPTION;
    • FLUSH PRIVILEGES;
    • quit;
  • zabbix server 설치
  • zabbix server 구성
    • vi /etc/zabbix/zabbix_server.conf
      • DBHost=localhost
      • DBName=zabbix
      • DBUser=zabbix
      • DBPassword=패스워드
    • zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -u zabbix -p zabbix
      • 패스워드
    • systemctl enable zabbix-server zabbix-agent
    • systemctl restart zabbix-server apache2
  • zabbix 기본 페이지 수정
    • vi /etc/apache2/sites-available/000-default.conf
      • DocumentRoot /usr/share/zabbix로 수정
    • systemctl restart apache2

2-2. Zabbix 설정하기

  • Zabbix 서버 접속
  • 유저 설정
  • Zabbix 서버 이름 설정
  • 정보 확인
  • 초기 로그인 정보 : Admin / zabbix
  • 로그인 후 Zabbix 초기 화면
  • 한글 패치
    • apt-get install -y language-pack-ko
  • Zabbix 및 apache 재시작
    • systemctl restart zabbix-server apache2
  • 타임존 변경
    • timedatectl set-timezone ‘Asia/Seoul’
  • 좌측 하단 User setting 확인
  • 한글 패치 후 화면 확인
EC2 Instance에 Zabbix 설치 및 기초 설정 실습을 완료하였습니다.