Datakit Operator¶
사전 요구 사항¶
- Kubernetes v1.24.1 이상 버전을 사용 중이며, 인터넷에 접속 가능해야 합니다(yaml 파일 다운로드 및 해당 이미지 풀 가능).
- MutatingAdmissionWebhook 및 ValidatingAdmissionWebhook 컨트롤러가 활성화되어 있어야 합니다.
- admissionregistration.k8s.io/v1 API가 활성화되어 있어야 합니다.
DataKit Agent 설치¶
DataKit은 시스템 및 애플리케이션에서 수집한 분산 추적 데이터를 수신하는 데 사용됩니다. Kubernetes 환경에 DataKit Agent를 설치했는지 확인하세요.
설치 과정에서 DDTrace 수집기를 함께 활성화할 수 있습니다.
DDTrace 수집기 활성화¶
datakit.yaml 파일을 수정하여 기본 활성화된 수집기 구성에 ddtrace를 추가합니다.
- name: ENV_DEFAULT_ENABLED_INPUTS
value: cpu,disk,diskio,mem,swap,system,hostobject,net,host_processes,container,ddtrace
애플리케이션 재시작:
DataKit Operator 설치¶
Datakit Operator는 애플리케이션 및 서비스 배포를 자동화하고, DDTrace SDK를 자동으로 주입하며, 시작 시 이를 탐지할 수 있습니다.
- 최신 datakit-operator.yaml 파일 다운로드
$ kubectl create namespace datakit
$ wget https://static.guance.com/datakit-operator/datakit-operator.yaml
2. 구성 파일 업데이트
{
"server_listen": "0.0.0.0:9543",
"log_level": "info",
"admission_inject": {
"ddtrace": {
"enabled_namespaces": [],
"enabled_labelselectors": [],
"images": {
"java_agent_image": "pubrepo.guance.com/datakit-operator/dd-lib-java-init:latest"
},
"envs": {
"DD_JMXFETCH_STATSD_HOST": "datakit-service.datakit.svc",
"DD_JMXFETCH_STATSD_PORT": "8125",
"POD_NAME": "{fieldRef:metadata.name}",
"POD_NAMESPACE": "{fieldRef:metadata.namespace}",
"NODE_NAME": "{fieldRef:spec.nodeName}",
"DD_SERVICE": "{fieldRef:metadata.labels['service']}",
"DD_AGENT_HOST": "datakit-service.datakit.svc",
"DD_TRACE_AGENT_PORT": "9529",
"DD_TAGS": "pod_name:$(POD_NAME),pod_namespace:$(POD_NAMESPACE),host:$(NODE_NAME)"
}
},
"logfwd": {
"options": {
"reuse_exist_volume": "false"
},
"images": {
"logfwd_image": "pubrepo.guance.com/datakit/logfwd:1.28.1"
}
}
}
}
페이지에서 직접 파라미터를 변경할 수 있습니다:
- Service
- Env
-
다음 항목 활성화 여부 선택:
- 사용자 정의 DataKit 수신 주소
- 프로파일링 데이터 수집: 활성화하면 애플리케이션 런타임에 대한 더 많은 정보를 확인할 수 있습니다.
namespaces구성selectors구성
3. 설치 명령어 실행
애플리케이션 재시작¶
설치가 완료된 후 애플리케이션 Pod를 재시작하면 됩니다.