メインコンテンツまでスキップ
Sumo Logic Japanese

Docker の収集方法

Docker からログとメトリクスを収集する方法について説明します。

このページでは、Docker のログおよびメトリクスを収集するいくつかの方法について説明し、比較します。これらの方法は、自己管理 Docker 環境で使用することも、ECS や Swarm などの管理対象 Docker サービスと一緒に使用できます。

ログおよびメトリクスのサポート

次のテーブルでは、それぞれの収集方法で収集できるものをまとめています。 

収集方法 ログ メトリクス
Docker ログ ドライバ Check-mark-symbol-small.png  
Docker ホスト上の Installed Collector

(Docker ログ Source と Docker Stats Source を含む)
Check-mark-symbol-small.png Check-mark-symbol-small.png
コンテナとしての Collector

(Docker ログ Source と Docker Stats Source を含む)
Check-mark-symbol-small.png Check-mark-symbol-small.png

Docker の収集オプション

Sumo Logic Docker ログ ドライバ

Sumo Logic Docker ログ ドライバとは、Docker コンテナ ログを Sumo に送信するために使用できる Docker プラグインです。ログ データが Sumo に取り込まれたら、Sumo Web アプリケーションを使用して検索して分析できます。このオプションは、Collector を Docker ホストにインストールしたくない場合に適しています。 

  • メリット
    • エージェントレス、HTTP Source を使用します。
    • セットアップが容易です。
    • ドライバを使用するためにすべてのコンテナを Docker ホストで設定することも、コンテナを開始するときにログ オプションを Docker コマンドに追加して、選択したコンテナを開始してドライバを使用することもできます。 
  • デメリット
    • HTTP Source にローカル キャッシングがないため、調整が長期に及ぶ場合にはデータが失われる場合があります。Docker ログ ドライバには基本的な再試行機能と限定的なキャッシングが備わっているため、調整の際のデータ損失を防ぐか、減少することができる可能性もあります。  
    • メトリクスがサポートされません。
    • すべての Docker 環境で機能するとは限りません。Docker バージョン 18.03.0-ce より前の Docker のバージョンでは、新しいプラグイン アーキテクチャがサポートされない場合があります。
    • Sumo Docker アプリケーションをサポートしていない。このアプリケーションでは、Sumo の Docker Stats Source を使用する必要があります。

Docker ホスト上の Installed Collector

この方法では、「Docker からのログと統計情報の収集」で説明しているように、各 Docker ホスト マシンで Installed Collector を実行し、Docker 用の Sumo Source を使用します。Docker ログ Source は、ホストで実行されているコンテナからログを、Docker デーモンからイベントを収集します。Docker Stats Source はコンテナ メトリクスを収集します。Chef、Puppet、Ansible などの Collector を手動でインストールすることも、画像に組み込むこともできます。 

  • メリット
    • 十分に視覚化されています。  この方法を使用すれば、以下のような Docker ホストのすべてを収集できます。 
    • ログがローカルでキャッシュされるため、Source が Sumo によって調整されたときにデータがドロップされません。  
    • Installed Collector を AMI に組み込み、すべてのホストで一貫したデプロイを行うことができます。
    • メタデータが設定可能です。Docker および Docker ホストから使用可能な変数を使用して、Docker ログ Source または Docker 統計情報の sourceCategory および sourceHost を設定できます。詳細については、「変数を使用した sourceCategory と sourceHost の設定」を参照してください。
  • デメリット
    • プロセスが自動化されていない場合、AMI のメンテナンスが難しくなる場合があるため、状況やリソースによっては、この点がデメリットになる場合があります。 
    • この方法をセットアップしてホスト上で選択したコンテナをモニタリングするのは、すべてのコンテナをモニタリングする場合ほど簡単ではありません。この目標を達成するには、複数の Source を設定する必要がある場合があります。

コンテナとしての Collector

この方法の場合、Collector は Dockerized コンテナで実行します。Sumo Logic Collector を実行するための Docker イメージのバリアントがいくつかある Docker 用 Sumo Logic Collector リポジトリを参照してください。

  • メリット
    • AMI に組み込む必要がありません。Docker 関連の自動化ツールに応じて完全に自動化できます。
    • Collector がログをコンテナにキャッシュするため、Source が Sumo によって調整されたときにデータがドロップされません。十分なスペースを確保するか、永続的なストレージを使用してください。
    • 簡単にアップグレードできます。コンテナであるため、新しいコンテナをデプロイするだけです。
    • メタデータが設定可能です。Docker および Docker ホストから使用可能な変数を使用して、Docker ログ Source または Docker 統計情報の sourceCategory および sourceHost を設定できます。詳細については、「変数を使用した sourceCategory と sourceHost の設定」を参照してください。
  • デメリット
    • この方法では、Docker ホストからホスト メトリクスを収集できません。ホスト メトリクスを取得するには、Collector を Docker ホストにインストールする必要があります。コンテナ ログ、コンテナ メトリクス、ホスト ログを収集することはできます。
    • この方法をセットアップしてホスト上で選択したコンテナをモニタリングするのは、すべてのコンテナをモニタリングする場合ほど簡単ではありません。この目標を達成するには、複数の Source を設定する必要がある場合があります。

Docker プラットフォームに関する考慮事項

次のテーブルでは、さまざまな Docker プラットフォームでサポートされる収集方法を示します。

プラットフォーム Docker ホスト上の Installed Collector コンテナとしての Collector Docker ログ ドライバ
Docker
(非管理対象サービス)
Check-mark-symbol-small.png Check-mark-symbol-small.png Check-mark-symbol-small.png  *
ECS Check-mark-symbol-small.png Check-mark-symbol-small.png Check-mark-symbol-small.png  *
Docker Swarm Check-mark-symbol-small.png Check-mark-symbol-small.png Check-mark-symbol-small.png  *
Rancher (非 Kubernetes) Check-mark-symbol-small.png Check-mark-symbol-small.png Check-mark-symbol-small.png  *

Docker 用 Sumo アプリケーション

Sumo では、Docker 用に次のアプリケーションを用意しています。  

  • この記事は役に立ちましたか?