2.2. Logging 6.1
コンテキスト:logging-6x-6.1
ClusterLogForwarder
カスタムリソース (CR) は、ログの収集と転送の中心的な設定ポイントです。
2.2.1. 入力と出力 リンクのコピーリンクがクリップボードにコピーされました!
入力では、転送するログのソースを指定します。Logging には、クラスターのさまざまな部分からログを選択するための入力タイプ (application
、receiver
、infrastructure
、audit
) が組み込まれています。namespace または Pod ラベルに基づいてカスタム入力を定義し、ログの選択を微調整することもできます。
出力は、ログが送信される宛先を定義します。各出力タイプには独自の設定オプションセットがあり、動作と認証設定をカスタマイズできます。
2.2.2. レシーバー入力タイプ リンクのコピーリンクがクリップボードにコピーされました!
レシーバー入力タイプにより、Logging システムは外部ソースからのログを受け入れることができます。ログを受信するための 2 つの形式 (http
と syslog
) がサポートされます。
ReceiverSpec
は、レシーバー入力の設定を定義します。
2.2.3. パイプラインとフィルター リンクのコピーリンクがクリップボードにコピーされました!
パイプラインは、入力から出力へのログのフローを決定します。パイプラインは、1 つ以上の入力参照、出力参照、およびオプションのフィルター参照で構成されます。フィルターを使用して、パイプライン内のログメッセージを変換または削除できます。フィルターは順番に適用されるため、フィルターの順序は重要であり、最初の方のフィルターを使用すると、ログメッセージが後のステージに到達するのを防ぐことができます。
2.2.4. Operator の動作 リンクのコピーリンクがクリップボードにコピーされました!
Cluster Logging Operator は、ClusterLogForwarder
リソースの managementState
フィールドに基づき、コレクターのデプロイメントと設定を管理します。
-
Managed
(デフォルト) に設定すると、Operator は仕様で定義された設定に一致するように、ロギングリソースをアクティブに管理します。 -
Unmanaged
に設定すると、Operator はアクションを実行せず、ロギングコンポーネントを手動で管理できます。
2.2.5. 検証 リンクのコピーリンクがクリップボードにコピーされました!
ロギングには、スムーズでエラーのない設定エクスペリエンスを確保するために、広範な検証ルールやデフォルト値が含まれます。ClusterLogForwarder
リソースは、必須フィールド、フィールド間の依存関係、および入力値の形式の検証チェックを強制します。特定のフィールドにはデフォルト値が提供されるため、一般的なシナリオで明示的な設定を行う必要性が軽減されます。
2.2.6. クイックスタート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Logging は 2 つのデータモデルをサポートしています。
- ViaQ (一般提供)
- OpenTelemetry (テクノロジープレビュー)
ClusterLogForwarder
の lokiStack.dataModel
フィールドを設定することにより、要件に基づきこれらのデータモデルのいずれかを選択できます。ViaQ は、ログを LokiStack に転送する際のデフォルトのデータモデルです。
OpenShift Logging の今後のリリースでは、デフォルトのデータモデルが ViaQ から OpenTelemetry に変更されます。
2.2.6.1. ViaQ のクイックスタート リンクのコピーリンクがクリップボードにコピーされました!
デフォルトの ViaQ データモデルを使用するには、次の手順に従います。
前提条件
- クラスター管理者のパーミッション。
手順
- OperatorHub から、Red Hat OpenShift Logging Operator、Loki Operator、Cluster Observability Operator (COO) をインストールします。
openshift-logging
namespace にLokiStack
カスタムリソース (CR) を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記事前に
logging-loki-s3
シークレットが事前に作成されていることを確認します。このシークレットの内容は、使用しているオブジェクトストレージにより異なります。詳細は、シークレットと TLS 設定を参照してください。コレクターのサービスアカウントを作成します。
oc create sa collector -n openshift-logging
$ oc create sa collector -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コレクターのサービスアカウントによる
LokiStack
CR へのデータ書き込みを許可します。oc adm policy add-cluster-role-to-user logging-collector-logs-writer -z collector
$ oc adm policy add-cluster-role-to-user logging-collector-logs-writer -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記ClusterRole
リソースは、Cluster Logging Operato のインストール中に自動的に作成されるため、手動で作成する必要はありません。コレクターのサービスアカウントによるログ収集を許可します。
oc project openshift-logging
$ oc project openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm policy add-cluster-role-to-user collect-application-logs -z collector
$ oc adm policy add-cluster-role-to-user collect-application-logs -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm policy add-cluster-role-to-user collect-audit-logs -z collector
$ oc adm policy add-cluster-role-to-user collect-audit-logs -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z collector
$ oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記この例では、コレクターを 3 つのロール (アプリケーション、インフラストラクチャー、監査) すべてにバインドしますが、デフォルトでは、アプリケーションログとインフラストラクチャーログのみが収集されます。監査ログを収集するには、
ClusterLogForwarder
設定を更新して監査ログを含めます。環境に必要な特定のログタイプに基づきロールを割り当てます。Observe タブの Log セクションを有効にするには、
UIPlugin
CR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ログ転送を設定するには、
ClusterLogForwarder
CR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記dataModel
フィールドはオプションであり、デフォルトでは未設定 (dataModel: ""
) になっています。これにより、Cluster Logging Operator (CLO) はデータモデルを自動的に選択できるようになります。現在、このフィールドが設定されていない場合の CLO はデフォルトで ViaQ モデルになりますが、これは今後のリリースで変更される予定です。dataModel: ViaQ
を指定すると、デフォルトが変更されても設定の互換性が維持されます。
検証
- OpenShift Web コンソールの Observe タブの Log セクションにログが表示されていることを確認します。
2.2.6.2. OpenTelemetry のクイックスタート リンクのコピーリンクがクリップボードにコピーされました!
OpenTelemetry Protocol (OTLP) 出力ログフォワーダーは、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
OTLP 取り込みを設定し、OpenTelemetry データモデルを有効にするには、次の手順を実行します。
前提条件
- クラスター管理者のパーミッション。
手順
- OperatorHub から、Red Hat OpenShift Logging Operator、Loki Operator、Cluster Observability Operator (COO) をインストールします。
openshift-logging
namespace にLokiStack
カスタムリソース (CR) を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記事前に
logging-loki-s3
シークレットが事前に作成されていることを確認します。このシークレットの内容は、使用しているオブジェクトストレージにより異なります。詳細は、「シークレットと TLS 設定」を参照してください。コレクターのサービスアカウントを作成します。
oc create sa collector -n openshift-logging
$ oc create sa collector -n openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コレクターのサービスアカウントによる
LokiStack
CR へのデータ書き込みを許可します。oc adm policy add-cluster-role-to-user logging-collector-logs-writer -z collector
$ oc adm policy add-cluster-role-to-user logging-collector-logs-writer -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記ClusterRole
リソースは、Cluster Logging Operato のインストール中に自動的に作成されるため、手動で作成する必要はありません。コレクターのサービスアカウントによるログ収集を許可します。
oc project openshift-logging
$ oc project openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm policy add-cluster-role-to-user collect-application-logs -z collector
$ oc adm policy add-cluster-role-to-user collect-application-logs -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm policy add-cluster-role-to-user collect-audit-logs -z collector
$ oc adm policy add-cluster-role-to-user collect-audit-logs -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z collector
$ oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z collector
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記この例では、コレクターを 3 つのロール (アプリケーション、インフラストラクチャー、監査) すべてにバインドします。デフォルトでは、アプリケーションログとインフラストラクチャーログのみが収集されます。監査ログを収集するには、
ClusterLogForwarder
設定を更新して監査ログを含めます。環境に必要な特定のログタイプに基づきロールを割り当てます。Observe タブの Log セクションを有効にするには、
UIPlugin
CR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ログ転送を設定するには、
ClusterLogForwarder
CR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記dataModel
がOtel
の場合、lokiStack.labelKeys
は使用できません。dataModel
がOtel
の場合に同様の機能を得るには、「OTLP データ取り込み用の LokiStack 設定」を参照してください。
検証
-
OpenShift Web コンソールで Observe
OpenShift Logging LokiStack Writes に移動し、Distributor - Structured Metadata を確認して、OTLP が正常に機能していることを確認します。