包括的なログ管理および分析戦略はミッションクリティカルです。これにより組織は、運用、セキュリティ、変更管理におけるイベント間の関係を理解し、インフラストラクチャ全体を把握し続けることができます。AWS のお客様は、サービス固有のメトリクスとログファイルにアクセスできるため、それぞれの AWS のサービスがどのように運用されているか、また API コール、設定変更、請求のイベントなど数多くのサービスがどれくらいの追加データをキャプチャしているかを確認できます。ウェブサーバー、アプリケーション、オペレーティングシステムのログファイルからも重要なデータが提供されます。ただし、フォーマットはさまざまで、ランダムで分散した形式になります。このようなさまざまなログを効果的に統合、管理、分析するために、多くの AWS のお客様は、自分で管理するツールまたは AWS パートナーネットワーク (APN) 製品を使用する集中ロギングソリューションを選択しています。このソリューションを使用すると、アプリケーション、システム、AWS ログ情報の効率化されたビューが提供されるため、優れた運用方法を追及できます。

このウェブページでは、ログ管理に関するベストプラクティスの概要と、AWS のサービスやサードパーティ製品を使用した集中ロギングソリューションを選択するために役立つ情報と検討事項について説明します。また、AWS のマネージドサービスを使用した集中ロギングおよびデータ可視化の AWS ソリューションについても紹介します。

次のセクションは、Amazon Elastic Compute Cloud (Amazon EC2)、Amazon Simple Storage Service (Amazon S3)、Amazon CloudWatch (CloudWatch)、Amazon Elasticsearch Service (Amazon ES) の基礎知識と、アプリケーションとシステムのロギングに関する一般的な理解があることを前提としています。

  • ソリューション概要

    集中的なログ管理戦略を計画する場合は、ログモニタリング、レビュープロセス、アクセスコントロールの精度、ログ集約、アラート、レポート、保持要件といったビジネスとコンプライアンスの要件を最初に特定します。AWS のサービスとクラウドテクノロジーの使用を拡大できるよう、新しいログタイプをサポートするスケーラブルなソリューションを探します。ログ管理ソリューションを実装するために、次のような追加のベストプラクティスを検討します。

    • ログ保持の要件とライフサイクルポリシーを早い段階で定義して、できるだけ早くコスト効率に優れたストレージロケーションにログファイルを移動することを計画します。
    • ライフサイクルポリシーの実行を自動化するツールと機能を組み込みます。例えば、Amazon Simple Storage Service (Amazon S3) は、組み込みのライフサイクル機能を備えたコスト効率に優れたログストレージロケーションですが、これにより、お客様は必要に応じてログを安価なストレージ層 (Amazon S3 標準 – 低頻度アクセス、Amazon Glacier) に自動的に移動できます。
    • ElasticsearchLogstashKibana をローカルサーバーで実行するオープンソースの ELK スタックなど、カスタムに構築されたソリューションを実装する前に、そのコンポーネントの管理と維持に関連する追加のタスク、コスト、依存関係を検討してください。カスタムアーキテクチャによって設計上の柔軟性が提供されますが、マネージドサービスとツールの利用は運用上の複雑さを大幅に軽減します。
    • ログシッピングエージェントのインストールと設定を自動化することで、システムとアプリケーションのログを一貫してキャプチャできるようになり、Amazon EC2 インスタンスの動的なスケーリングがサポートされます。Amazon EC2 のユーザーデータスクリプトまたは構成管理ソフトウェアを使用して、このタスクを実行します。または、Amazon Machine Image (AMI) の一部としてエージェントを含めます。
    • ハイブリッドアーキテクチャを運用する組織では、オンプレミスと AWS の両方のワークロードを統合するソリューションを選択する必要があります。AWS とオンプレミスのログを統合することを選択しても、別々に管理することを選択しても、すべての運用環境にわたって必要な可視性を提供するログ管理ソリューションを実装します。

    AWS クラウドでは、高性能なパートナー製品と自分で管理する集中ロギングソリューションをサポートする柔軟なインフラストラクチャとツールを提供しています。一般的に、モニタリングするサービスの規模と、組織の状態、予算、ビジネス要件、完全性と完成度の優先事項により、最も適切なアプローチが決定されます。次のセクションでは、いくつかのログ管理用のサードパーティ製品と、自分で管理する集中ロギングソリューションに組み込む主要な AWS のサービスおよびオープンソーステクノロジーについて説明します。

    AWS パートナーネットワークにより、さまざまな包括的ログ管理ソリューションが提供されています。そのソリューションを使用することで、あらゆる規模または開発段階の組織は、ログの管理、分析、保持、アーカイブを簡単に行えます。サードパーティ製品を選択する場合は、設定が簡単で、柔軟な方法でデータ取り込みを実行でき、イベント検索、モニタリング、アラート、データ可視化の機能 (リアルタイムのデータダッシュボードなど) を組み込むことができるソリューションを検討します。このアプローチは、次のような状況のお客様に適しています。

    • 既存のパートナーツールを使用してオンプレミスのログを管理しており、現在のソリューションを拡張してクラウドリソースからログを取り込むことを検討している。一般的なパートナーテクノロジーを既に活用している組織では、オンプレミスとクラウドのログデータを簡単に統合して、ハイブリッドアプリケーションのパフォーマンスを単一のユーザーインターフェイスに可視化できます。
    • 高度なアラートまたはレポートの要件があるが、この機能の作成や管理を行うための専用の開発リソースとシステム管理リソースがない。
    • Amazon ES および Kibana では現在対応できない暗号化、ユーザー管理、セキュリティ、スケーラビリティの要件がある。
      例えば、パートナーソリューションの中には、保管時のログデータの暗号化や単一 VPC へのネットワーク分離などのセキュリティ要件を満たすよう調整されているものがあります。このようなソリューションは、保護された個人情報や医療情報を管理し、PCI および HIPAA の基準を満たす必要があるお客様にとって最も効率的な選択肢です。

    一般的なパートナー製品の一覧については、パートナー製品タブを参照してください。

    多くのお客様が、AWS マネージドサービスを使用して独自の集中ロギングソリューションを構築することを選択しています。これは、組織のログ管理のニーズを満たすために役立つコスト効率に優れたスケーラブルな方法です。サーバーレスデザインを使用することで、個々のソリューションコンポーネントの管理に関連するオーバーヘッドをさらに削減できます。このセクションでは、ログ管理アーキテクチャに一般的に使用される AWS のサービスについて説明します。

    AWS CloudFormation を使用して数分でデプロイできる規範的な集中ロギングソリューションについては、AWS ソリューションタブを参照してください。この自動化されたソリューションでは、ログデータをキャプチャ、統合、可視化するために、ネイティブの AWS のサービスとオープンソースのツールが使用されています。

    Elasticsearch は、迅速に価値を生み出し、活気のあるオープンソースコミュニティによってサポートされている Elastic のよく知られたオープンソースの検索および分析エンジンです。AWS では、Amazon Elasticsearch Service (Amazon ES) をマネージドサービスとして提供しています。これを使用することにより、AWS クラウドで Elasticsearch を簡単にデプロイして運用できます。Amazon ES では、Elasticsearch クラスターのキャパシティー、スケーリング、パッチ適用、運用が管理されるとともに、Elasticsearch API に直接アクセスできます。このサービスは CloudWatch Logs と統合されているため、ログデータの移動や変換のコードを記述するために追加の要件は必要ありません。

    Amazon ES では、Elasticsearch 向けのデータ可視化プラグインである Kibana の統合とそのアクセス管理を行えます。お客様は、大容量のデータから Kibana のさまざまなグラフやダッシュボードを作成したり、Kibana と AWS のユーザーコミュニティによって開発されたダッシュボードをロードして使用したりすることが可能です。Kibana では、ネイティブのアクセスコントロールは提供されていないため、Nginx ウェブプロキシなどの追加のメカニズムによる保護が必要になります (詳細については、AWS Security Blog を参照してください)。このような制限の中で作業ができない客様にとっては、サードパーティのログ管理と可視化ツールが適しています。

    Amazon CloudWatch Logs を使用すると、Amazon EC2 インスタンス、AWS CloudTrail、その他のソースのログファイルに対するモニタリング、保存、アクセスができるようになります。Amazon CloudWatch コンソール、AWS CLI の CloudWatch Logs コマンド、CloudWatch Logs API、CloudWatch Logs SDK を使用して、CloudWatch Logs からログデータを取得できます。CloudWatch Logs エージェントは、Linux および Windows インスタンスに簡単にインストールして設定でき、アプリケーションとシステムのログファイルを CloudWatch に送信できます。EC2 ロールを使用して CloudWatch Logs エージェントに必要な権限を付与することがベストプラクティスです。

    また、Amazon CloudWatch では、EC2 インスタンスの詳細なシステムパフォーマンスメトリクスを収集し、これらのメトリクスをダッシュボードと、Amazon Simple Notification Service や Auto Scaling トリガーなどの API コンシューマーに提供します。

    リアルタイムの CloudWatch Logs イベントフィードをサブスクライブできます。これは、Amazon Kinesis と AWS Lambda を使用して処理するか、CloudWatch Logs を Amazon ES に接続するための AWS 提供の Lambda 関数を使用して Amazon ES に直接配信できます (Amazon CloudWatch Logs ユーザーガイドのサブスクリプションを使用したログデータのリアルタイム処理を参照してください)。

    大容量のログデータを処理するお客様は、Amazon Kinesis Firehose をサーバーレスのログ取り込みおよび配信メカニズムとして使用できます。Amazon Kinesis Firehose は、リアルタイムのストリーミングデータを Amazon ES、Amazon S3、Amazon Redshift などの宛先に配信できるようにするマネージドサービスです。Firehose は大容量の受信データを処理するよう設計されており、Amazon ES ドメインに対する一括のインデックス作成リクエストを生成できます。

    Logstash クラスターなどの自分で管理するログ処理コンポーネントとは異なり、Firehose ではサーバー、アプリケーション、リソースの管理は必要ありません。個々のデータプロデューサーを設定することで、Firehose の配信ストリームに継続的にログデータを送信できます。その他は Firehose によって管理されます。

    多くの組織は、CloudWatch Logs から Amazon S3 にログデータをエクスポートすることを選択しています。Amazon S3 では、耐久性に優れた高度にスケーラブルなロケーションを提供しており、そこにログデータを保存し、ログファイルをカスタムの処理および分析向けに統合することができます。Amazon S3 は、ログデータの長期保持やアーカイブに最適です。特に、ネイティブ形式で監査可能なログデータが必要なコンプライアンスプログラムを有する組織に適しています。

    ログデータが Amazon S3 バケットに保存されると、保持ポリシーが自動的に実行されるようにライフサイクルルールを定義します。このオブジェクトは Amazon S3 標準 – 低頻度アクセス (標準 – IA) や Amazon Glacier といった他のコスト効率の良いストレージクラスに移動されます。

    このソリューション概要の PDF 版をダウンロードする
  • AWS ソリューション

    AWS では、ログを収集、分析、表示するための集中ロギングソリューションを提供しています。このソリューションでは、AWS クラウドで Elasticsearch クラスターのデプロイ、運用、スケーリングを簡素化するマネージドサービスである Amazon Elasticsearch Service (Amazon ES) と、Amazon ES と統合されている分析および可視化プラットフォームである Kinbana が使用されています。このソリューションを他の AWS マネージドサービスと組み合わせると、すぐに使用できる高可用性の環境を構築でき、AWS 環境とアプリケーションのロギングと分析を開始できます。

    下の図は、ソリューションの実装ガイドと付属の AWS CloudFormation テンプレートを使用して、自動的にデプロイできる集中ロギングアーキテクチャを表しています。

    1. このソリューションでは、Amazon ES ドメインをデプロイし、Amazon Virtual Private Cloud (Amazon VPC) ネットワークの 2 つの異なるアベイラビリティーゾーンで 3 つの Amazon EC2 インスタンスを作成します。
    2. Elastic Load Balancing と自動復旧では、Nginx プロキシを使用して 2 つのインスタンスがサポートされます。これは、Amazon ES ドメインダッシュボードへのアクセスを制限するために追加の認証レイヤーとして使用されます。
    3. カスタムの AWS Lambda 関数は、Amazon CloudWatch から Amazon ES ドメインにログデータをロードするためにデプロイされており、デフォルトの Kibana ダッシュボードを使用して、データ可視化の開始点として設定されています。
    4. 承認された IP アドレスからのユーザーリクエストによって、お客様が定義した認証情報を使用して Kibana UI にアクセスでき、その検索、可視化、レポートの機能を活用してドメインからのデータ操作を開始できます。
    ソリューションをデプロイする
    実装ガイド

    以下の内容を実行します。

    AWS CloudFormation を使用して 集中ロギングソリューションをデプロイする。CloudFormation テンプレートにより、ログファイルを Amazon ES にアップロードするために必要なコンポーネントの起動と設定が自動的に行われ、カスタマイズ可能な使いやすいダッシュボードで分析と可視化を実行できます。

    デフォルトの AWS のサービスログよりもロギング機能を拡張する。この柔軟なソリューションには、ホストレベルのログファイルおよび VPC フローログをキャプチャするためのサンプルが含まれており、拡大するビジネスに合わせてスケールできるよう設計されています。

    Nginx プロキシを使用してダッシュボードへのアクセスを制御し、Amazon ES の認証と、保護を強化するためのユーザー認証情報を簡素化する。

    組み込みの Kibana 向け Amazon ES サポートを使用してデータ可視化を簡素化する。このサポートにはデフォルトで事前設定された一連のダッシュボードが含まれており、最初に Kibana 4 のカスタマイズ機能を確認できるようになっています。

    開始する前に以下の準備が必要です。

    AWS アカウント: リソースのプロビジョンを開始するには AWS アカウントが必要です。AWS にサインアップする

    スキルレベル: このソリューションは、AWS クラウドでのアーキテクチャ設計に関する実経験がある IT インフラストラクチャおよびネットワーキングのプロフェッショナルを対象としています。

    Q: このソリューションではどのようなログソースを使用できますか?

    このソリューションでは、Apache ウェブサーバー、VPC フローログ、AWS CloudTrail から取得したソースログのサンプルが提供されています。AWS CloudWatch Logs エージェントがインストールされた Apache ウェブサーバーの例が説明されており、システムやアプリケーションのログデータを、Linux または Windows サーバーを実行している Amazon EC2 インスタンスからこのソリューションに配信する方法を確認できます。

    Q: このソリューションではどのログフォーマットがサポートされていますか?

    Amazon VPC フローログ、AWS CloudTrail、AWS Lambda、一般的なログフォーマット、スペース区切り、JSON、Apache ウエブサーバーログ、その他 (ユーザー定義) がサポートされています。

    Q: 集中ロギングソリューションはどの AWS リージョンにもデプロイできますか?

    このソリューションでは、AWS Lambda、Amazon CloudWatch Events、Amazon ES を使用しますが、これらのサービスは現在特定の AWS リージョンのみで利用できます。そのため、このソリューションをデプロイできるのは、3 つのサービスをすべて利用できる AWS リージョンです (製品およびサービス一覧 (リージョン別) を参照してください)。

    このソリューションによって作成される Amazon ES ドメインでは、他の AWS リージョンからログデータを受け取れるため、お客様はこのソリューションを大規模なマルチリージョンのロギング戦略に組み込むことができます。ただし、Amazon CloudWatch Events を利用できない AWS リージョンでは、代わりの配信メカニズムが必要です。このソリューションではそのサービスを使用してカスタムの AWS Lambda 関数をトリガーするためです。

  • パートナー製品

    Amazon パートナーネットワーク (APN) では、あらゆる規模または開発段階の組織に適したさまざまな包括的ログ管理ソリューションが提供されています。次のパートナーの人気製品を含め、パートナー製品全体の一覧については、AWS Marketplace で検索してください。

    splunk

    Splunk のソフトウェアを使用すると、大規模および小規模の組織は、ウェブサイト、アプリケーション、サーバー、ネットワーク、センサー、モバイルデバイスから受信するデータの検索、モニタリング、分析、可視化を実行できます。
    詳細 »

    sumologic

    Sumo Logic のログ管理および分析により、企業はログデータの収集、管理、分析を実行して、アプリケーションとインフラストラクチャの管理とモニタリングを強化できます。
    詳細 »

    datadog

    Datadog は、アプリケーション、ツール、サービスで作成されたメトリクスとイベントデータを実用的な情報に変換するモニタリングサービスです。
    詳細 »

    elastic

    Elasticsearch、Logstash、Kibana を提供しているこの企業の Elastic Cloud は、AWS クラウドで実行する完全マネージド型の Elasticsearch ソリューションです。高度なセキュリティ機能、モニタリング、アラートなどが備わっています。
    詳細 »

    loggly

    Loggly は、本番稼動時の問題のトラブルシューティング、モニタリング、アラートなど、いくつかの運用上のユースケースを考えて設計されたクラウドベースのログ管理ソリューションです。包括的な検索、フィルタリング、グラフ化、分析の機能があります。
    詳細 »

AWS の利用を開始するためにさらにリソースが必要ですか。AWS クラウドの開始方法にアクセスして、AWS を開始するためのチュートリアル、プロジェクト、ビデオをご確認ください。

ご意見をお寄せください