4 パッケージインストール
概要
公式の Zabbix 7.4 パッケージは Zabbix のWebサイト で提供されており、そこでお使いのオペレーティングシステムと Zabbix コンポーネントを選択すると、環境に適したインストール手順を生成できます。 重要な追加情報については、このページのパッケージインストールに関する注意事項および Installation and setup セクションも参照してください。
パッケージは、以下の 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 Official Repository の公式パッケージのみを使用することを推奨します。 以前にオペレーティングシステムのリポジトリから Zabbix をインストールした場合は、OS リポジトリからの Zabbix パッケージのアップグレード の手順を参照してください。
パッケージは MySQL/PostgreSQL データベースおよび Apache/Nginx Web サーバーをサポートしています。 Zabbix サーバーとプロキシは同じデータベースを共有できないことに注意してください。両方を同じホストにインストールする場合は、異なるデータベース名を使用してください。
必要に応じて、Zabbix エージェント/agent 2、Zabbix get、Zabbix sender 用の個別パッケージを Zabbix Official Repository で利用できます。
Zabbix は、Linux 以外のオペレーティングシステム向けに、事前コンパイル済みの Zabbix エージェントバイナリも提供しています。以下を参照してください。
- Windows agent installation from MSI
- macOS agent installation from PKG
- Legacy binaries(HP-UX、NetBSD、Tru64、旧バージョンの SLES など、古い/あまり一般的でないシステム向け)
パッケージインストールに関する注意事項
以下の注意事項はすべてのシステムに適用されます。
- PostgreSQL を使用する場合、Zabbix サーバー/プロキシ の設定で
DBHost=localhost(または IP アドレス)を指定すると、PostgreSQL はローカルの UNIX ソケットではなくネットワークソケットを使用します。関連する設定手順については、SELinux configuration を参照してください。 - TimescaleDB を使用する場合は、追加の TimescaleDB setup を参照してください。
- Zabbix Javaゲートウェイ(JMX アプリケーションの監視用)をインストールする場合は、RHEL-based systems および Debian-based systems 向けの追加設定手順を参照してください。
- Zabbix エージェントを root として実行する場合は、Running agent as root を参照してください。
以下の注意事項は RHEL およびその派生ディストリビューションに適用されます。
- EL9 向けの EPEL リポジトリを有効にしている場合、このリポジトリでも Zabbix パッケージが提供されるため、公式の Zabbix パッケージをインストールする前に、パッケージ解決の対象から除外する必要があります。詳細は Accidental installation of EPEL Zabbix packages を参照してください。
- Red Hat UBI 環境に Zabbix パッケージをインストールする場合は、Zabbix packages for RHEL on Red Hat UBI environments を参照してください。
- ICMP ping アイテム を使用する場合、
fping用のパッケージは Zabbix Official Repository でも提供されています。
SELinuxの設定
Zabbixは、ソケットベースのプロセス間通信を使用します。
Security-Enhanced Linux(SELinux)が有効になっているシステムでは、ZabbixがSocketDirディレクトリ内でUNIXドメインソケットを作成/使用できるようにするため、SELinuxルールの追加が必要になる場合があります。
ソケットファイルは、Zabbixサーバー(alerter、preprocessing、IPMI)およびZabbixプロキシ(IPMI)で使用され、プロセスの実行中に存在します。
SELinuxがenforcingモードで有効になっている場合、Zabbix Webインターフェースとサーバー間の通信を有効にするには、次のコマンドを実行します。
RHEL 7(以降)、AlmaLinux、CentOS Stream、Oracle Linux、Rocky Linux 8(以降)の場合:
setsebool -P httpd_can_connect_zabbix on
データベースにネットワーク経由でアクセスする場合(PostgreSQLのlocalhostを含む)は、Zabbix Webインターフェースからデータベースへの接続も許可します。
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 Official Repository から事前定義済みのzabbix-selinux-policyパッケージをインストールすることもできます。
このパッケージは、サポート対象のすべてのOSバージョン向けに提供されており、Zabbixの導入を簡素化し、設定の複雑さを理由にユーザーがSELinuxを無効化してしまうことを防ぎます。
最大限のセキュリティを確保するため、カスタムのSELinux設定を行うことを推奨します。
zabbix-selinux-policyパッケージには基本的なSELinuxポリシーが含まれており、Zabbixがソケットを作成および使用できるようにし、HTTPdからPostgreSQL(Webインターフェースで使用)への接続を有効にします。
ソース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バイナリ用のデバッグシンボルが含まれています。
通常のインストールや運用には必要ありませんが、高度なトラブルシューティングに役立ちます。
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/x86_64/debuginfo/
gpgcheck=1
gpgkey=https://repo.zabbix.com/zabbix/7.4/stable/sles/15/x86_64/debuginfo/repodata/repomd.xml.key
enabled=0
update=1
有効化したら、パッケージをインストールします。
- RHEL では、すべてのZabbixコンポーネントのデバッグ情報を含む単一のパッケージをインストールします。
dnf install zabbix-debuginfo
- SUSE では、コンポーネントごとのdebuginfoパッケージをインストールします。
zypper install zabbix-<component>-debuginfo