長期保管および検索用のバケットの構成
IBM Cloud Logs は、長期保存と検索のために、 IBM Cloud Object Storage バケットを使用してデータとメトリクスを保存します。
バケットについて
IBM Cloud Object Storage は、非構造化データを保管するための、可用性が高く、永続的でセキュアなプラットフォームです。 IBM Cloud Object Storage にアップロードされるファイルは、オブジェクトと呼ばれます。 オブジェクトは、数バイトから 10TBまでの任意の場所に配置できます。 これらは、オブジェクトのコンテナーとして機能するバケットに編成され、ロケーション、回復力、請求レート、セキュリティー、およびオブジェクト・ライフサイクルの観点から、相互に独立して構成することができます。 詳しくは、 IBM Cloud Object Storageとは? を参照してください。
バケットを管理するには、IBM Cloud Object Storage インスタンス上のバケットで作業するための許可をユーザーに付与しなければなりません。 役割について詳しくは、ID およびアクセス管理の役割を参照してください。
バケットを作成するには、以下のいずれかのオプションを選択できます。
| アクション | 詳細 |
|---|---|
| IBM Cloud UI によるバケットの作成 | 詳細はこちら |
| IBM Cloud CLI によるバケットの作成 | 詳細はこちら |
| cURL を使用したバケットの作成 | 詳細はこちら |
| REST API を使用したバケットの作成 | 詳細はこちら |
| REST API を使用した別のストレージ・クラスでのバケットの作成 | 詳細はこちら |
| REST API を使用した Key Protect または Hyper Protect Crypto Services 管理の暗号鍵 (SSE-KP) でのバケットの作成 | 詳細はこちら |
| Terraform を使用したバケットの作成 | 詳細はこちら |
詳しくは、 IBM Cloud Object Storage を参照してください。
バケツについて IBM Cloud Logs
IBM Cloud Logs インスタンスごとに、1 つのデータ・バケットと 1 つのメトリクス・バケットを構成できます。
-
データバケットは、インジェストされ、TCOポリシーやブロック解析ルールによってブロックされていないログを保存するために使用される。 詳しくは、 データ・バケットの構成 を参照してください。
-
メトリックス・バケットは、収集されたデータ使用メトリックスと、 IBM Cloud Logs によって生成されたメトリックスを 保存するために使用されます。 メトリックス・バケットの構成については、「 メトリックス・バケットの構成 」を参照してください。
データ・バケットとメトリック・バケットは、同じリージョンまたは IBM Cloud Logs インスタンスとは異なるリージョンに構成できます。 バケットと IBM Cloud Logs インスタンスは、同じアカウント別のアカウント構いません。
高可用性、耐久性、および災害復旧の機能を確保するために、複数の地理的地域にわたってデータを保管およびアクセスするための、 クロス・リージョン 回復力を備えたバケットを作成する必要があります。 IBM Cloud Object Storage バケットの作成と変更 参照。
データ・バケットとメトリクス・バケットを同じバケットに設定できます。 しかし、次のような提言もある:
本番環境では、データ用とメトリクス用のバケットを使い分ける。
ログとメトリクスで異なるデータ保持要件がある場合は、ログとメトリクスに別々のバケットを使用します。
あなたはバケットとバケットにアップロードされるデータに対して責任を負います。 バケツにいつまでデータを保存するかを決める。
-
コンプライアンス、企業、業界の要件は、データの保存期間を定義するための重要なインプットである。
-
IBM Cloud Object Storage では、タグを含むオブジェクト・ライフサイクル・ポリシーを設定して、バケットからファイルを自動的に削除することができます。
削除されたデータは照会できなくなります。 削除する前に、クエリーやプロセスで削除したデータが必要なくなったことを確認してください。
メトリクス・データとログ・データで異なるオブジェクト・ライフサイクル期間を使用するには、異なるバケットを使用してログ・データとメトリクス・データを別々に処理し、ライフサイクル・ポリシーを適切に構成する必要があります。
異なるデータパイプラインを通して取り込まれたログデータに異なるライフサイクル期間を使用するには、 IBM Cloud Logs、タグでフィルタリングするライフサイクルポリシーでアーカイブ保持タグを適切に設定する必要があります。
IBM Cloud Object Storage に保存されたデータはすべて、ランダムに生成されたキーを使って自動的に暗号化されるが、ワークロードによっては、 IBM® Key Protect for IBM Cloud® のような鍵管理システム(KMS)によって、キーのローテーション、削除、その他の制御が可能であることが求められる。 静止時のデータは、プロバイダー側の自動的なAES(Advanced Encryption Standard)256ビット暗号化とSHA(Secure Hash Algorithm)256ハッシュで暗号化される。 移動中のデータは、内蔵のキャリアグレードのトランスポート・レイヤー・セキュリティ/セキュア・ソケット・レイヤー( TLS / SSL )またはAES暗号化付き SNMPv3 を使用して保護されます。 暗号化をもっとコントロールしたいのであれば、 IBM® Key Protect for IBM Cloud® を利用して、生成されたキーや "bring your own "キーイングを管理することができる。 詳しくは でバケットを暗号化する。 IBM® Key Protect for IBM Cloud® と キープロテクトCOS統合 を参照のこと。
データバケットに格納されるデータには、 優先順位の洞察、 分析とアラート、 保管および検索 のデータなど、すべてのTCOデータパイプラインのデータが含まれる。 データをお客様暗号化のみで保護する必要がある場合、 TCOポリシーは 分析とアラート または 保管および検索 データパイプラインを通してのみデータを処理するように構成する必要がある。 詳細については、 TCOオプティマイザの設定を 参照してください。
IBM Cloud Object Storage サービスは、 IBM Cloud Logs とは別に請求されます。 IBM Cloud Object Storage ストレージ費用は、 IBM Cloud Object Storage インスタンスに選択した 料金プランによって決定されます。
IBM Cloud Logs IBM Cloud Logs はログとメトリクス・バケットに削除パーミッションが必要なため、 保持ポリシー、 オブジェクト・ロック・ポリシー、または パブリック・アクセスを有効にして 構成された バケットをサポートしません。 IBM Cloud Object Storage
IAM Service IBM Cloud Logs と IBM Cloud Object Storage
IBM Cloud Logs と IBM Cloud Object Storage の間で、 IBM Cloud Logs がバケットにデータを読み書きできるように、サービス間( S2S )の認可を定義する必要があります。
詳しくは、以下を参照してください。
データ・バケット
IBM Cloud Logs インスタンスにデータバケットを設定することができます。 詳しくは、 データ・バケットの構成 を参照してください。
-
データ・バケットは、必要な期間、ログを保存し、保持します。
-
規制やコンプライアンスの要件がある場合は、バケットを作成できる場所を確認してください。 パフォーマンスが重要な場合は、 IBM Cloud Logs インスタンスがプロビジョニングされるのと同じリージョンにバケットを作成することを検討する。
-
ダイレクトエンドポイントをバケットエンドポイントとして設定する必要があります。
ダイレクトエンドポイントは、VPC内のリソースから発信されるリクエストに使用されます。 ダイレクトエンドポイントは、パブリックエンドポイントよりも優れたパフォーマンスを提供し、トラフィックが地域をまたいだりデータセンターをまたいだりする場合でも、送受信帯域幅の料金は発生しない。 詳細は、「 エンドポイント・タイプ 」を参照。
-
データ・バケットの保守は、お客様の責任で行っていただきます。 IBM Cloud Logs では、 IBM Cloud Object Storage オブジェクトタグを使って、バケツ内のログデータを自動的に管理することができます。 詳細については、 データバケットからファイルを削除するを 参照してください。
データバケットにアップロードされたファイル
ログは以下のような構造のパーケットファイルとして保存される:
cx/parquet/v1/team_id=<TEAM>/dt=<DT>/hr=<HR>/UUID.parquet
メタデータは、この構造を持つマニフェストファイルに保存されます:
cx/parquet/v1/_manifest/team_id=<TEAM>/dt=<DT>/hr=<HR>/_manifest/UUID.manifest
以下に例を示します。
cx/parquet/v1/team_id=58/dt=2024-12-18/hr=14/_manifest/df7bda51-9a1a-4c67-9f4d-b17f93ec4fd1.manifest
cx/parquet/v1/team_id=58/dt=2024-12-18/hr=14/710bb5f8-0cfc-4706-8aec-27ec7d993af8.parquet
データバケットからファイルを削除する
IBM Cloud Object Storage では、バケットの有効期限ルール(ライフサイクルポリシー)を定義することができます。 有効期限ルールは、定義された期間 (オブジェクト作成日からの期間) の経過後にオブジェクトを削除します。 各バケットの有効期限ルールは、24 時間ごとに 1 回評価されます。 オブジェクトの期限日付に基づいて期限切れに適格であると判定されたオブジェクトは、削除のためにキューに入れられます。 有効期限が切れたオブジェクトの削除は翌日に始まり、通常は 24 時間未満で完了します。
- オブジェクト接頭辞、オブジェクトタグ、オブジェクトサイズなど、1 つ以上のフィルタを使用して、ルールの範囲を制限できる期限切れルールを構成できます。
- タグをフィルタオプションとして使用し、一致するタグを含むオブジェクトに期限切れルールを適用することができます。 タグフィルターは、キー文字列と値文字列を指定するコンテナとして提供される。 キー文字列は128文字以下でなければならない。
- プレフィックス、タグ、オブジェクトサイズが設定されていない場合、ポリシーはバケツ内のすべてのオブジェクトに適用されます。
詳細については、 期限切れルールによる古いデータの削除を 参照してください。
IBM Cloud Object Storage では、オブジェクトの作成日からの日数に基づいて、オブジェクトファイルの削除を自動的に管理するための期限切れルール(ライフサイクルポリシー)を設定することができます。 しかし、データバケットに検索用として保存されるデータをより細かく管理し、データの保存期間を使い分けることで自動的にファイルを削除したい場合は、 IBM Cloud Object Storage で、オブジェクトタグ ICL_ARCHIVE_RETENTION を使って範囲を限定する有効期限ルールを設定し、 IBM Cloud Logs インスタンスで定義したタグの値を使用する必要があります。
アーカイブ保持タグを使用するには、以下の手順を完了する必要があります:
-
IBM Cloud Logs で、 IBM Cloud Object Storage オブジェクトタグを設定し、データバケット内のログデータが検索可能な期間を自動的に管理する。
- IBM Cloud Logs インスタンスでアーカイブ保持タグを構成し、有効にする必要があります。 詳細については、 データ保持を管理するためのアーカイブ保持タグの設定を 参照してください。
- 最大3つのカスタムオブジェクトタグを定義でき、それを使ってログデータの3つの異なる有効期限を定義できます。
defaultタグを使用すると、カスタム・オブジェクト・タグで明示的に管理されていない データに適用できるデフォルトの有効期限を定義できます。
アーカイブ保存タグを有効にすると、データバケット内のすべてのファイルにカスタムタグ
ICL_ARCHIVE_RETENTIONが付けられます。 タグの値は、カスタムタグの値、またはdefaultに設定される。 この操作は元に戻せません。 保持タグは、一度有効にすると無効にすることはできません。 -
IBM Cloud Object Storage データバケットライフサイクルポリシーセクションで、デフォルトを含む各タグの有効期限ルールを設定します。
キー
ICL_ARCHIVE_RETENTIONを使用する。値の文字列は256文字以下でなければならない。 例えば、
high、medium、lowのような値を使うことができます。IBM Cloud Logs で設定したタグ名が、バケツの有効期限ポリシーで設定したタグ値と一致していることを確認してください。 タグの値は大文字と小文字を区別する。
-
IBM Cloud Logs では、1 つ以上の TCO ポリシーを構成し、ポリシーで選択されたデータで使用するオブジェ クトタグを定義する。 タグが設定されていない場合、
defaultタグが使用される。ログデータバケットに送られたデータは、オブジェクトファイルにアップロードされる。 各ファイルには、1つのオブジェクト・タグ
ICL_ARCHIVE_RETENTIONと値がある。 詳しくは 保持タグを 参照。
アーカイブ保持タグは、 IBM Cloud Logs インスタンスで定義・有効化された後、データバケットにアップロードされるオブジェクトファイルに付けられます。
データ・バケットの制限
ストレージ・クラス
IBM Cloud Object Storage buckets used by IBM Cloud Logs as data buckets can be configured only with the following ストレージクラス:
- Smart Tier
- Standard
以下のストレージクラスはIBM Cloud Logsではデータバケットとしてサポートされていません:
- ボールト
- Cold Vault
アーカイブ・ルール
IBM Cloud Object Storageでは、定義された期間が過ぎると自動的にオブジェクトをアーカイブするバケツの アーカイブルール を定義することができます。 アーカイブされたオブジェクトは、通常のオブジェクトよりもコストは低いが、再度読み込む前にリストアする必要がある。
IBM Cloud Logsアーカイブされたオブジェクトを読み取ることができません。IBM Cloud Logs すべてのログビュー でアーカイブオブジェクトを検索したり、アーカイブクエリ でクエリを実行すると、エラーメッセージが返されます。
IBM Cloud Object StorageバケットをIBM Cloud Logsデータバケットとして使用する場合、オブジェクトを即座にアーカイブしたり、オブジェクトを数時間以内にアーカイブするようなアーカイブルールを定義してはならない。
ある期間(例えば1ヶ月)より古いログを検索する必要がない場合、検索に必要な期間より古いオブジェクトをアーカイブするIBM Cloud Object Storageアーカイブルールを定義することができます。 7日未満のアーカイブは設定しないでください。
検索する必要のないデータをアーカイブすることで、コストを抑えてログデータを保持することができる。 必要であれば、将来IBM Cloud Logsを使用してデータを検索する必要がある場合に、アーカイブされたオブジェクトをリストア することができます。
読み取りアクティビティの追跡イベントの成功
IBM Cloud Activity Tracker Event Routing IBM Cloud Logs インスタンスによって開始された イベントは必要ないため、削除されます。 cloud-object-storage.object.read IBM Cloud Logs のアクティビティに関連するアクティビティ追跡イベントを確認する際、 cloud-object-storage.object.read の成功したイベントは表示されません。
メトリクス・バケット
IBM Cloud Logs インスタンスに対してメトリック・バケットを構成できます。 詳しくは、 メトリック・バケットの構成 を参照してください。
-
メトリック・バケットは、イベントからのメトリックを長期索引に保管し、必要な期間保持します。
メトリックを有効にすると、ログからメトリックを生成できます。 これらのメトリックは、メトリック・バケットに Prometheus 索引ブロックとして保管されます。
-
規制やコンプライアンスの要件がある場合は、バケットを作成できる場所を確認してください。 パフォーマンスが重要な場合は、 IBM Cloud Logs インスタンスがプロビジョニングされるのと同じリージョンにバケットを作成することを検討する。
-
ダイレクトエンドポイントをバケットエンドポイントとして設定する必要があります。
ダイレクトエンドポイントは、VPC内のリソースを起点とするバケットへのリクエストに使用されます。 ダイレクトエンドポイントは、パブリックエンドポイントよりも優れたパフォーマンスを提供し、トラフィックが地域をまたいだりデータセンターをまたいだりする場合でも、送受信帯域幅の料金は発生しない。 詳細は、「 エンドポイント・タイプ 」を参照。
-
メトリック・バケットの保守は、お客様の責任で行っていただきます。 IBM Cloud Object Storage では、メトリック・バケットのデータを維持するための有効期限ルールを定義できます。 詳細については、 期限切れルールによる古いデータの削除を 参照してください。