Zabbix構築手順を初心者向けに完全解説【Linux監視入門】
「Zabbixを構築して監視環境を作ってほしい」
新人エンジニアが監視運用の現場に入ると、最初に触ることが多いのがZabbixです。
ただ、実際に構築してみると、
- DB設定で接続できない
- Agentが通信しない
- アラートが大量発生する
- SELinuxやFirewallで詰まる
このような“実務でありがちな壁”によくぶつかります。
特に初心者のうちは、「なぜその設定をしているのか」が分からないまま手順だけ進めてしまい、障害発生時に対応できなくなるケースも少なくありません。
この記事では、監視運用の現場経験をもとに、
- Zabbix構築の基本手順
- 初心者が詰まりやすいポイント
- 実務で重要になる考え方
- 運用負荷を減らす設定の考え方
を初心者向けに分かりやすく解説します。
「とりあえず動いた」ではなく、「運用できる監視環境」を作れるようになることを目指します。
まずは監視全体の流れを知りたい方はこちら
→ 「Zabbix構築手順を初心者向けに完全解説【Linux監視入門】」
Zabbixとは何か
Zabbix は、サーバやネットワーク機器を監視するための統合監視ツールです。
CPU使用率やメモリ、ディスク容量、プロセス異常などを監視できます。
Zabbixでできること
主な監視内容は以下です。
- CPU使用率監視
- メモリ監視
- ディスク容量監視
- プロセス監視
- Ping監視
- ログ監視
- SNMP監視
運用現場では、
「サーバが落ちる前に異常を検知する」
ために利用されます。
なぜ監視が必要なのか
監視の目的は「通知を飛ばすこと」ではありません。
本来の目的は、
- 障害を早期発見する
- ユーザー影響を減らす
- 原因調査をしやすくする
ことです。
例えばディスク使用率90%で通知する場合も、
「なぜ90%なのか」
を考える必要があります。
容量不足でサービス停止する前に、運用担当が対応できる猶予を作るためです。
Zabbix構築前に準備するもの
必要なサーバ構成
初心者検証なら以下構成がおすすめです。
| 役割 | 内容 |
|---|---|
| Zabbix Server | 監視本体 |
| DB | MySQL/MariaDB |
| Web | Apache |
| Agent | 監視対象 |
実務ではDBを別サーバに分けることもあります。
ただし初心者検証では1台構成で十分です。
推奨スペック
検証用途なら以下程度でも動作します。
| 項目 | 推奨 |
|---|---|
| CPU | 2core |
| メモリ | 4GB以上 |
| ディスク | 20GB以上 |
監視対象が増えるとDB容量が急増します。
初心者はCPUより「ディスク容量不足」で困るケースが多いです。
Linuxは何を使うべきか
初心者なら以下が扱いやすいです。
- AlmaLinux
- Rocky Linux
- Ubuntu
実務ではRHEL系を採用している現場も多いため、AlmaLinuxやRocky Linuxに慣れておくと役立ちます。
Zabbix構築の全体手順
構築の流れ
基本的な流れは以下です。
- Linux準備
- DBインストール
- Zabbixインストール
- Web設定
- Agent設定
- 監視設定
- アラート確認
初心者は「どこで失敗したか」を切り分けながら進めるのが重要です。
初心者が最初につまずくポイント
特によくあるのが以下です。
- Firewall未開放
- SELinux制限
- DBパスワード間違い
- Agent通信不可
- タイムゾーン不一致
最初にハマりやすいポイント
インストールしたのにWeb画面にアクセスできない…
まずFirewallを疑おう。Zabbixは「インストール成功=通信成功」じゃないんだ。ポート開放確認はかなり重要だよ。
LinuxへZabbixをインストールする手順
ここではAlmaLinux系を例にします。
Linuxへの導入を詳しく知りたい方はこちら
→ 「ZabbixインストールをLinuxで完全解説【初心者向け】」
リポジトリ追加
まずは公式リポジトリを追加します。
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-latest.el9.noarch.rpm
dnf clean all
リポジトリ追加をする理由は、依存パッケージを正しく取得するためです。
Zabbix Serverインストール
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-agent -y
初心者は「何が入ったか」を把握せず進めがちです。
実際には以下が導入されています。
- Server本体
- Web画面
- Agent
- DB用SQL
DB設定
MariaDBをインストールします。
dnf install mariadb-server -y
systemctl enable mariadb
systemctl start mariadb
DB作成例です。
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@localhost identified by 'password';
grant all privileges on zabbix.* to zabbix@localhost;
flush privileges;
その後、初期データを投入します。
zcat /usr/share/zabbix/sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix
Apache・PHP設定
systemctl enable httpd
systemctl start httpd
PHPタイムゾーン設定も重要です。
vi /etc/php.ini
date.timezone = Asia/Tokyo
タイムゾーン未設定だと、
- グラフ時刻ズレ
- 障害解析困難
につながります。
サービス起動
以下のコマンドでZabbixサービスを起動します。(どちらかで実行できます)
systemctl enable zabbix-server zabbix-agent
systemctl start zabbix-server zabbix-agent
実行後、Zabbixのサービス状態確認します。
systemctl status zabbix-server
サービス状態の確認漏れがあった場合、「Zabbixが起動してない!」とか後から慌てることはなくなるので確認しておきましょう。
Zabbix Agent設定手順
Agentとは
Zabbix Agent は監視対象サーバ側で動作するプログラムです。
CPUやメモリ情報を取得します。
監視設定をさらに詳しく知りたい方はこちら
→ Zabbixテンプレート記事
→ Zabbixトリガー記事
Agent設定例
以下で設定ファイルを開きます。
vi /etc/zabbix/zabbix_agentd.conf
設定例です。
Server=192.168.1.10
ServerActive=192.168.1.10
Hostname=web01
通信確認
systemctl restart zabbix-agent
確認ポイントです。
- 10050ポート開放
- Firewall確認
- 名前解決確認
Agentがつながらない
Agentが赤色のまま…
設定ファイルだけじゃなく、Firewallも見よう。実務だと「設定は正しいけど通信できない」がかなり多いよ。
Web画面の初期設定
ブラウザでアクセスします。
http://IPアドレス/zabbix
初回ログイン
初期アカウントです。
| 項目 | 値 |
|---|---|
| User | Admin |
| Password | zabbix |
ログイン後は必ず変更しましょう。
日本語設定
ユーザ設定から日本語へ変更できます。
初心者は英語UIで混乱しやすいため、最初は日本語がおすすめです。
タイムゾーン設定
タイムゾーンがズレると障害解析が難しくなります。
ログ時刻が一致しないためです。
Zabbix監視設定の基本
ホスト登録
監視対象サーバを登録します。
テンプレート設定
テンプレートは監視設定のセットです。
実務ではテンプレート管理が非常に重要です。
理由は運用負荷削減につながるからです。
トリガー設定
トリガーは異常判定条件です。
例:
- CPU90%以上
- ディスク使用率85%以上
ただし閾値を厳しくしすぎると誤検知が増えます。
なぜ誤検知が増える?
初心者エンジニア:
「通知が多すぎて見なくなりました…」
通知が多すぎて見ない…
それは運用現場でかなり危険。通知疲れが起きると、本当の障害を見逃しやすくなよ。
Zabbixの実務でよくある失敗
アラートが多すぎる
初心者は「全部監視したくなる」傾向があります。
ですが監視項目が多いほど、
- 通知増加
- DB肥大化
- 運用負荷増加
につながります。
誤検知が発生する
瞬間的CPU高騰で通知すると誤検知になります。
実務では、
「5分継続したら通知」
などの工夫を行います。
通知だけで満足してしまう
監視は通知がゴールではありません。
重要なのは、
- 原因特定できるか
- 復旧判断できるか
です。
Zabbix運用の負荷を減らす考え方
テンプレート活用
テンプレート統一は重要です。
サーバごとに個別設定すると管理不能になります。
閾値調整
閾値は環境ごとに変える必要があります。
例えばDBサーバはCPU高負荷になりやすいため、Webサーバと同じ閾値では誤検知が増えます。
不要監視を減らす
「監視できる」と「監視すべき」は別です。
本当に必要な項目に絞ることが重要です。
まとめ
Zabbix構築は単なるインストール作業ではありません。
重要なのは、
- なぜ監視するのか
- どの障害を検知したいのか
- 運用負荷をどう減らすか
を考えることです。
初心者のうちは「まず動かす」ことも大切ですが、同時に、
- なぜその設定をするのか
- どんな障害を防ぎたいのか
を意識すると、実務理解がかなり深まります。
特に監視運用では、
「通知が来たあと、どう動けるか」
が重要です。
構築だけで終わらず、運用目線まで意識して学んでいきましょう。


