「Zabbixサーバは構築したけど、エージェント設定で止まった」

監視運用を始めた新人エンジニアが、最初につまずきやすいポイントの1つがZabbixエージェント設定です。

特に初心者のうちは、

  • AgentとAgent2の違いが分からない
  • zabbix_agentd.conf の設定項目が多すぎる
  • 接続できない原因が分からない
  • Active/Passive監視の違いが曖昧
  • FirewallやSELinuxで通信できない

といった悩みがよく発生します。

実務でも、Zabbixサーバ構築より「エージェント側の設定ミス」で監視が失敗するケースはかなり多いです。

この記事では、監視運用の現場でよくあるトラブルも交えながら、

  • Zabbixエージェントの役割
  • Linuxへのインストール
  • 基本設定
  • 通信確認
  • 実務での注意点
  • 運用負荷を減らす考え方

まで、初心者向けに丁寧に解説します。

Zabbixエージェントとは

エージェントの役割

Zabbixエージェントは、監視対象サーバ内で動作する監視プログラムです。
CPU使用率やメモリ使用量などを取得し、Zabbixサーバへ送信します。

例えば以下のような情報を監視できます。

  • CPU使用率
  • メモリ使用量
  • ディスク容量
  • Linuxサービス状態
  • ログ監視
  • プロセス監視

つまり、OS内部の情報を取得するために必要なのがZabbixエージェントです。

エージェントを使わないSNMP監視もありますが、Linuxサーバ監視ではAgent監視が基本になります。

AgentとAgent2の違い

最近のZabbixでは、従来の「Agent」に加えて「Agent2」があります。

初心者はここで混乱しやすいです。

簡単に言うと以下の違いです。

種類特徴
Agent従来型。安定運用向け
Agent2新しい実装。プラグイン対応が強い

実務では、

  • シンプル構成 → Agent
  • DockerやDB監視を強化 → Agent2

という使い分けもあります。

ただし初心者学習段階では、まず通常Agentを理解すれば十分です。

なぜエージェント監視が必要なのか

理由は「OS内部の詳細情報」を取得できるからです。

例えばPing監視だけでは、

  • サーバが重い
  • メモリ不足
  • ディスク逼迫

は分かりません。

実務では、

「サーバは応答しているけど業務が止まっている」

という障害が多くあります。

そのため、OS内部監視が重要になります。

Zabbixエージェント設定の基本構成

Passive監視とActive監視

Zabbixには2種類の監視方式があります。

方式内容
PassiveZabbixサーバが取得しに行く
Activeエージェント側から送信する

初心者はここでかなり混乱します。

Passive監視

Zabbixサーバ → エージェント

へアクセスします。

ポートは通常 10050 を使います。

Active監視

エージェント → Zabbixサーバ

へデータ送信します。

実務でよく使う監視方式

実務ではPassive監視が基本です。

理由は以下です。

  • 動作確認しやすい
  • トラブル切り分けしやすい
  • 初心者でも理解しやすい

ただし、

  • クラウド環境
  • Firewall制限
  • 拠点間監視

ではActive監視もよく使われます。

初心者が混乱しやすいポイント

初心者が特につまずくのは以下です。

  • Hostname不一致
  • Server設定ミス
  • Firewall閉塞
  • Active/Passive混同

特に Hostname= は非常に重要です。

Zabbixサーバ側のホスト名と一致しないと監視登録されません。

LinuxへZabbixエージェントをインストールする

Rocky Linux / AlmaLinuxの場合

まずリポジトリを追加します。

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-latest.el9.noarch.rpm
dnf clean all

その後インストールします。

dnf install zabbix-agent -y

Ubuntuの場合

wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.0+ubuntu24.04_all.deb

dpkg -i zabbix-release_latest_7.0+ubuntu24.04_all.deb

apt update

apt install zabbix-agent -y

インストール確認

以下で確認できます。

zabbix_agentd -V

実施後はサービス状態も確認します。

systemctl status zabbix-agent

Zabbixエージェント設定を行う

zabbix_agentd.confの場所

通常は以下です。

/etc/zabbix/zabbix_agentd.conf

最低限必要な設定

最低限まず設定するのは以下です。

Server=192.168.1.10
ServerActive=192.168.1.10
Hostname=web01

それぞれの意味です。

項目内容
ServerPassive監視許可
ServerActiveActive監視先
HostnameZabbix登録名
ずきんちゃん

Hostnameって自由な名前で良いの?

ぬこさま

完全一致が必要だよ。Zabbixサーバ側のホスト名と違うと監視データが紐づかないから。

実務でよく使う設定例

例えば実務では以下も設定します。

ListenPort=10050
Timeout=10
AllowKey=system.run[*]

ただし system.run は注意が必要です。
コマンド実行を許可するため、セキュリティリスクがあります。

初心者環境では安易に有効化しない方が安全です。

設定変更後の再起動

設定変更後は再起動します。

systemctl restart zabbix-agent

自動起動設定も行います。

systemctl enable zabbix-agent

Zabbixサーバとの通信確認

疎通確認

まずPing確認です。

ping 192.168.1.10

意外と単純なNW疎通で止まるケースは多いです。

ポート確認

10050番がListenしているか確認します。

ss -lntp | grep 10050

zabbix_getで確認する

Zabbixサーバ側から確認できます。

zabbix_get -s 192.168.1.20 -k system.cpu.load

値が返れば通信成功です。

よくある接続エラー

実務で非常に多いのが以下です。

エラー原因
Timeout while connectingFirewall
Host not foundHostname不一致
Connection refusedAgent未起動
No dataテンプレート未設定

実務でよくある失敗と注意点

Hostname不一致

最も多いです。

設定ファイル:
Hostname=web01

Zabbixサーバ:
web001

このように少し違うだけで監視できません。
障害対応時にかなり時間を使いやすいポイントです。

Firewall設定漏れ

Linux側で firewalld が有効なケースがあります。

firewall-cmd --add-port=10050/tcp --permanent
firewall-cmd --reload

クラウド環境ではSecurity Group側も確認が必要です。

Active監視の設定ミス

初心者は Server=ServerActive= を混同しやすいです。

特にActive監視では、

Hostname=

設定ミスが非常に多いです。

ログ確認も重要です。

tail -f /var/log/zabbix/zabbix_agentd.log

テンプレート未設定

エージェント導入後、

「データが来ない」

という場合、テンプレート未設定もよくあります。

Zabbixはテンプレート紐付けで監視項目を定義します。
Agent導入だけでは監視されません。

運用監視で意識したいポイント

監視項目を増やしすぎない

初心者は全部監視したくなります。

ですが実務では、

  • 通知が増える
  • 誤検知が増える
  • 障害切り分けが大変

になります。

まずは以下から始めるのがおすすめです。

  • CPU
  • メモリ
  • ディスク
  • サービス死活

誤検知を減らす考え方

例えばCPU監視。

CPU 80%で即障害

にすると誤検知が増えます。

実務では、

  • 5分継続
  • 平均値利用

などでノイズを減らします。

障害対応しやすい監視にする

監視は「通知すること」が目的ではありません。

重要なのは、

「障害対応しやすいこと」

です。

例えば、

  • どのサーバか
  • 何が異常か
  • いつからか

が分かる監視名にするだけでも、運用負荷はかなり減ります。

Zabbixテンプレート活用で運用負荷を減らす

サーバ台数が増えると、1台ずつ監視設定するのは大変です。

そこで重要になるのがテンプレートです。

テンプレートを使うと、

  • 監視項目共通化
  • 設定ミス削減
  • 運用効率化

ができます。

特に実務では、

「監視設定の標準化」

が非常に重要です。

内部リンクとして、

もあわせて読むと理解しやすくなります。

まとめ

Zabbixエージェント設定は、監視運用の基本です。

特に初心者は、

  • Hostname一致
  • Firewall
  • Active/Passive違い

でつまずきやすいです。

ですが逆に言うと、このあたりを理解すると監視運用の理解がかなり深まります。

単に「監視を入れる」のではなく、

  • なぜ必要か
  • 障害時に役立つか
  • 運用負荷を減らせるか

を意識すると、実務でも強いエンジニアになれます。

ABOUT ME
はつゆき
はじめまして、はつゆきと申します。 なんやかんやでシステムエンジニアとして10年務めています。 特に監視系やサーバ関連などを多く携わっています。 初めて監視系の案件に携わるよーって方へなるべくわかってもらえるようにこれまで経験してきたことなど伝えていければと思っています。