1장. 로그 전달 구성


ClusterLogForwarder (CLF)를 사용하면 사용자가 다양한 대상으로 로그 전달을 구성할 수 있습니다. 다른 소스의 로그 메시지를 선택하고, 변환하거나 필터링할 수 있는 파이프라인을 통해 보내고, 하나 이상의 출력으로 전달할 수 있는 유연한 방법을 제공합니다.

ClusterLogForwarder의 주요 기능

  • 입력을 사용하여 로그 메시지 선택
  • 출력을 사용하여 외부 대상으로 로그를 전달
  • 필터를 사용하여 로그 메시지를 필터링, 변환 및 삭제
  • 입력, 필터 및 출력을 연결하는 로그 전달 파이프라인을 정의합니다.

1.1. 로그 컬렉션 설정

이 클러스터 로깅 릴리스에서는 관리자가 ClusterLogForwarder 와 연결된 서비스 계정에 로그 수집 권한을 명시적으로 부여해야 합니다. 이는 ClusterLogging 리소스 및 ClusterLogForwarder.logging.openshift.io 리소스로 구성된 레거시 로깅 시나리오에 대한 이전 릴리스에서는 필요하지 않았습니다.

Red Hat OpenShift Logging Operator는 collect-audit-logs,collect-application-logs, collect-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 네임스페이스에 설치됩니다.
  • 관리자 권한이 있습니다.

프로세스

  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
제목: ClusterRole에서 권한을 부여하는 엔터티(사용자 또는 서비스 계정)를 정의합니다.
6
kind: subject가 ServiceAccount임을 지정합니다.
7
name: 권한이 부여된 ServiceAccount의 이름입니다.
8
namespace: ServiceAccount가 있는 네임스페이스를 나타냅니다.

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
로그: 생성할 수 있는 로그 리소스를 참조합니다.
8
동사: 리소스에서 허용되는 작업입니다.
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: loki.grafana.com API 그룹을 지정합니다.
3
Loki.grafana.com: Loki 로깅 리소스를 담당하는 API 그룹입니다.
4
resources: 이 역할이 관리하는 리소스 유형을 나타냅니다(이 경우 audit).
5
audit: 역할이 Loki 내에서 감사 로그를 관리하도록 지정합니다.
6
resourceNames: 역할이 액세스할 수 있는 특정 리소스를 정의합니다.
7
logs: 이 역할에서 관리할 수 있는 로그를 참조합니다.
8
동사: 리소스에서 허용되는 작업입니다.
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
rules: 이 ClusterRole에서 부여하는 권한을 지정합니다.
2
apiGroups: Loki 관련 리소스의 API 그룹을 지정합니다.
3
Loki.grafana.com: Loki 로깅 시스템을 관리하는 API 그룹입니다.
4
리소스: 이 역할이 상호 작용할 수 있는 리소스 유형을 정의합니다.
5
인프라: 이 역할이 관리하는 인프라 관련 리소스를 나타냅니다.
6
resourceNames: 이 역할이 관리할 수 있는 리소스의 이름을 지정합니다.
7
로그: 인프라와 관련된 로그 리소스를 참조합니다.
8
동사: 이 역할에서 허용하는 작업입니다.
9
생성: Loki 시스템에서 인프라 로그를 생성할 수 있는 권한을 부여합니다.

1.1.2.5. ClusterLogForwarder 편집기 역할

clusterlogforwarder-editor-role.yaml 파일은 사용자가 OpenShift에서 ClusterLogForwarder를 관리할 수 있는 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
rules: 이 ClusterRole에서 부여하는 권한을 지정합니다.
2
apiGroups: OpenShift 관련 API 그룹을 참조합니다.
3
observability.openshift.io: 로깅과 같은 관찰 기능 리소스를 관리하는 API 그룹입니다.
4
resources: 이 역할이 관리할 수 있는 리소스를 지정합니다.
5
clusterlogforwarders: OpenShift의 로그 전달 리소스를 참조합니다.
6
verbs: ClusterLogForwarders에 허용되는 작업을 지정합니다.
7
생성: 새 ClusterLogForwarder를 생성할 수 있는 권한을 부여합니다.
8
delete: 기존 ClusterLogForwarder를 삭제할 수 있는 권한을 부여합니다.
9
get: 특정 ClusterLogForwarder에 대한 정보를 검색할 수 있는 권한을 부여합니다.
10
list: 모든 ClusterLogForwarder를 나열할 수 있습니다.
11
patch: ClusterLogForwarder를 부분적으로 수정할 수 있는 권한을 부여합니다.
12
update: 기존 ClusterLogForwarder를 업데이트할 수 있는 권한을 부여합니다.
13
watch: ClusterLogForwarder의 변경 사항을 모니터링할 수 있는 권한을 부여합니다.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동