화웨이 클라우드 ASM
화웨이 클라우드 ASM의 메트릭과 트레이스 데이터를 수집
설정¶
사전 준비¶
애플리케이션 서비스 메시(Application Service Mesh, 약칭 ASM)은 화웨이 클라우드가 오픈 소스 Istio를 기반으로 제공한 서비스 메시 플랫폼으로, 화웨이 클라우드의 엔터프라이즈급 Kubernetes 클러스터 서비스 CCE와 깊고 매끄럽게 연동된다.
ASM을 사용하려면 CCE 클러스터를 구매해야 하며, 동시에 CCE 클러스터에 DataKit을 설치해야 한다.
트레이스 수집¶
OpenTelemetry 수집기 활성화¶
OpenTelemetry 수집기 연동 문서를 참고한다.
의 ENV 모듈에서 ENV_DEFAULT_ENABLED_INPUTS 매개변수를 조정하고 opentelemetry 값을 추가한다. 예시는 다음과 같다.
- name: ENV_DEFAULT_ENABLED_INPUTS
value: dk,cpu,disk,diskio,mem,swap,system,hostobject,net,host_processes,container,opentelemetry
istio 샘플링 비율 수정¶
테스트를 쉽게 하기 위해 먼저 istio의 샘플링 비율을 수정한다.
otel endpoint 조정¶
# kubectl edit -n monitoring cm otel-collector-conf
...
exporters:
apm:
address: "100.125.0.78:8923"
project_id: f5f4c067d68b4b3aad86e173b18367bf
cluster_id: 5f642ce9-4aca-11ee-9dbd-0255ac10024d
otlp: # otlp 출력 추가
endpoint: "http://datakit-service.datakit:4317"
tls:
insecure: true
compression: none # gzip을 사용하지 않음
...
traces/apm:
receivers: [ zipkin ]
processors: [ memory_limiter, batch ]
exporters: [ otlp ] # 출력기를 otlp로 변경
메트릭 수집¶
다음은 모두 Datakit 설정 파일 datakit.yaml을 조정하는 내용이다.
Prometheus수집기 활성화
DataKit에서 Prometheus 데이터 수집을 활성화할 수 있다. 참고 문서는 Prometheus이며, configmap은 다음과 같다.
prom.conf: |
[[inputs.prom]]
urls = ["http://istiod.istio-system:15014/metrics"] ##istiod 주소
uds_path = ""
ignore_req_err = false
source = "prom"
measurement_prefix = ""
measurement_name = "istio_prom"
- 설정 파일 마운트
- DataKit 배포