Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. Docker コンテナでの Checkmk

Docker での Checkmk のインストールガイドでは、Docker コンテナで Checkmk を設定する方法を すでに紹介しています。この記事では 、その詳細について詳しく説明します。

2. セットアップ時のオプションパラメータ

以下のパラメータはすべて、 Checkmk サイトをコンテナとして設定する際に追加で指定されるものであり、個別に使用することはできません。

2.1. HTTPS の使用

Docker ノード上の唯一の web サーバーが Checkmk である場合は、ポートを標準の (80) HTTP ポートにバインドすることもできます。 ただし、Docker ノード上に複数のただし、ドッカーノードに複数の webサーバーがある場合は、おそらくNginxのようなリバースプロキシを使用することになります。これは、問い合わせを正しいコンテナに誘導します。この 技術を使用すると、HTTPS(既存のものも使用可能)も使用できます。リバースプロキシ はHTTPS経由でアドレス指定され、コンテナとの通信は HTTP経由で継続されます。

2.2. 初期パスワードの設定

Checkmk では、サイトを作成すると、デフォルトユーザーcmkadmin のランダムなパスワードが作成されます。 Checkmk コンテナを作成する際に、パスワードを手動で割り当てることもできます。 作成プロセス中に、-e CMK_PASSWORD='mypassword' オプションを追加してください。

2.3. 独自のサイト ID の設定

Checkmk コンテナを作成するためのデフォルトのコマンドでは、コンテナ内に作成されるサイトの ID はcmk になります。 これは、HTTP(S) 経由でサイトにアクセスするために重要であり、明示的に指定する必要があります。 同じ Docker ノードに複数の Checkmk コンテナがある場合、一意性を確保するために ID を手動で設定する必要があります。 これは、-e CMK_SITE_ID=mysite オプションを含めることで行えます。 完全なコマンドは、次のようにになります。

root@linux# docker container run -e CMK_SITE_ID="mysite" -dit -p 8080:5000 -p 8000:8000 --tmpfs /opt/omd/sites/mysite/tmp:uid=1000,gid=1000 -v monitoring:/omd/sites --name monitoring -v /etc/localtime:/etc/localtime:ro --restart always checkmk/check-mk-raw:2.1.0-latest

オプション--tmpfs のパスにサイトの ID も指定してください (この例ではmysite)。

2.4. 通知の送信

Checkmk の重要な機能の 1 つは、電子メールによる通知の送信です。 通知Checkmk は Postfixを送信メール用の MTA (メール転送エージェント) として使用しています。この postfix インスタンス は、メールを受信者に直接配信しないように設定されていますが、基本的には 追加のメールサーバー (SMTP リレーサーバー、スマートホスト) に転送しようとします。 このサーバーは、コンテナの外部で用意する必要があります。このようなリレーサーバーは ほぼすべての組織で利用可能です。

実装時には、通知を転送するリレーメールサーバーを指定してください。-e オプションでMAIL_RELAY_HOST 変数を使用してください(例:-e MAIL_RELAY_HOST='mailrelay.mydomain.com' )。メールサーバーが特定のホスト名を期待する場合は、次の オプションを追加してください:--hostname 'mymonitoring.mydomain.com'

Checkmk コンテナは現在、スマートホストのアクセスデータの設定をサポートしていません。 必要に応じて、Docker ノードから postfix 設定または設定フォルダをバインドすることができます 。

商業版を使用している場合は、postfix を完全にバイパスして、Checkmk が通知をスマートホストに直接転送するように設定できます。 これは、通知に関する記事で詳しく説明している同期 SMTP によって行われます。 ここでは、SMTP による認証も可能です。

2.5. TCP 経由のライブステータスへのアクセス

分散環境で複数の Checkmk コンテナ/サイトを接続すると 、ライブステータスインターフェース用に特別な TCP ポートが必要になります 。このインターフェースにより、サイト間の通信が可能になります 。このポートを、HTTP 用のポートと同様に、ドッカーノードの 1 つにバインドし 、ライブステータスサイトでこの TCP ポートを有効にしてください:-e CMK_LIVESTATUS_TCP=on -p 6557:6557

2.6. コマンドライン経由のアクセス

コマンドラインでコマンドを実行したい場合もあるでしょう。 サイトに対するコマンドは、常に特別なユーザーによって実行されるため、ログイン時にこれを指定する必要があります。 Checkmk では、ユーザーは、管理するサイトと同じ名前になります。-u cmk オプションを使用して、ユーザーcmk を指定します。

root@linux# docker container exec -it -u cmk monitoring bash

その後、コマンドをサイトに渡すことができます。

2.7. イベントコンソールの使用

Checkmk は、SNMP トラップおよび syslog メッセージを受信することができます。 Checkmk コンテナでこの機能を使用するには、標準化されたポートを次のコマンドラインパラメータを使用して Checkmk コンテナに転送する必要があります。-p 162:162/udp -p 514:514/udp -p 514:514/tcp サイトがこれらのポートを認識するには、サイト内で次のコマンドを使用して、適切なアドオンを有効にしてください。 omd config。 これらは、Addons のサブメニューで確認できます:

root@linux# docker container exec -it -u cmk monitoring bash
OMD[mysite]:~$ omd config

3. 便利なコマンド

コマンド 機能

docker inspect myContainer

このコマンドを使用すると、myContainer という名前の実行中のコンテナに関するあらゆる情報を取得できます。ここでは、統合されているデータストレージデバイス (ボリューム) も確認できます。これは、ボリュームに人間が理解できる名前を付けず、コンテナを更新する場合に特に便利です。

このページでは