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

Log Lifecycle

Cloud ZCP は、アプリケーションとプラットフォーム自体を監視および管理するための包括的なログ機能を提供します。ログシステムは、OpenSearch Stack(OpenSearch、Fluentd、OpenSearch DashBoards)に基づいています。ログライフサイクルを理解することは、ログがどのように収集、処理、保存、クエリされ、時間の経過とともに管理されるかを含みます。

プラットフォームは、Application LogsAudit Logs を含むいくつかの種類のログを管理します。

ログ収集

Cloud ZCP におけるログ収集は、プラットフォーム全体のさまざまなソースからログを収集することを含みます:

  • Application Logs: Fluent-bit コンポーネントは、実行中のコンテナからのログ収集のために、データプレーンクラスターの各ノードにデーモンセットとしてインストールされています。Fluent-bit は、ユーザーアプリケーションコンテナおよび各ノードで実行されているすべてのシステムコンポーネントからログを収集します。
  • Audit Logs: 監査ログは、コンソール、Kubernetes、および Keycloak の3種類のログを管理します。これらのログを収集するための設定を構成できます。Kubernetes ログの場合、管理されたクラスターを選択し、各クラスターの設定を個別に構成する必要があります。

ログ処理

収集されたログは、保存前に処理されます:

  • Data Plane Processing: FluentD は、収集されたログを制御プレーンクラスターに処理して送信するためにデータプレーンクラスターにインストールされています。この FluentD は、予備処理を行います。
  • Control Plane Processing: 制御プレーンクラスターには、データプレーンクラスターと制御プレーンクラスター間のログパイプラインを整理するために追加の FluentD が展開されます。この FluentD は、データプレーンの FluentD から渡されたログの二次処理を行い、Opensearch に保存される前に処理します。
  • Integrated Management: OpenSearch は、コンテナ管理サービスに登録されたすべてのデータプレーンクラスターのログを統合的に管理するために適用されます。

ログ保存

処理されたログは、保存と管理のために集中化されます:

  • Centralized Storage: すべてのログは、制御プレーンクラスターの Opensearch 中央ストレージに保存されます。
  • Deployment: Opensearch は、制御プレーンクラスター内のログ専用の3つのワーカーノードに展開され、高可用性を提供します。
  • Integrated Management: OpenSearch は、コンテナ管理サービスに登録されたすべてのデータプレーンクラスターのログを統合的に管理するために適用されます。
  • Indexing Strategy: ログストレージインデックスは created per project です。データプレーンの Fluent-bit から送信されたログは、[Realm].[Project-Name].[Cluster-Name]-%Y.%m.%d という形式でインデックス化されます。このインデックス形式は、各プロジェクトのログを別々のインデックスに隔離して保存することをサポートし、マルチプロジェクトのログデータのセキュリティ機能をサポートします。

ログ検索と可視化

保存されたログへのアクセスと分析は、主に OpenSearch Dashboards を通じて行われ、ZCP コンソールの Logging メニューからアクセスします。

  • Discover: これは、ログをクエリし、表示するためのメイン画面です。指定された時間範囲内のログを絞り込むために、検索用語やフィルターを使用できます。
  • Dashboard: 複数の視覚化と情報パネルを同時に表示できます。
  • Visualize: ログデータからさまざまな視覚化(チャート、テーブル、メトリクスなど)を作成できます。
  • Dev Tools: OpenSearch Rest API を呼び出すためのインターフェースを提供します。
  • Audit Log Viewing: 収集された監査ログを表示できます。これらのログは、イベントソース(コンソール、Keycloak、Kubernetes)や日付範囲でフィルタリングできます。詳細な監査ログは、ペイロード情報(収集時に有効にされている場合)を含む個々のエントリについて表示できます。

ログ管理と保持

ログデータのボリュームと保持を管理することは重要です。

インデックス管理

OpenSearch Dashboards は、インデックスを管理するためのメニューを持つ Index Management 画面を提供します。インデックスを管理するポリシー(インデックスポリシー)を作成、変更、削除できます。また、保存されたインデックスを表示し、それにポリシーを適用することもできます。

Stack管理

Stack Management: Stack Management 画面には、OpenSearch Dashboard の設定を管理するためのメニューが含まれており、Index Patterns も含まれています。

インデックスパターンは、OpenSearch Dashboards で検索するためのターゲットインデックスを指定します。ログインデックス形式 [Realm].[Project-Name].[Cluster-Name]-%Y.%m.%d に基づいてインデックスパターンを作成できます。

監査ログの保持ポリシー

保持ポリシーは、状態管理ポリシーから作成されます。管理者のみが OpenSearch Dashboards からそれらを表示および管理できます。

システムは、hotdelete の2つの状態を定義します。インデックスは hot 状態のままで10日間、その後 delete 状態に移行し、削除アクションがトリガーされます。

セキュリティと権限

OpenSearch は、ログ管理およびセキュリティのためのロールと権限管理をサポートします。OpenSearch Dashboard セキュリティメニューでは、認証、アクセス制御、ロール、ユーザー、権限、およびテナントを設定して、マルチクラスターでのログデータの管理と承認を行うことができます。プロジェクト単位で分類されたテナントは、ログデータと保存されたオブジェクトへのアクセスを安全に共有するために重要です。