4 パッケージインストール
概要
公式の Zabbix 7.0 パッケージは Zabbix のWebサイト で提供されており、そこでお使いのオペレーティングシステムと Zabbix コンポーネントを選択して、環境に適したインストール手順を生成できます。 重要な追加情報については、このページのパッケージインストールに関する注意事項および インストールとセットアップ セクションも参照してください。
パッケージは、以下の Linux ディストリビューション向けに提供されています。
- Red Hat Enterprise Linux およびその派生ディストリビューション: AlmaLinux、Amazon Linux 2023、CentOS Stream、CentOS、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 Web サーバーをサポートしています。 Zabbix サーバーとプロキシは同じデータベースを共有できないことに注意してください。両方を同じホストにインストールする場合は、異なるデータベース名を使用してください。
必要に応じて、Zabbix エージェント/エージェント 2、Zabbix get、Zabbix sender 用の個別パッケージを Zabbix 公式リポジトリ で利用できます。
Zabbix 7.0.5 以降、Go 1.22(およびそれ以降のバージョン)が RHEL 6 に付属する GCC 4.4.7 と互換性がなく、コンパイルエラーが発生するため、RHEL 6 向けの Zabbix エージェント 2 パッケージは提供されなくなりました。 ただし、Zabbix エージェントパッケージ は引き続きサポートされています。
Zabbix は、Linux 以外のオペレーティングシステム向けに、事前コンパイル済みの Zabbix エージェントバイナリも提供しています。以下を参照してください。
- MSI からの Windows エージェントのインストール
- PKG からの macOS エージェントのインストール
- レガシーバイナリ(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 サーバー (アラーター、プリプロセス、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 公式リポジトリ から、定義済みの zabbix-selinux-policy パッケージをインストールしてください。
このパッケージは、Zabbix の導入を簡素化し、設定の複雑さからユーザーが SELinux を無効にできないようにするために、サポートされているすべての OS バージョンに提供されています。
::: 重要 セキュリティを最大限に高めるには、カスタム SELinux 設定を行うことをお勧めします。 :::
zabbix-selinux-policy パッケージには、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 バイナリのデバッグシンボルが含まれています。 通常のインストールや操作には必要ありませんが、高度なトラブルシューティングに役立ちます。
zabbix-debuginfo リポジトリを有効にするには:
- RHEL 6 または 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.0/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を編集し、enabled=1に設定します。zabbix-debuginfoセクション:
[zabbix-debuginfo]
name=Zabbix 公式リポジトリの debuginfo
type=rpm-md
baseurl=https://repo.zabbix.com/zabbix/7.0/stable/sles/15/x86_64/debuginfo/
gpgcheck=1
gpgkey=https://repo.zabbix.com/zabbix/7.0/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-<コンポーネント>-debuginfo