コンテンツに移動
管理ツール

バケットリスト: Cloud Logging の最適なログの保管と管理

2020年9月3日
https://storage.googleapis.com/gweb-cloudblog-publish/images/G-Management-banner-05.max-2600x2600.jpg
Google Cloud Japan Team

※この投稿は米国時間 2020 年 8 月 22 日に、Google Cloud blog に投稿されたものの抄訳です。


クラウドに移行する組織の増加に伴い、マシン生成されるデータ量が急激に増大し、多くのチームにとってデータの重要性も高まっています。たとえば、ソフトウェア エンジニアや SRE は、新しいアプリケーションの開発や、信頼性を改善するために既存アプリのトラブルシューティングを行うにあたりログを活用します。セキュリティ オペレーターは、脅威の検出や対処、コンプライアンス要件への対応にログを活用します。また、適切に構造化されたログからは、ビジネスの成長の糧となる貴重な分析情報を得られます。そのためには、まず適切なツールを使ってログを収集、保管、分析する必要があります。しかし多くの組織が、大量のログの保管は費用がかさむうえに管理が難しいと考えています。

Google Cloud Logging は、ログを簡単かつ素早く作成してビジネスに役立てることを常に目標としてまいりました。ログの検索と分析を簡単にし、安全性、コンプライアンス、スケーラビリティに優れたログストレージを実現します。今回は、最近強化されたログの調査分析機能を基に改善されたログの保管管理機能をご紹介します。以下に新機能をいくつか示します。

  • ログバケット(ベータ版)
  • ログビュー(アルファ版)
  • リージョン化されたログストレージ(アルファ版)
  • カスタマイズ可能な保持期間(一般提供)
  • Cloud Logging ルーター(一般提供 - ベータ版の新機能)
  • ログの調査と分析(一般提供)

Cloud Logging は、開発当初から Google Cloud Platform に密接に統合されています。ログは、数多くの Google Cloud サービスから自動的に収集されます。これには、セキュリティとコンプライアンスにおいて重要な役割を果たす監査ログも含まれます。これらのログは、Compute Engine、Cloud Functions、App Engine などから適切なコンテキストに応じて取得でき、開発期間の短縮やトラブルシューティングの改善に役立てることができます。Google にとっての課題は、エンタープライズクラスのセキュリティでコンテキストに応じたログの取得が可能でありながら、多様な組織のニーズを十分に満たすフレキシブルなログストレージ ソリューションを構築することでした。

これは「ログバケット」を最高レベルのログ ストレージ ソリューションとして Cloud Logging に導入することで実現しました。ログバケットを使用すると、ニーズに応じてログを一元化したり、分類したりすることができます。ログバケットは、名前が Cloud Storage バケットに似ていますが、タイムスタンプに高度なインデックス機能と最適化機能を使用し、Google がリアルタイムでログを配信するために利用しているロギング技術スタックと同じ技術スタックを基に構築されています。そのため、Google のログ分析機能のメリットをそのままご利用いただけます。

また、ログバケットをサポートするために Cloud Logging ルーターも拡張したことで、ログの送信先管理がより容易になりました。以前は、Cloud Logging に送信されるログと、BigQuery、Cloud Storage、Pub/Sub などの別の場所に送信されるログは異なるモデルで管理していました。今後はログシンクを使用し、すべての送信先を一貫して管理できるようになりました。すべてのログシンクでログの除外がサポートされ、適切な送信先にルーティングするようにログを簡単に構成できます。さらに、あるプロジェクトから別のプロジェクトにログをルーティングしたり、フォルダや組織レベルで集約ログシンクを使用したりして、セキュリティの強化と管理の簡素化を実現できます。

https://storage.googleapis.com/gweb-cloudblog-publish/images/Cloud_logging_router.max-1300x1300.jpg

アルファ版のユーザーがログバケットを使って構築したソリューションの一例を次に示します。

  • ログの一元化 - 組織全体のすべてのログを 1 つの Cloud Logging プロジェクトに一元化します。このソリューションはセキュリティ チームで人気があったため、監査ログの一元化に特化したユーザーガイドを作成しましたが、組織内のあらゆるログを一元化できます。これにより、パターンを特定してプロジェクト間で比較できます。

  • 1 つのプロジェクトのログを GKE マルチテナンシー用に分割 - 1 つの共有プロジェクトのログを個々の開発チームが担当する他のプロジェクトに送信します。ログバケットに関してアルファ版ユーザーに好評だったのは、ログの保管先を非常に簡単に見つけられることです。たとえば、プロジェクト B で一元的に保管されているログも、プロジェクト A の GKE コンソールで Kubernetes クラスタで使用するために表示できます。詳しくは、こちらのユーザーガイドをご覧ください。

  • コンプライアンス関連の保持期間 - ログバケットでは、カスタム保持の限度の設定やログバケットのロックなどの詳細管理機能を活用して、保持期間を変更できないようにすることもできます。Google はカスタム保持の一般提供を開始しました。2021 年 3 月末日までカスタム保持を追加費用なしでご利用いただけます。ログのコンプライアンスと分析の長期的ニーズにお応えするログ管理機能を、ご負担なくお試しいただけます。

  • リージョン化されたログストレージ - コンプライアンス目的でログデータを特定のリージョンに保管できるようになりました。ログデータを保管するリージョンは、ログバケットを作成する際に設定できます。ロケーションをグローバルに設定すると、ログが物理的に格納される場所は指定されません。グローバル ロケーションを設定できるのはベータ版のログバケットのみですが、アルファ版のリージョン化されたログストレージでは、より多くのリージョンを指定できます。アルファ版へのお申し込みや、より多くのリージョンが一般提供された時点の通知の受け取りについては、こちらをご覧ください

フィードバックの中には、ソース プロジェクト、リソースの種類、ログ名に基づいてログにアクセスできるユーザーを構成したいというご意見もありました。標準の IAM コントロールを使用して、ユーザーがアクセスできるログを指定できるログビューも導入しました。ログビューでは最小限の権限という原則に従ってシステムを構築し、機密ログはその情報にアクセスする必要があるユーザーに限定できます。ログビューは機密ログへの限定アクセスを維持するために作成されますが、近いうちにソース プロジェクト、リソースの種類、ログ名に基づいて独自のログビューを作成できるようになります。アルファ版でお試しになる場合は、こちらからお申込みください

使ってみる

適切なログがあり、それらに簡単にアクセスできることは、開発チーム、運用チームのどちらにとっても重要です。新しい Cloud Logging の機能により、必要なログを簡単に見つけて調べられるようになります。Google Cloud でのログ管理の詳細については、次のリソースをご覧ください。

OPS100 - Google Cloud でのオブザーバビリティの設計

GKE でのマルチテナント ロギング

組織のログを一元化されたログバケットに保存する


-Google Cloud プロダクト マネージャー Mary Koes
投稿先