ZABBIXを使ってみる その4.5
こんばんは、かーでぃです。
仕事でZABBIXを使うかもしれないので、個人でも使ってみようと思いまして、ZABBIXネタで暫くブログを書こうと思います。
一応、全8話の予定です。
STEP1 ZABBIX AGENTのインストール
STEP2 ZABBIX AGENTの設定
STEP3 DockerでZABBIX Serverを立てる
STEP4 Server設定
STEP4.5 DHCP環境への対応 ← 本記事はココ
STEP5 監視が始まる瞬間を監視する
STEP6 トリガーの定義
STEP7 アラート設定&通知
STEP8 総括?
IPアドレス変わったらダメじゃん
社内だと、DHCP環境が多いんですかね。。?自分が情シスの頃は、基本固定IPとしていましたが、Windows環境下だとDHCPが基本、なんてことも耳に挟んだことがありました。
家だとDHCP環境ですね!なにせ、ノートパソコンは持ち出したりもするので、その際にDHCP環境じゃないとやってらんないですからねぇ。
さて、過去4回の「ZABBIXを使ってみる」の中では、いずれもIPアドレスを指定していました。
もちろん、確実に動かすためにはIPアドレスを指定した方が間違いが少ないと思うのですが、家のようなDHCP環境下では、PCを立ち上げる度にIPアドレスがわかってしまい、通信ができなくなる可能性があります。
ということで、ここではIPアドレスではホスト名による指定の仕方に変更したいと思います。
エージェントのコンフィグファイル
👇エージェントの環境設定の仕方はこちらを参考
上の記事では、Serverの値を下記のようにIPアドレスで指定しています。
Server=127.0.0.1ここをホスト名に変更します。
この指定は、サーバ👉エージェントへの問合せ時に、指定されたIPからの問合せのみ許可する設定です。IPとは書きましたが、ここはホスト名でも良いようです。
よって、私の環境では以下のようになります。
Server=TOTTENHAMこれで、サーバ名「TOTTENHAM」からの問合せのみ許可する設定になりました。内部的には名前の逆引きをしてIPアドレスに置き換えてるとは思います。
ちなみに、コンフィグファイルはエージェントがロックを掛けているため伺き保存ができません。一度、サービスを止める必要があります。
また、サービスが止まっていても、ProgramFilesに保存してあるため(だと思う!)、通常に起動したメモ帳では編集ができません。管理者モードとして立ち上げないと変更ができませんでした。

Zabbixサーバの設定変更
先ほどの指定は、エージェントがサーバを指定するものでした。
こちらは、サーバがエージェントを見つける際の設定です。
Zabbixのサーバ設定については👇を参考にしてください。
WebUIにログインし、DataCollection👉Hostsと進みます。
エージェントがインストールされている端末をクリックして、設定画面を開きます。

その4での説明では、Interfaceの設定の際に、IPアドレスのみを指定していました。ここに、DNS nameを追加します。ここでは、「TOTTENHAM.local」を追加し、Connect toを"DNS"に変更します。
TOTTENHAM.localとしているのは、Windows端末だからですね。Windows10/11では、名前解決には複数の設定があります。
hostsファイル
DNSキャッシュ
mDNS
LLMNR
NetBISO
hostsファイルを書くのが確実なのですが、DHCP環境なのと端末全部に書かないといけないため管理が面倒なので却下。
DNSキャッシュはあくまでキャッシュなので、こちらでどうこう管理できるものでもないため却下。
mDNSは、Windows10/11環境下では標準でもっている機能であり、ホスト名.localとすることでローカルの名前解決を自動的にしてくれます。.localが無くても解決してくれるようですが、.localを付けた方がNWにかける負担が少ないようなので、.localを追加しています。
Dashboardで動作確認
このように、エージェントの情報を取得してきていれば、Zabbixのサーバとエージェントが通信できていることになります。

ここまでで「できた」状態
✅ DHCP環境に変更することができた。
✅ コンフィグファイルの設定を変更できた。
✅ WebUIからエージェントの設定変更ができた
今回の記事はココまで。
次回は、STEP5の「監視が始まる瞬間を監視する」になります。
2026/1/11 追記
管理コンソールを覗いたら、こんな感じにエラーとなっていました。

TOTTENHAMがDNS名前解決できてない、ようです(あれれ??)。
こちらの設定で、Connect toをIPに変更すると、正しく繋がることが確認できました。

んー、そうするとDHCP環境下ではDNSを立てるしかない?と思ったのですが、Active Agentの設定にすればいいそうです。
Active Agent?
現在は、サーバからエージェントにデータを取りに行く設定です。その際、IPアドレスでエージェントを見に行けばよいのですが、ホスト名で見に行くと名前解決ができない状況でした(上の記述)。
ちなみに、PINGでは、IPv6のIPが返ってくるので、これがIPv4のIPが戻ってくればよいかとおもうのですが、HOSTSファイルに記述するとか、面倒でやってらんないので、却下。
ということで、データを取りに行く向きを、エージェントからサーバに変更する設定を次回やりたいと思います!
いいなと思ったら応援しよう!
「いいね」以上、「スポンサー」未満の気持ちで、
もしよければ応援してもらえると嬉しいです。
いただいたチップは、次の記事を書くためのコーヒーと時間に変わります☕