跳转至

华为云 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的采样率

# kubectl edit -n istio-system cm istio-1-15-5-r4
...
sampling: 100   #该参数由原来的1改为100
...

调整 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"
  • 挂载配置文件
        - mountPath: /usr/local/datakit/conf.d/prom/prom.conf
          name: datakit-conf
          subPath: prom.conf
  • Deploy DataKit
Kubectl apply -f datakit.yml 

文档评价

文档内容是否对您有帮助? ×