第1章 ログ転送の設定


ClusterLogForwarder (CLF) を使用すると、ユーザーはさまざまな宛先へのログの転送を設定できます。さまざまなソースからログメッセージを選択し、それらを変換またはフィルタリングできるパイプラインを介して送信して、1 つ以上の出力に転送する柔軟な方法を提供します。

ClusterLogForwarder の主な機能

  • 入力を使用してログメッセージを選択する
  • 出力を使用してログを外部の宛先に転送する
  • フィルターを使用してログメッセージをフィルタリング、変換、および破棄する
  • 入力、フィルター、出力を接続するログ転送パイプラインを定義する

1.1. ログ収集のセットアップ

このリリースの Cluster Logging では、管理者が ClusterLogForwarder に関連付けられたサービスアカウントにログ収集権限を明示的に付与する必要があります。これは、ClusterLogging およびオプションで ClusterLogForwarder.logging.openshift.io リソースで構成されるレガシーロギングシナリオでは、以前のリリースでは必要ありませんでした。

Red Hat OpenShift Logging Operator は、collect-audit-logscollect-application-logscollect-infrastructure-logs クラスターロールを提供します。これにより、コレクターは監査ログ、アプリケーションログ、およびインフラストラクチャーログをそれぞれ収集できます。

必要なクラスターロールをサービスアカウントにバインドして、ログ収集をセットアップします。

1.1.1. レガシーサービスアカウント

既存のレガシーサービスアカウント logcollector を使用するには、次の ClusterRoleBinding を作成します。

$ oc adm policy add-cluster-role-to-user collect-application-logs system:serviceaccount:openshift-logging:logcollector
Copy to Clipboard Toggle word wrap
$ oc adm policy add-cluster-role-to-user collect-infrastructure-logs system:serviceaccount:openshift-logging:logcollector
Copy to Clipboard Toggle word wrap

さらに、監査ログを収集する場合は、次の ClusterRoleBinding を作成します。

$ oc adm policy add-cluster-role-to-user collect-audit-logs system:serviceaccount:openshift-logging:logcollector
Copy to Clipboard Toggle word wrap

1.1.2. サービスアカウントの作成

前提条件

  • Red Hat OpenShift Logging Operator が openshift-logging namespace にインストールされている。
  • 管理者権限がある。

手順

  1. コレクターのサービスアカウントを作成します。認証にトークンを必要とするストレージにログを書き込む場合は、サービスアカウントにトークンを含める必要があります。
  2. 適切なクラスターロールをサービスアカウントにバインドします。

    バインドコマンドの例

    $ oc adm policy add-cluster-role-to-user <cluster_role_name> system:serviceaccount:<namespace_name>:<service_account_name>
    Copy to Clipboard Toggle word wrap

1.1.2.1. サービスアカウントのクラスターロールバインディング

role_binding.yaml ファイルは、ClusterLogging Operator の ClusterRole を特定の ServiceAccount にバインドし、クラスター全体で Kubernetes リソースを管理できるようにします。

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: manager-rolebinding
roleRef:                                           
1

  apiGroup: rbac.authorization.k8s.io              
2

  kind: ClusterRole                                
3

  name: cluster-logging-operator                   
4

subjects:                                          
5

  - kind: ServiceAccount                           
6

    name: cluster-logging-operator                 
7

    namespace: openshift-logging                   
8
Copy to Clipboard Toggle word wrap
1
roleRef: バインディングが適用される ClusterRole を参照します。
2
apiGroup: RBAC API グループを示し、ClusterRole が Kubernetes の RBAC システムの一部であることを指定します。
3
kind: 参照されるロールがクラスター全体に適用される ClusterRole であることを指定します。
4
name: ServiceAccount にバインドされる ClusterRole の名前 (ここでは cluster-logging-operator)。
5
subjects: ClusterRole から権限が付与されるエンティティー (ユーザーまたはサービスアカウント) を定義します。
6
kind: サブジェクトが ServiceAccount であることを指定します。
7
Name: 権限が付与される ServiceAccount の名前。
8
namespace: ServiceAccount が配置されている namespace を示します。

1.1.2.2. アプリケーションログの書き込み

write-application-logs-clusterrole.yaml ファイルは、Loki ロギングアプリケーションにアプリケーションログを書き込む権限を付与する ClusterRole を定義します。

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: cluster-logging-write-application-logs
rules:                                              
1

  - apiGroups:                                      
2

      - loki.grafana.com                            
3

    resources:                                      
4

      - application                                 
5

    resourceNames:                                  
6

      - logs                                        
7

    verbs:                                          
8

      - create                                      
9
Copy to Clipboard Toggle word wrap
1
rules: この ClusterRole によって付与される権限を指定します。
2
apiGroups: Loki ロギングシステムに関連する API グループ loki.grafana.com を参照します。
3
loki.grafana.com: Loki 関連のリソースを管理するための API グループ。
4
resources: この ClusterRole がやり取りする権限を付与するリソースタイプ。
5
application: Loki ロギングシステム内のアプリケーションリソースを参照します。
6
resourceNames: このロールが管理できるリソースの名前を指定します。
7
logs: 作成できるログリソースを参照します。
8
verbs: リソースで許可されるアクション。
9
create: Loki システムに新しいログを作成する権限を付与します。

1.1.2.3. 監査ログの書き込み

write-audit-logs-clusterrole.yaml ファイルは、Loki ロギングシステムに監査ログを作成する権限を付与する ClusterRole を定義します。

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: cluster-logging-write-audit-logs
rules:                                              
1

  - apiGroups:                                      
2

      - loki.grafana.com                            
3

    resources:                                      
4

      - audit                                       
5

    resourceNames:                                  
6

      - logs                                        
7

    verbs:                                          
8

      - create                                      
9
Copy to Clipboard Toggle word wrap
1
rules: この ClusterRole によって付与される権限を定義します。
2
apiGroups: API グループ loki.grafana.com を指定します。
3
loki.grafana.com: Loki ロギングリソースを管理する API グループ。
4
resources: このロールが管理するリソースタイプ (この場合は audit) を指します。
5
audit: ロールが Loki 内の監査ログを管理することを指定します。
6
resourceNames: ロールがアクセスできる特定のリソースを定義します。
7
logs: このロールで管理できるログを指します。
8
verbs: リソースで許可されるアクション。
9
create: 新しい監査ログを作成する権限を付与します。

1.1.2.4. インフラストラクチャーログの書き込み

write-infrastructure-logs-clusterrole.yaml ファイルは、Loki ロギングシステムにインフラストラクチャーログを作成する権限を付与する ClusterRole を定義します。

YAML 例

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: cluster-logging-write-infrastructure-logs
rules:                                              
1

  - apiGroups:                                      
2

      - loki.grafana.com                            
3

    resources:                                      
4

      - infrastructure                              
5

    resourceNames:                                  
6

      - logs                                        
7

    verbs:                                          
8

      - create                                      
9
Copy to Clipboard Toggle word wrap

1
ルール: この ClusterRole が付与する権限を指定します。
2
apiGroups: Loki 関連リソースの API グループを指定します。
3
loki.grafana.com: Loki ロギングシステムを管理する API グループ。
4
resources: このロールが対話できるリソースタイプを定義します。
5
infrastructure: このロールが管理するインフラストラクチャー関連のリソースを指します。
6
resourceNames: このロールが管理できるリソースの名前を指定します。
7
logs: インフラストラクチャーに関連するログリソースを指します。
8
verbs: このロールによって許可されるアクションです。
9
create: Loki システムにインフラストラクチャーログを作成する権限を付与します。

1.1.2.5. ClusterLogForwarder 編集者ロール

clusterlogforwarder-editor-role.yaml ファイルは、ユーザーが OpenShift で ClusterLogForwarders を管理できるようにする ClusterRole を定義します。

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: clusterlogforwarder-editor-role
rules:                                              
1

  - apiGroups:                                      
2

      - observability.openshift.io                  
3

    resources:                                      
4

      - clusterlogforwarders                        
5

    verbs:                                          
6

      - create                                      
7

      - delete                                      
8

      - get                                         
9

      - list                                        
10

      - patch                                       
11

      - update                                      
12

      - watch                                       
13
Copy to Clipboard Toggle word wrap
1
ルール: この ClusterRole が付与する権限を指定します。
2
apiGroups: OpenShift 固有の API グループを指します。
3
obervability.openshift.io: ロギングなどの可観測性リソースを管理するための API グループ。
4
resources: このロールが管理できるリソースを指定します。
5
clusterlogforwarders: OpenShift のログ転送リソースを指します。
6
verbs: ClusterLogForwarders で許可されるアクションを指定します。
7
create: 新しい ClusterLogForwarders を作成する権限を付与します。
8
delete: 既存の ClusterLogForwarders を削除する権限を付与します。
9
get: 特定の ClusterLogForwarders に関する情報を取得する権限を付与します。
10
list: すべての ClusterLogForwarders のリスト表示を許可します。
11
patch: ClusterLogForwarders を部分的に変更する権限を付与します。
12
update: 既存の ClusterLogForwarders を更新する権限を付与します。
13
watch: ClusterLogForwarders への変更を監視する権限を付与します。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat