추적 구성
이 가이드는 Milvus에 대한 추적을 수집하도록 예거를 구성하는 방법에 대한 지침을 제공합니다.
전제 조건
Deply 예거
Jaeger는 Uber Technologies에서 오픈 소스로 배포한 분산 추적 플랫폼입니다.
1. 쿠버네티스에 예거 운영자 설치하기
운영자를 설치하려면 실행합니다:
$ kubectl create namespace observability
$ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/download/v1.62.0/jaeger-operator.yaml -n observability
이 시점에서 jaeger-operator
배포를 사용할 수 있어야 합니다. 다음 명령을 실행하여 확인할 수 있습니다:
$ kubectl get deployment jaeger-operator -n observability
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator 1 1 1 1 48s
2. 예거 배포
예거 인스턴스를 만드는 가장 간단한 방법은 다음 예제와 같이 YAML 파일을 만드는 것입니다. 이렇게 하면 기본적으로 인메모리 스토리지를 사용하여 단일 포드에 올인원 이미지(예거 에이전트, 예거 수집기, 예거 쿼리 및 예거 UI를 결합)를 배포하는 기본 AllInOne 전략이 설치됩니다.
추적을 장기간 저장하려면 프로덕션 전략을 참조하세요.
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
name: jaeger
그런 다음 YAML 파일을 kubectl
과 함께 사용할 수 있습니다:
$ kubectl apply -f simplest.yaml
몇 초 안에 빠른 데모 및 개발 목적에 적합한 새로운 인메모리 올인원 예거 인스턴스를 사용할 수 있습니다. 생성된 인스턴스를 확인하려면 예거 오브젝트를 나열합니다:
$ kubectl get jaegers
NAME STATUS VERSION STRATEGY STORAGE AGE
jaeger Running 1.62.0 allinone memory 13s
헬름 차트와 함께 Milvus 설치
다음 설정으로 헬름 차트와 함께 Milvus를 설치하거나 업그레이드할 수 있습니다:
extraConfigFiles:
user.yaml: |+
trace:
exporter: jaeger
sampleFraction: 1
jaeger:
url: "http://jaeger-collector:14268/api/traces"
위의 설정을 새 Milvus 배포에 적용하려면 다음 명령을 실행하면 됩니다:
$ helm repo add zilliztech https://zilliztech.github.io/milvus-helm
$ helm repo update
$ helm upgrade --install -f values.yaml my-release milvus/milvus
기존 Milvus 배포에 위의 설정을 적용하려면 다음 명령을 실행하면 된다:
$ helm upgrade my-release -f values.yaml milvus/milvus
추적 보기
헬름 차트와 함께 예거 및 Milvus를 배포한 후에는 기본적으로 인그레스가 활성화됩니다. 다음 명령을 실행하여 인그레스를 볼 수 있습니다:
$ kubectl get ingress
NAME CLASS HOSTS ADDRESS PORTS AGE
jaeger-query <none> * 192.168.122.34 80 14m
인그레스를 사용할 수 있게 되면 http://${ADDRESS}
로 이동하여 Jaeger UI에 액세스할 수 있습니다. ${ADDRESS}
를 인그레스의 실제 IP 주소로 바꿉니다.
다음 스크린샷은 검색 작업 및 로드 수집 작업 중 Milvus의 흔적이 있는 Jaeger UI를 보여줍니다:
추적 검색 요청
로드 수집 요청 추적