1.4. ClusterLogForwarder의 구조
CLF에는 다음과 같은 주요 구성 요소가 포함된 spec 섹션이 있습니다.
- 입력
-
전달할 로그 메시지를 선택합니다. 기본 입력 유형
애플리케이션,인프라및감사는 클러스터의 다른 부분에서 로그를 전달합니다. 사용자 지정 입력을 정의할 수도 있습니다. - 출력
- 로그를 전달할 대상을 정의합니다. 각 출력에는 고유한 이름과 유형별 구성이 있습니다.
- 파이프라인
- 입력에서 필터를 통해 출력으로 가져오는 경로 로그를 정의합니다. 파이프라인에는 고유한 이름이 있으며 입력, 출력 및 필터 이름 목록으로 구성됩니다.
- 필터
- 파이프라인에서 로그 메시지를 변환하거나 삭제합니다. 사용자는 특정 로그 필드와 일치하는 필터를 정의하고 메시지를 삭제하거나 수정할 수 있습니다. 필터는 파이프라인에 지정된 순서로 적용됩니다.
1.4.1. 입력 링크 복사링크가 클립보드에 복사되었습니다!
입력은 spec.inputs 의 배열에 구성됩니다. 세 가지 기본 제공 입력 유형이 있습니다.
- 애플리케이션
- 인프라 네임스페이스를 제외한 모든 애플리케이션 컨테이너에서 로그를 선택합니다.
- 인프라
노드 및 다음 네임스페이스에서 실행되는 인프라 구성 요소에서 로그를 선택합니다.
-
default -
kube -
openshift -
kube-또는openshift-접두사 포함
-
- audit
- auditd에서 OpenShift API 서버 감사 로그, Kubernetes API 서버 감사 로그, ovn 감사 로그 및 노드 감사 로그에서 로그를 선택합니다.
사용자는 특정 네임스페이스에서 로그를 선택하거나 Pod 레이블을 사용하는 유형 애플리케이션 의 사용자 정의 입력을 정의할 수 있습니다.
1.4.2. 출력 링크 복사링크가 클립보드에 복사되었습니다!
출력은 spec.outputs 아래의 배열에 구성됩니다. 각 출력에는 고유한 이름과 유형이 있어야 합니다. 지원되는 유형은 다음과 같습니다.
- azureMonitor
- Azure Monitor로 로그를 전달합니다.
- CloudMonitor
- AWS CloudMonitor로 로그를 전달합니다.
- googleCloudLogging
- Google Cloud Logging으로 로그를 전달합니다.
- http
- 일반 HTTP 끝점으로 로그를 전달합니다.
- kafka
- Kafka 브로커로 로그를 전달합니다.
- Loki
- 로그를 Loki 로깅 백엔드로 전달합니다.
- lokistack
- OpenShift Container Platform 인증 통합을 사용하여 Loki 및 웹 프록시의 로깅 지원 조합으로 로그를 전달합니다. LokiStack의 프록시는 OpenShift Container Platform 인증을 사용하여 멀티 테넌시를 강제 적용합니다.
- otlp
- OpenTelemetry 프로토콜을 사용하여 로그를 전달합니다.
- splunk
- Splunk로 로그를 전달합니다.
- syslog
- 로그를 외부 syslog 서버로 전달합니다.
각 출력 유형에는 고유한 구성 필드가 있습니다.
1.4.3. 파이프라인 링크 복사링크가 클립보드에 복사되었습니다!
파이프라인은 spec.pipelines 의 배열에 구성됩니다. 각 파이프라인에는 고유한 이름이 있어야 하며 다음으로 구성됩니다.
- inputRefs
- 로그가 이 파이프라인으로 전달되어야 하는 입력의 이름입니다.
- outputRefs
- 로그를 전송할 출력의 이름입니다.
- filterRefs
- (선택 사항) 적용할 필터 이름입니다.
filterRefs 순서가 순차적으로 적용되므로 중요합니다. 이전 필터는 이후 필터에서 처리되지 않는 메시지를 삭제할 수 있습니다.
1.4.4. 필터 링크 복사링크가 클립보드에 복사되었습니다!
필터는 spec.filters 아래의 배열에 구성됩니다. 구조화된 필드의 값을 기반으로 들어오는 로그 메시지를 일치시키고 수정하거나 삭제할 수 있습니다.