Zabbix 監視 Docker アプリケーション構成

Zabbix 監視 Docker アプリケーション構成

コンテナの応用はますます一般的になっていますが、大量のコンテナをどのように管理すればよいのでしょうか?もちろん監視されています!

今日の記事は、Zabbix を使用して Docker コンテナを監視する方法について説明します。

Zabbix で監視される Docker の原理について:

  • Agent2はDocker APIを呼び出してデータを取得することでDockerを監視します。
  • プラグインディレクトリはzabbix-agent2/src/go/plugins/dockerに保存されます。
  • client.go ファイルは、Docker クライアントとサーバー間の通信に Unix ソケット アドレスを使用する方法を定義します。
  • デフォルトのソケットの場所は/var/run/docker.sockです。

zabbix で監視される dokekr の展開は、大きく分けて 5 つの部分に分かれます。

1. zabbix-agent2をダウンロードする

  • 監視対象ホストに zabbix-agent2 をインストールします。注意:これは agent ではなく agent2 です。
  • zabbix-agent2のバージョンはサーバーのバージョンと一致している必要があります
https://repo.zabbix.com/zabbix/5.2/rhel/7/x86_64/zabbix-agent2-5.2.7-1.el7.x86_64.rpm を取得します。
rpm -ivh zabbix-agent2-5.2.7-1.el7.x86_64.rpm

2. 設定ファイルを変更し、基本設定を設定します。

zabbix_agent2.conf を vim で編集します。
サーバー=192.168.1.4
ServerActive=192.168.1.4 #アクティブデータプッシュモードを開始 Hostname=192.168.1.5

3. zabbix ユーザーを docker グループに追加します。これは非常に重要なので無視しないでください。

zabbix-agent2をインストールすると、デフォルトでユーザーzabbixが作成されます。

IDザビックス
uid=997(zabbix) gid=995(zabbix) グループ=995(zabbix)

docker データを取得するには、/var/run/docker.sock ソケットにアクセスできる必要があります。

ll /var/run/docker.sock 
srw-rw---- 1 ルート docker 0 7月 7日 09:09 /var/run/docker.sock

root ユーザーに加えて、docker グループにも読み取りおよび書き込み権限があることがわかるので、zabbix ユーザーを docker グループに追加します。

ユーザーmod -aG docker zabbix
IDザビックス
uid=997(zabbix) gid=995(zabbix) グループ=995(zabbix),994(docker)

4. zabbix-agent2サービスを実行する

systemctl zabbix-agent2 を起動します。
systemctl zabbix-agent2 を有効にする

5. Webページで設定する

  • この実験では、クライアントはホスト192.168.1.5使用します。
  • 手順: [構成] - [ホスト] をクリック - [192.168.1.5 ホスト] をクリック - テンプレート - [新しいテンプレートのリンク] を選択 - [ホスト グループ] - テンプレート - [Docker] を選択 - [更新] をクリック

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

アップデート後、配置——主機の監視項目にdockerがあることがわかります。

ここに画像の説明を挿入

しばらくすると、監視対象のDocker情報が監測——最新數據で確認できるようになります。

ここに画像の説明を挿入

この時点でweb01のdockerコンテナを実行します

docker run -d -p 80:80 --name web01 nginx:1.16.1
ドッカーps
コンテナID イメージ コマンド 作成ステータス ポート名
17095d63ed44 nginx:1.16.1 "nginx -g 'daemon of..." 20 分前 20 分前に起動 0.0.0.0:80->80/tcp, :::80->80/tcp web01

しばらくすると、zabbixがweb01コンテナに関するdockerコンテナの内容を検出していることがわかります。

ここに画像の説明を挿入

この記事で使用されているテンプレートは組み込みテンプレートです。これで、Zabbix 監視 Docker に関するコンテンツは完了です。

Zabbix 監視 Docker アプリケーション構成に関するこの記事はこれで終わりです。関連する Zabbix 監視 Docker コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • docker で zabbix_agent をデプロイする方法
  • Dockerfile をベースに Zabbix 監視システムのコード例を作成する
  • Dockerを使用してZabbixをインストールし、カスタム監視項目を構成するプロセスの詳細な説明

<<:  インデックススキャンを使用したMySQLソート

>>:  CSS を使用して固定左列と適応右列の 2 列レイアウトを実現する 4 つの方法

推薦する

MySQL データベースの操作とデータ型

目次1. データベース操作1.1 データベースの表示1.2 データベースを作成する1.3 データベー...

Linuxのファイル権限の詳細な紹介

Linux の優れた点は、マルチユーザー、マルチタスク システムにあります。 Linux では通常、...

Vue.jsはアイコンをクリックしてズームインし、

前回の記事では、Vue で画像の切り抜きや拡大・縮小、回転を実現する方法を紹介しました。今回は、アイ...

Nginx に lua-nginx-module モジュールをインストールする方法

ngx_lua_module は、lua パーサーを nginx に埋め込み、lua 言語で記述され...

CSS3 ベジェ曲線の例: リンクホバーアニメーション効果の作成

CSS3 アニメーション トランジションを使用して、リンクの上にマウスを移動すると小さなポップアップ...

Vueのフロントエンドとバックエンドのポートの不一致の問題を解決する

Vue のフロントエンドとバックエンドのポートが一致していませんconfig index.jsファイ...

MySQL での varchar 型の日付の比較、並べ替え、その他の操作の実装

MySQL を使用する場合、日付は通常、datetime や timestamp などの形式で保存さ...

Linux チェックアップ、Linux の状態 (ネットワーク IO、ディスク、CPU、メモリ) を把握

目次1. コアコマンド2. 共通コマンド3. コアコマンドの詳細な説明3.1、ps補助3.2 トップ...

HTMLプログラミングタグとドキュメント構造の詳細な説明

HTML を使用してコンテンツをマークアップする目的は、Web ページにセマンティクスを与えることで...

Linux SecureCRT の文字化けの解決方法

SecureCRT が文字化けした文字を表示する状況を見てみましょう。例えば: ではリセットしてみま...

JSはUUIDとNanoIDというユニークなIDメソッドを生成します

目次1. NanoIDがUUIDに取って代わる理由2. jsを生成する方法3. ナノID方式序文:ユ...

Web ページのソース ファイルを表示できない場合はどうすればよいですか?

Q: Outlook または IE のどちらを使用している場合でも、マウスを右クリックすると、ポッ...

MySQL 8.0.22 解凍版インストールチュートリアル(初心者向け)

目次1. リソースのダウンロード2. ソフトウェアを解凍する2.1 場所を選択する2.2 名前を変更...

クラウドデータ移行サービスの観点から見たMySQLの大規模テーブル抽出モードの原理分析

概要: MySQL JDBC 抽出にはどのような方法を使用すればよいでしょうか? その方法を説明しま...

Nacos で MySQL8 を設定する方法

1. MySQLデータベースnacos_configを作成する2. データベース nacos_con...