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 つの方法

推薦する

JavaScript マクロタスクとマイクロタスクの実行順序についての簡単な説明

目次1. JavaScriptはシングルスレッドです1. 同期タスク2. 非同期タスク2. タスクキ...

5つのCSSスクロール天井実装方法の比較(パフォーマンス向上版)

改訂版のプレビューこの記事は 3 日前に書かれたものです。先輩の同僚から改訂の提案をいくつかいただき...

HTML ベースタグ target=_parent の使用の紹介

<base> タグは、ページ上のすべてのリンクのデフォルトのアドレスまたはデフォルトのタ...

Ubuntu 16.04.4LTS に mininet をインストールする際に発生する問題と解決策

ミニネットMininet は軽量のソフトウェア定義ネットワークおよびテスト プラットフォームです。軽...

タイムスタンプの差を計算するSQLメソッド

タイムスタンプの差を計算するSQLメソッド概要場合によっては、特定のレコードを時間で検索する必要があ...

MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル (CentOS7)

LinuxにMySQL 5.7.18をインストールする方法1. MySQLをダウンロードします。公...

Ant Design Pro ログイン機能にグラフィック検証コード コンポーネントを統合する方法

序文:この記事では、Ant Design Proログイン機能にグラフィック検証コードコンポーネントを...

vue.js ルーターのネストされたルートの実例

目次序文Vue CLI での設定基本コードVueルーターの登場ネストされたルートの設定要約する序文V...

Ubuntu 20.04 aptの国内ソースを変更する方法

UPD 2020.2.26 現在、Ubuntu 20.04 LTSはまだリリースされていないため、チ...

Dockerコンテナでは、イメージを簡素化してサイズを縮小する方法を詳しく説明しています

目次1.画像レイヤーの数を減らす1. 命令の統合2. 多段階ビルド3. スクワッシュ機能を有効にする...

シンプルなカレンダー効果を実現する JavaScript コード

この記事では、シンプルなカレンダー効果を実現するためのJavaScriptの具体的なコードを参考まで...

dockerコマンドの使用にはsudoは必要ありません

docker デーモンは通常の TCP ポートではなくホストの Unix ソケットにバインドする必要...

Dockerコンテナのデータを復元する方法

プロジェクトのテスト環境データベースのデータが失われてしまったので、記録しておきたいと思います。当時...

React-vscode で jsx 構文を使用する際の問題と解決策

問題の説明プラグインをインストールした後、ES7 React/Redux/GraphQL/React...

PHP+nginx サービス 500 502 エラーのトラブルシューティングのアイデアの詳細な説明

概要オンラインサービスへのアクセス中に 500 または 502 エラーが発生した場合、緊急処理とトラ...