こんにちは。エンジニアの岩間です。
本記事では、zabbix agentをCentOS8.2にインストールし、zabbixサーバーに監視対象として登録するまでの手順、テンプレート作成手順をご紹介します。
バージョン確認
CentOS:8.2
zabbix agent:4.0.31-2
インストール
インストール前に設定すること
zabbixで監視対象としたサーバー上に、zabbix agentをインストールしていきます。
SElinuxの無効化
1 |
#vi /etc/selinux/config |
で
1 |
SELINUX=disabled |
とする。
変更になったか確認
1 |
#getenforce |
disabledと表示されれば正しく変更されています。
firewallにポートを追加設定
1 |
#firewall-cmd --permanent --add-port=10050/tcp |
1 |
#firewall-cmd --reload |
firewall の設定確認
1 |
#fireall-cmd --list-all |
※EC2インスタンスのサーバーの場合、セキュリティグループにポート10050の設定が別途必要です。
設定を反映させるために再起動
1 |
#reboot |
zabbix agentのインストール
以下のコマンドでインストールします。
1 |
#yum install zabbix-agent |
zabbix agentのバージョン確認
1 |
#zabbix_agentd -V |
zabbix agentの設定
1 |
#vi /etc/zabbix/zabbix_agentd.conf |
で以下を設定します。
1 2 3 |
Server=Zabbix サーバーの IP アドレス Server=Zabbix サーバーの IP アドレス Hostname=ホスト名 |
zabbix agent起動
1 |
#systemctl start zabbix-agent |
自動起動設定
1 |
#systemctl enable zabbix-agent |
起動しているか確認
1 |
#systemctl status zabbix-agent -l |
activeになっていればOKです。
activeにならないとき
設定した項目が正しいか確認
1 |
#vi /etc/zabbix/zabbix_agentd.conf |
ログを確認
1 |
#cat /var/log/zabbix/zabbix_agentd.log |
上記と別の形式でみれるログも確認
1 |
#journalctl -xe |
監視対象として登録
agentをインストールしたcentOSをzabbixに監視対象として登録します。
1.zabbixサーバーのインターフェース画面にアクセスします。
2.「設定」→「ホスト」に移動します。
3.画面右上の「ホストを作成」をクリックします。
4.「ホスト名」:/etc/zabbix/zabbix_agentd.confで設定したHostname
5.「グループ」登録する監視対象が所属するグループを選択後、画面下部の「追加」をクリックします。
6.「エージェントのインターフェースのIPアドレス」に監視対象のIPアドレスを入力後、「追加」をクリックします。
7.画面上部「テンプレート」のタブに移動します。
8.「新規テンプレートをリンク」→「選択」で、リンクするテンプレートを選択→「追加」をクリックします。
9.画面下部にある「追加」をクリックします。
設定できたかどうか確認
「設定」→「ホスト」で該当する監視対象の「エージェントの状態」が緑になっていればOKです。
(反映に数分かかることがあります)
テンプレートを作成してみる
まだテンプレートを作成していない場合は、テンプレートを新規作成します。
1.テンプレート作成
1.「設定」→「テンプレート」→画面右上「テンプレートの作成」をクリックします。
2.「テンプレート名」を入力、「グループ」を選択します。
3.「追加」をクリックします。
2.アプリケーション登録
1.「設定」→「テンプレート」で作成したテンプレートの名前をクリックします。
2.「アプリケーション」タブに移動し、「アプリケーションの作成」をクリックします。
3.アプリケーションの名前を入力し、「追加」をクリックします。 例:CPU、メモリ、ディスクなど
3.アイテム登録
1.「アイテム」タブに移動し、「アイテムの作成」をクリックします。
2.アイテムの名前などを入力していきます。今回は例として、メモリ使用率のアイテムを作成してみます。
タイプ | Zabbixエージェント |
名前 | メモリ使用率 |
キー | vm.memory.size[pused] |
データ型 | 数値(浮動小数) |
単位 | % |
監視間隔 | 30s |
アプリケーション | memory |
アイテムの書きかたについては公式ページを参考にしてみてください。
https://www.zabbix.com/documentation/current/manual/config/items/itemtypes/zabbix_agent
3.項目の入力が終わったら、画面下の「追加」をクリックします。
4.トリガー登録
1.「トリガー」のタブに移動し、画面右上の「トリガーの作成」をクリックします。
2.今回は、先ほど作成したメモリ使用率のアイテムを用いて、「5分平均のメモリ使用率が95%をこえたらアラート状態になる」というトリガーを作成してみます。
式:{テンプレート名:vm.memory.size[pused].avg(5m)}>95
3.「条件式」の右横にある「追加」をクリックすると、条件式を組み立てられるようになります。avg()のカッコの中の数字は挿入をクリックしたあと、条件式の項目で手入力で追加します。
4.項目の入力が終わったら、画面下の「追加」をクリックします。
以上でアプリケーション、アイテム、トリガーの登録は終わりです。
テンプレートは複数のアプリケーション、アイテム、トリガーを監視したい複数のサーバーに簡単にリンクさせられるので、便利です。
監視できているかどうか確認
「監視データ」→「最新データ」で登録したホストを検索します。
このようにデータが表示されれば監視できています。
「グラフ」をクリックするとグラフが表示されるようにもなります。
まとめ
以上、zabbix agentをCentOS8.2にインストールし、zabbixサーバーに監視対象として登録するまでと、テンプレート作成手順でした。ぜひ参考にしてみてください。
- 電子工作で自作した植物の自動水やり機から土壌データをAWS IoT Coreに連携してみた - 2024-09-13
- 【ESP8266 NodeMCU】電子工作で植物の自動水やり機を作ってみた - 2024-08-14
- Amazon Bedrock APIでTypeScriptのテストコードを出力してみた - 2024-05-07
- AWS CDK × CodeBuild × CypressでE2Eテストを自動化&実行動画をS3に保存してみる - 2024-04-16
- AWS ECSでブルーグリーンデプロイメント!~デプロイメントタイプ別の動作比較~ - 2024-04-03