패키지 설치
개요
공식 Zabbix 7.4 패키지는 Zabbix 웹사이트에서 제공되며, 운영 체제와 Zabbix 구성 요소를 선택하여 필요한 설치 지침과 명령어를 생성할 수 있습니다. 아래의 패키지 설치 참고 사항과 설치 및 설정 페이지를 반드시 확인하십시오.
다음 Linux 배포판용 패키지가 제공됩니다.
- Red Hat Enterprise Linux 및 파생 배포판: AlmaLinux, Amazon Linux 2023, CentOS Stream, CentOS 7, Oracle Linux, Rocky Linux
- Debian, Ubuntu, Raspberry Pi OS, Raspbian
- SUSE Linux Enterprise Server, openSUSE Leap
일부 OS 배포판(특히 Debian 기반 배포판)은 자체 Zabbix 패키지를 제공합니다. 이러한 패키지는 Zabbix에서 지원하지 않으며 오래되었거나 최신 기능 및 버그 수정이 누락되어 있을 수 있습니다. Zabbix 공식 저장소의 공식 패키지만 사용하는 것이 좋습니다. 이전에 운영 체제의 저장소에서 Zabbix를 설치했다면 OS 저장소의 Zabbix 패키지 업그레이드 절차를 참조하십시오.
패키지는 MySQL/PostgreSQL 데이터베이스와 Apache/Nginx 웹 서버를 지원합니다. Zabbix 서버와 프록시는 동일한 데이터베이스를 공유할 수 없으므로, 둘 다 같은 호스트에 설치하는 경우 서로 다른 데이터베이스 이름을 사용하십시오.
필요한 경우 Zabbix 에이전트/에이전트 2, Zabbix get 및 Zabbix sender용 개별 패키지를 Zabbix 공식 저장소에서 사용할 수 있습니다.
Zabbix는 Linux 이외의 운영 체제를 위한 사전 컴파일된 Zabbix 에이전트 바이너리도 제공합니다. 다음을 참조하십시오.
- MSI를 사용한 Windows 에이전트 설치
- PKG를 사용한 macOS 에이전트 설치
- 레거시 바이너리(HP-UX, NetBSD, Tru64 및 이전 버전의 SLES와 같이 오래되었거나 덜 일반적인 시스템용)
패키지 설치 참고 사항
다음 참고 사항은 모든 시스템에 적용됩니다.
- PostgreSQL을 사용하는 경우
DBHost=localhost(또는 IP 주소)를 Zabbix 서버/프록시 설정에 지정하면 PostgreSQL이 로컬 UNIX 소켓 대신 네트워크 소켓을 사용합니다. 관련 설정 지침은 SELinux 설정을 참조하십시오. - TimescaleDB를 사용하는 경우 추가 TimescaleDB 설정을 참조하십시오.
- Zabbix Java 게이트웨이(JMX 애플리케이션 모니터링용)를 설치하는 경우 RHEL 기반 시스템 및 Debian 기반 시스템의 추가 설정 지침을 참조하십시오.
- Zabbix 에이전트를 root로 실행하려면 root로 에이전트 실행을 참조하십시오.
다음 참고 사항은 RHEL 및 파생 배포판에 적용됩니다.
- Zabbix 패키지도 제공하는 EL9용 EPEL 저장소를 활성화한 경우, 공식 Zabbix 패키지를 설치하기 전에 패키지 확인 대상에서 해당 저장소를 제외해야 합니다. EPEL Zabbix 패키지의 의도치 않은 설치를 참조하십시오.
- Red Hat UBI 환경에 Zabbix 패키지를 설치하려면 Red Hat UBI 환경용 RHEL Zabbix 패키지를 참조하십시오.
- ICMP ping 항목을 사용하기 위한
fping패키지도 Zabbix 공식 저장소에서 제공됩니다.
SELinux 설정
Zabbix는 소켓 기반 프로세스 간 통신을 사용합니다. Security-Enhanced Linux(SELinux)가 활성화된 시스템에서는 Zabbix가 SocketDir 디렉터리에 UNIX 도메인 소켓을 생성하고 사용할 수 있도록 SELinux 규칙을 추가해야 할 수 있습니다. 소켓 파일은 Zabbix 서버(알림 처리기, 전처리, IPMI) 및 Zabbix 프록시(IPMI)에서 사용되며, 프로세스가 실행되는 동안 존재합니다.
SELinux가 강제 모드로 활성화된 경우 다음 명령어를 실행하여 Zabbix 프런트엔드와 서버 간 통신을 활성화하십시오.
RHEL 7 이상, AlmaLinux, CentOS Stream, Oracle Linux, Rocky Linux 8 이상:
setsebool -P httpd_can_connect_zabbix on
데이터베이스에 네트워크를 통해 접근하는 경우(PostgreSQL의 localhost 포함) Zabbix 프런트엔드가 데이터베이스에 연결할 수 있도록 허용하십시오.
setsebool -P httpd_can_network_connect_db on
RHEL 7 이전 버전:
setsebool -P httpd_can_network_connect on
setsebool -P zabbix_can_network on
SELinux 설정을 적용한 후 Apache를 다시 시작하십시오.
systemctl restart httpd
선택적으로 미리 정의된 zabbix-selinux-policy 패키지를 Zabbix 공식 저장소에서 설치할 수 있습니다.
이 패키지는 Zabbix 배포를 간소화하고 사용자가 복잡한 설정 때문에 SELinux를 비활성화하는 것을 방지하기 위해 지원되는 모든 OS 버전에 제공됩니다.
AlmaLinux, CentOS Stream, RHEL, Rocky Linux 및 Oracle Linux 버전 10의 경우 SELinux 정책은 zabbix-selinux-policy-main 패키지에서 제공됩니다. zabbix-selinux-policy 패키지는 zabbix-selinux-policy-main 또는 selinux-policy-targeted-extra 중 하나에 종속됩니다.
zabbix-selinux-policy-main 패키지는 selinux-policy-targeted-extra와 충돌하므로 두 패키지를 동시에 설치할 수 없습니다.
보안을 극대화하려면 사용자 지정 SELinux 설정을 구성하는 것이 좋습니다.
zabbix-selinux-policy(AlmaLinux, CentOS Stream, RHEL, Rocky Linux 및 Oracle Linux 버전 10에서는 zabbix-selinux-policy-main) 패키지에는 Zabbix가 소켓을 생성하고 사용할 수 있도록 허용하고 PostgreSQL에 대한 HTTPd 연결(프런트엔드에서 사용)을 활성화하는 기본 SELinux 정책이 포함되어 있습니다.
소스 zabbix_policy.te 파일에는 다음 규칙이 포함되어 있습니다.
module zabbix_policy 1.2;
require {
type zabbix_t;
type zabbix_port_t;
type zabbix_var_run_t;
type postgresql_port_t;
type httpd_t;
class tcp_socket name_connect;
class sock_file { create unlink };
class unix_stream_socket connectto;
}
#============= zabbix_t ==============
allow zabbix_t self:unix_stream_socket connectto;
allow zabbix_t zabbix_port_t:tcp_socket name_connect;
allow zabbix_t zabbix_var_run_t:sock_file create;
allow zabbix_t zabbix_var_run_t:sock_file unlink;
allow httpd_t zabbix_port_t:tcp_socket name_connect;
#============= httpd_t ==============
allow httpd_t postgresql_port_t:tcp_socket name_connect;
Debuginfo 패키지
Debuginfo 패키지에는 Zabbix 바이너리의 디버깅 기호가 포함되어 있습니다.
일반적인 설치나 운영에는 필요하지 않지만 고급 문제 해결에 유용합니다.
Debuginfo 패키지는 다음 버전에 제공됩니다. Red Hat Enterprise Linux 7 이하(파생 배포판 포함) 및 SUSE Linux Enterprise Server 15 이하(파생 배포판 포함).
zabbix-debuginfo 저장소를 활성화하려면 다음을 수행하십시오.
- RHEL 7에서는
/etc/yum.repos.d/zabbix.repo를 편집하고zabbix-debuginfo섹션에서enabled=1로 설정합니다.
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=http://repo.zabbix.com/zabbix/7.4/stable/rhel/7/$basearch/debuginfo/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1
- SUSE에서는
/etc/zypp/repos.d/zabbix.repo를 편집하고zabbix-debuginfo섹션에서enabled=1로 설정합니다.
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo
type=rpm-md
baseurl=https://repo.zabbix.com/zabbix/7.4/stable/sles/15/$basearch/debuginfo/
gpgcheck=1
gpgkey=https://repo.zabbix.com/zabbix/7.4/stable/sles/15/$basearch/debuginfo/repodata/repomd.xml.key
enabled=0
update=1
활성화한 후 패키지를 설치합니다.
- RHEL에서는 모든 Zabbix 구성 요소의 디버그 정보가 포함된 단일 패키지를 설치합니다.
dnf install zabbix-debuginfo
- SUSE에서는 구성 요소별 debuginfo 패키지를 설치합니다.
zypper install zabbix-<component>-debuginfo