3.3. 권한 및 테넌트 구성
TempoStack
또는 TempoMonolithic
인스턴스를 설치하기 전에 하나 이상의 테넌트를 정의하고 읽기 및 쓰기 액세스를 구성해야 합니다. Kubernetes 역할 기반 액세스 제어(RBAC)에 대한 클러스터 역할 및 클러스터 역할 바인딩을 사용하여 이러한 권한 부여 설정을 구성할 수 있습니다. 기본적으로 사용자에게는 읽기 또는 쓰기 권한이 부여되지 않습니다. 자세한 내용은 "테넌트에 대한 읽기 권한 구성" 및 "테넌트에 대한 쓰기 권한 구성"을 참조하세요.
Red Hat 빌드의 OpenTelemetry Collector는 RBAC를 사용하여 데이터를 쓰는 서비스 계정을 사용하여 TempoStack
또는 TempoMonolithic
인스턴스에 추적 데이터를 보낼 수 있습니다.
Component | Tempo Gateway 서비스 | OpenShift OAuth | 토큰리뷰 API | SubjectAccessReview API |
---|---|---|---|---|
인증 | X | X | X | |
권한 부여 | X | X |
3.3.1. 테넌트에 대한 읽기 권한 구성 링크 복사링크가 클립보드에 복사되었습니다!
웹 콘솔의 관리자 보기나 명령줄에서 테넌트의 읽기 권한을 구성할 수 있습니다.
사전 요구 사항
-
cluster-admin
역할을 사용하여 클러스터 관리자로 OpenShift Container Platform 웹 콘솔에 로그인되어 있습니다. -
Red Hat OpenShift Dedicated의 경우
dedicated-admin
역할이 있는 계정을 사용하여 로그인해야 합니다.
프로세스
TempoStack
사용자 정의 리소스(CR)에 원하는 값과 함께tenantName
및tenantId
매개변수를 추가하여 테넌트를 정의합니다.TempoStack
CR의 테넌트 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 추적을 읽을 수 있는 읽기(
get
) 권한이 있는 클러스터 역할에 테넌트를 추가합니다.ClusterRole
리소스의 RBAC 구성 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 단계의 클러스터 역할에 대한 클러스터 역할 바인딩을 정의하여 인증된 사용자에게 추적 데이터에 대한 읽기 권한을 부여합니다.
ClusterRoleBinding
리소스의 RBAC 구성 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 인증된 모든 사용자에게 추적 데이터에 대한 읽기 권한을 부여합니다.
3.3.2. 테넌트에 대한 쓰기 권한 구성 링크 복사링크가 클립보드에 복사되었습니다!
웹 콘솔의 관리자 보기나 명령줄에서 테넌트의 쓰기 권한을 구성할 수 있습니다.
사전 요구 사항
-
cluster-admin
역할을 사용하여 클러스터 관리자로 OpenShift Container Platform 웹 콘솔에 로그인되어 있습니다. -
Red Hat OpenShift Dedicated의 경우
dedicated-admin
역할이 있는 계정을 사용하여 로그인해야 합니다. - OpenTelemetry Collector를 설치하고 권한이 있는 서비스 계정을 사용하도록 구성했습니다. 자세한 내용은 OpenTelemetry Red Hat 빌드 문서에서 "필요한 RBAC 리소스를 자동으로 생성하기"를 참조하세요.
프로세스
OpenTelemetry Collector와 함께 사용할 서비스 계정을 만듭니다.
apiVersion: v1 kind: ServiceAccount metadata: name: otel-collector namespace: <project_of_opentelemetry_collector_instance>
apiVersion: v1 kind: ServiceAccount metadata: name: otel-collector namespace: <project_of_opentelemetry_collector_instance>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 추적을 작성하기 위한 쓰기(
생성
) 권한이 있는 클러스터 역할에 테넌트를 추가합니다.ClusterRole
리소스의 RBAC 구성 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터 역할 바인딩을 정의하여 OpenTelemetry Collector 서비스 계정을 연결하여 OpenTelemetry Collector에 쓰기 권한을 부여합니다.
ClusterRoleBinding
리소스의 RBAC 구성 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이전 단계에서 만든 서비스 계정입니다. 클라이언트는 추적 데이터를 내보낼 때 사용합니다.
다음과 같이
OpenTelemetryCollector
사용자 지정 리소스를 구성합니다.-
추적 파이프라인 서비스에
bearertokenauth
확장 기능과 유효한 토큰을 추가합니다. -
otlp/otlphttp
내보내기 프로그램에 테넌트 이름을X-Scope-OrgID
헤더로 추가합니다. 유효한 인증 기관 파일로 TLS를 활성화합니다.
샘플 OpenTelemetry CR 구성
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 쓰기 권한이 구성된 서비스 계정입니다.
- 2
- 서비스 계정 토큰을 사용하기 위한 Bearer Token 확장입니다.
- 3
- 서비스 계정 토큰. 클라이언트는 토큰을 베어러 토큰 헤더로 추적 파이프라인 서비스에 전송합니다.
- 4
- OTLP gRPC Exporter(
otlp/dev
) 또는 OTLP HTTP Exporter(otlphttp/dev
)를 지정하세요. - 5
- 유효한 서비스 CA 파일로 TLS가 활성화되었습니다.
- 6
- 세입자 이름이 있는 헤더입니다.
- 7
- OTLP gRPC Exporter(
otlp/dev
) 또는 OTLP HTTP Exporter(otlphttp/dev
)를 지정하세요. - 8
- CR의
수출자
섹션에 지정한 수출자입니다.
-
추적 파이프라인 서비스에