3.3. 분산 추적 데이터 수집 구성 및 배포
Red Hat OpenShift distributed tracing data collection Operator는 Red Hat OpenShift distributed tracing 데이터 수집 리소스를 생성하고 배포할 때 사용할 아키텍처 및 구성 설정을 정의하는 CRD(사용자 정의 리소스 정의) 파일을 사용합니다. 기본 구성을 설치하거나 비즈니스 요구 사항에 맞게 파일을 수정할 수 있습니다.
3.3.1. OpenTelemetry 수집기 구성 옵션
Red Hat OpenShift distributed tracing data collection Operator는 기술 프리뷰 기능 전용입니다. Technology Preview 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다. Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.
OpenTelemetry Collector는 Telemetry 데이터에 액세스하는 세 가지 구성 요소로 구성됩니다.
- 수신자 - 기반으로 푸시하거나 가져올 수 있는 수신자는 데이터가 수집기로 들어오는 방법입니다. 일반적으로 수신자는 지정된 형식으로 데이터를 수락하고 내부 형식으로 변환하여 해당 파이프라인에 정의된 프로세서 및 내보내기로 전달합니다. 기본적으로 수신자는 구성되지 않습니다. 하나 이상의 수신자를 구성해야 합니다. 수신자는 하나 이상의 데이터 소스를 지원할 수 있습니다.
- 프로세서 - (선택 사항) 프로세서는 수신 및 내보내기 간의 데이터에서 실행됩니다. 기본적으로 프로세서는 사용할 수 없습니다. 모든 데이터 소스에 대해 프로세서를 활성화해야 합니다. 일부 프로세서는 모든 데이터 소스를 지원하는 것은 아닙니다. 데이터 소스에 따라 여러 프로세서를 사용하도록 설정하는 것이 좋습니다.Depending on the data source, it may be recommended that multiple processors be enabled. 또한 프로세서의 순서가 중요합니다.
- Exporters - 푸시 또는 가져오기를 기반으로 할 수 있는 내보내기는 하나 이상의 백엔드/대상으로 데이터를 전송하는 방법입니다. 기본적으로 내보내기는 구성되지 않습니다. 하나 이상의 내보내기를 구성해야 합니다. 내보내기자는 하나 이상의 데이터 소스를 지원할 수 있습니다. 내보내기에는 기본 설정이 있을 수 있지만 적어도 대상 및 보안 설정을 지정하려면 구성이 필요합니다.
사용자 정의 리소스 YAML 파일에서 구성 요소의 여러 인스턴스를 정의할 수 있습니다. 구성되면 YAML 파일의 spec.config.service
섹션에 정의된 파이프라인을 통해 이러한 구성 요소를 활성화해야 합니다. 모범 사례로 필요한 구성 요소만 활성화해야 합니다.
OpenTelemetry 사용자 정의 리소스 파일 샘플
apiVersion: opentelemetry.io/v1alpha1 kind: OpenTelemetryCollector metadata: name: cluster-collector namespace: tracing-system spec: mode: deployment config: | receivers: otlp: protocols: grpc: http: processors: exporters: jaeger: endpoint: jaeger-production-collector-headless.tracing-system.svc:14250 tls: ca_file: "/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt" service: pipelines: traces: receivers: [otlp] processors: [] exporters: [jaeger]
구성 요소가 구성되어 있지만 service
섹션에 정의되지 않은 경우 활성화되지 않습니다.
매개변수 | 설명 | 값 | 기본값 |
---|---|---|---|
receivers: | 수신자는 데이터가 수집기로 들어오는 방법입니다. 기본적으로 수신자는 구성되지 않습니다. 구성을 유효한 것으로 간주하려면 하나 이상의 활성화된 수신자가 있어야 합니다. 수신자는 파이프라인에 추가하여 활성화됩니다. |
| 없음 |
receivers: otlp: |
| ||
processors: | 프로세서는 수신 및 내보내기 간의 데이터에서 실행됩니다. 기본적으로 프로세서는 사용할 수 없습니다. | 없음 | |
exporters: | 내보내기자는 하나 이상의 백엔드/대상으로 데이터를 보냅니다. 기본적으로 내보내기는 구성되지 않습니다. 구성을 유효한 것으로 간주하려면 하나 이상의 내보내기가 활성화되어 있어야 합니다. 내보내기를 파이프라인에 추가하여 사용할 수 있습니다. 내보내기에는 기본 설정이 있을 수 있지만 적어도 대상 및 보안 설정을 지정하려면 구성이 필요합니다. |
| 없음 |
exporters: jaeger: endpoint: |
| ||
exporters: jaeger: tls: ca_file: | CA 인증서의 경로입니다. 클라이언트의 경우 서버 인증서를 확인합니다. 서버의 경우 클라이언트 인증서를 확인합니다. 비어 있는 경우 시스템 루트 CA를 사용합니다. | ||
service: pipelines: |
구성 요소는 | ||
service: pipelines: traces: receivers: |
| 없음 | |
service: pipelines: traces: processors: |
| 없음 | |
service: pipelines: traces: exporters: |
| 없음 |