This documentation is for a release that is no longer maintained
See documentation for the latest supported version.第2章 OpenShift Container Platform に Developer Hub 用監査ログの設定
OpenShift Container Platform Web コンソールを使用して、Developer Hub の監査ログを使用するように次の OpenShift Container Platform ロギングコンポーネントを設定します。
- ロギングのデプロイメント
- 各ロギングコンポーネントの CPU とメモリーの制限を含むロギング環境を設定します。詳細は、Red Hat OpenShift Container Platform - ロギングデプロイメントの設定 を参照してください。
- ロギングコレクター
-
ClusterLoggingカスタムリソース (CR) のspec.collectionスタンザを設定して、サポートされているログコレクターの変更を使用し、STDOUTからログを収集します。詳細は、Red Hat OpenShift Container Platform - ログコレクターの設定 を参照してください。 - ログ転送
-
ClusterLogForwarderCR で出力とパイプラインの組み合わせを指定して、OpenShift Container Platform クラスター内外の特定のエンドポイントにログを送信します。詳細は、Red Hat OpenShift Container Platform - JSON ログ転送の有効化 および Red Hat OpenShift Container Platform - ログ転送の設定 を参照してください。
2.1. Red Hat Developer Hub 監査ログを Splunk に転送 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Logging (OpenShift Logging) Operator と ClusterLogForwarder インスタンスを使用して、Developer Hub インスタンスからストリーミングされた監査ログをキャプチャーし、Splunk インスタンスに関連付けられた HTTPS エンドポイントに転送できます。
前提条件
- サポートされている OpenShift Container Platform バージョンでクラスターが実行している。
-
cluster-admin権限を持つアカウントがある。 - Splunk Cloud アカウントまたは Splunk Enterprise インストールをもっている。
手順
- OpenShift Container Platform クラスターにログインします。
OpenShift Logging Operator を
openshift-loggingnamespace にインストールし、namespace に切り替えます。namespace に切り替えるコマンドの例
oc project openshift-logging
oc project openshift-loggingCopy to Clipboard Copied! Toggle word wrap Toggle overflow log-collectorという名前のserviceAccountを作成し、collect-application-logsロールをserviceAccountにバインドします。serviceAccountを作成するためのコマンド例oc create sa log-collector
oc create sa log-collectorCopy to Clipboard Copied! Toggle word wrap Toggle overflow ロールを
serviceAccountにバインドするコマンドの例oc create clusterrolebinding log-collector --clusterrole=collect-application-logs --serviceaccount=openshift-logging:log-collector
oc create clusterrolebinding log-collector --clusterrole=collect-application-logs --serviceaccount=openshift-logging:log-collectorCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
Splunk インスタンスで
hecTokenを生成します。 openshift-loggingnamespace にキー/値シークレットを作成し、そのシークレットを検証します。hecTokenを使用してキー/値シークレットを作成するコマンドの例oc -n openshift-logging create secret generic splunk-secret --from-literal=hecToken=<HEC_Token>
oc -n openshift-logging create secret generic splunk-secret --from-literal=hecToken=<HEC_Token>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 秘密を検証するコマンドの例
oc -n openshift-logging get secret/splunk-secret -o yaml
oc -n openshift-logging get secret/splunk-secret -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のように、基本的な `ClusterLogForwarder` リソース YAML ファイルを作成します。
`ClusterLogForwarder` リソースの YAML ファイルの例
apiVersion: logging.openshift.io/v1 kind: ClusterLogForwarder metadata: name: instance namespace: openshift-logging
apiVersion: logging.openshift.io/v1 kind: ClusterLogForwarder metadata: name: instance namespace: openshift-loggingCopy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、ログフォワーダーの作成 を参照してください。
OpenShift Web コンソールまたは OpenShift CLI を使用して、次の
ClusterLogForwarder設定を定義します。YAML ファイルで、
log-collectorをserviceAccountとして指定します。serviceAccount設定例serviceAccount: name: log-collector
serviceAccount: name: log-collectorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 転送するログの種類とソースを指定するには、
inputsを設定します。次の設定により、フォワーダーは指定された namespace 内のすべてのアプリケーションからログをキャプチャーできるようになります。inputs設定の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、特定の Pod からのアプリケーションログの転送 を参照してください。
出力を設定して、キャプチャーされたログの送信先を指定します。このステップでは、
splunkタイプに焦点を当てます。Splunk エンドポイントが自己署名 TLS 証明書を使用する場合はtls.insecureSkipVerifyオプションを使用するか (非推奨)、Secret を使用して証明書チェーンを提供できます。outputs設定の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、OpenShift Container Platform ドキュメントの Splunk へのログの転送 を参照してください。
オプション: 監査ログのみを含めるようにログをフィルタリングします。
filters設定例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は、OpenShift Container Platform ドキュメントの コンテンツによるログのフィルタリング を参照してください。
特定の入力から指定された出力にログをルーティングするようにパイプラインを設定します。定義された入力と出力の名前を使用して、各パイプラインで複数の
inputRefsとoutputRefsを指定します。pipelines設定の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ClusterLogForwarder設定を適用するには、次のコマンドを実行します。ClusterLogForwarder設定を適用するコマンドの例oc apply -f <ClusterLogForwarder-configuration.yaml>
oc apply -f <ClusterLogForwarder-configuration.yaml>Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: ログ損失のリスクを軽減するには、次のオプションを使用して
ClusterLogForwarderPod を設定します。ログコレクターのリソース要求と制限を次のように定義します。
collector設定の例Copy to Clipboard Copied! Toggle word wrap Toggle overflow delivery、compression、RetryDurationなど、ログ配信のtuningオプションを定義します。必要に応じて出力ごとにチューニングを適用できます。tuning設定の例tuning: delivery: AtLeastOnce compression: none minRetryDuration: 1s maxRetryDuration: 10s
tuning: delivery: AtLeastOnce1 compression: none minRetryDuration: 1s maxRetryDuration: 10sCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
AtLeastOnce配信モードとは、ログフォワーダーがクラッシュしたり再起動したりした場合に、クラッシュ前に読み取られたが宛先に送信されなかったログが、再送信されることを意味します。クラッシュ後に一部のログが重複している可能性があります。
検証
- Splunk ダッシュボードでログを表示して、ログが Splunk インスタンスに転送されていることを確認します。
- 必要に応じて、OpenShift Container Platform と Splunk ログを使用して問題をトラブルシューティングします。