2.10.5. Jaeger 구성


Service Mesh Operator가 ServiceMeshControlPlane 리소스를 생성할 때 분산 추적을 위한 리소스도 생성할 수 있습니다. 서비스 메시는 분산 추적을 위해 Jaeger를 사용합니다.

다음 두 가지 방법 중 하나로 Jaeger 설정을 지정할 수 있습니다.

  • ServiceMeshControlPlane 리소스에서 Jaeger를 구성합니다. 이 방법에는 몇 가지 제한 사항이 있습니다.
  • 사용자 지정 Jaeger 리소스에서 Jaeger를 구성한 다음 ServiceMeshControlPlane 리소스에서 Jaeger 인스턴스를 참조합니다. name 값과 일치하는 Jaeger 리소스가 있으면 컨트롤 플레인에서 기존 설치를 사용합니다. 이 방법을 사용하면 Jaeger 설정을 완전히 사용자 지정할 수 있습니다.

ServiceMeshControlPlane에 지정된 기본 Jaeger 매개변수는 다음과 같습니다.

기본 all-in-one Jaeger 매개변수

apiVersion: maistra.io/v1
kind: ServiceMeshControlPlane
spec:
  version: v1.1
  istio:
    tracing:
      enabled: true
      jaeger:
        template: all-in-one

표 2.11. Jaeger 매개변수
매개변수설명기본값
tracing:
   enabled:

이 매개변수는 Service Mesh Operator에 의한 설치 및 추적을 활성화/비활성화합니다. Jaeger 설치는 기본적으로 활성화되어 있습니다. 기존 Jaeger 배포를 사용하려면 이 값을 false로 설정합니다.

true/false

true

jaeger:
   template:

이 매개변수는 사용할 Jaeger 배포 전략을 지정합니다.

  • all-in-one - 개발, 테스트, 시연, 개념 증명용.
  • production-elasticsearch - 프로덕션용.

all-in-one

참고

ServiceMeshControlPlane 리소스의 기본 템플릿은 메모리 내 스토리지를 사용하는 all-in-one 배포 전략입니다. 프로덕션의 경우 지원되는 유일한 스토리지 옵션은 Elasticsearch이므로, 프로덕션 환경에서 서비스 메시를 배포할 때 production-elasticsearch 템플릿을 요청하도록 ServiceMeshControlPlane을 구성해야 합니다.

2.10.5.1. Elasticsearch 구성

기본 Jaeger 배포 전략에서는 최소한의 리소스를 사용하여 설치를 완료할 수 있도록 all-in-one 템플릿을 사용합니다. 하지만 all-in-one 템플릿은 메모리 내 스토리지를 사용하므로 개발, 데모 또는 테스트 목적으로만 권장되며 프로덕션 환경에 사용해서는 안 됩니다.

프로덕션 환경에서 서비스 메시와 Jaeger를 배포하는 경우, 템플릿을 Jaeger의 스토리지 요건에 Elasticsearch를 사용하는 production-elasticsearch 템플릿으로 변경해야 합니다.

Elasticsearch는 메모리를 많이 사용하는 애플리케이션입니다. 기본 OpenShift Container Platform 설치에 지정된 초기 노드 세트는 Elasticsearch 클러스터를 지원하기에 충분히 크지 않을 수 있습니다. 사용 사례와 OpenShift Container Platform 설치에 요청한 리소스가 일치하도록 기본 Elasticsearch 구성을 수정해야 합니다. 유효한 CPU 및 메모리값으로 리소스 블록을 수정하여 각 구성 요소의 CPU 및 메모리 제한을 모두 조정할 수 있습니다. 권장 메모리 양, 또는 그 이상으로 실행하려는 경우 클러스터에 추가 노드를 추가해야 합니다. OpenShift Container Platform 설치에 요청된 리소스를 초과하지 않는지 확인합니다.

Elasticsearch를 사용하는 기본 "production" Jaeger 매개변수

apiVersion: maistra.io/v1
kind: ServiceMeshControlPlane
spec:
  istio:
    tracing:
    enabled: true
    ingress:
      enabled: true
    jaeger:
      template: production-elasticsearch
      elasticsearch:
        nodeCount: 3
        redundancyPolicy:
        resources:
          requests:
            cpu: "1"
            memory: "16Gi"
          limits:
            cpu: "1"
            memory: "16Gi"

표 2.12. Elasticsearch 매개변수
매개변수설명기본값
tracing:
  enabled:

이 매개변수는 서비스 메시에서 추적을 활성화/비활성화합니다. Jaeger는 기본적으로 설치되어 있습니다.

true/false

true

 
ingress:
  enabled:

이 매개변수는 Jaeger에 대해 수신을 활성화/비활성화합니다.

true/false

true

 
jaeger:
   template:

이 매개변수는 사용할 Jaeger 배포 전략을 지정합니다.

all-in-one/production-elasticsearch

all-in-one

 
elasticsearch:
  nodeCount:

생성할 Elasticsearch 노드 수입니다.

정수 값입니다.

1

개념 증명 = 1, 최소 배포 = 3

requests:
  cpu:

사용자 환경 구성에 따른 요청에 대한 중앙 처리 단위 수입니다.

코어 또는 밀리코어(예: 200m, 0.5, 1)에 지정되어 있습니다.

1Gi

개념 증명 = 500m, 최소 배포 = 1

requests:
  memory:

환경 구성에 따른 요청에 사용 가능한 메모리입니다.

바이트로 지정됩니다(예: 200Ki, 50Mi, 5Gi).

500m

개념 증명 = 1Gi, 최소 배포 = 16Gi*

limits:
  cpu:

사용자 환경 구성에 따른 중앙 처리 장치 수에 대한 제한입니다.

코어 또는 밀리코어(예: 200m, 0.5, 1)에 지정되어 있습니다.

 

개념 증명 = 500m, 최소 배포 = 1

limits:
  memory:

사용자 환경 구성에 따라 사용 가능한 메모리 제한입니다.

바이트로 지정됩니다(예: 200Ki, 50Mi, 5Gi).

 

개념 증명 = 1Gi, 최소 배포 = 16Gi*

각 Elasticsearch 노드는 더 낮은 메모리 설정으로 작동할 수 있지만 프로덕션 배포에는 권장되지 않습니다. 프로덕션 용도의 경우 기본적으로 각 Pod에 할당된 16Gi 미만이 있어야 하지만 Pod당 최대 64Gi까지 할당할 수도 있습니다.

프로세스

  1. cluster-admin 역할의 사용자로 OpenShift Container Platform 웹 콘솔에 로그인합니다.
  2. Operators 설치된 Operator로 이동합니다.
  3. Red Hat OpenShift Service Mesh Operator를 클릭합니다.
  4. Istio Service Mesh Control Plane 탭을 클릭합니다.
  5. 컨트롤 플레인 파일의 이름을 클릭합니다(예: basic-install).
  6. YAML 탭을 클릭합니다.
  7. Jaeger 매개변수를 편집하여, 기본 all-in-one 템플릿을 사용 사례에 맞게 수정한 production-elasticsearch 템플릿의 매개변수로 바꿉니다. 들여쓰기가 올바른지 확인합니다.
  8. 저장을 클릭합니다.
  9. 새로 고침을 클릭합니다. OpenShift Container Platform은 Jaeger를 재배포하고 지정된 매개변수를 기반으로 Elasticsearch 리소스를 생성합니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.