1. Datadog Operator 설치

먼저 Helm이 설치되어 있어야 한다.

리포지토리를 추가한다.

$ helm repo add datadog https://helm.datadoghq.com
WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /home/istio/.kube/config
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /home/istio/.kube/config
"datadog" has been added to your repositories

이어서 실행한다.

$ helm install my-datadog-operator datadog/datadog-operator
WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /home/istio/.kube/config
WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /home/istio/.kube/config
W0819 04:32:53.504625   24481 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0819 04:32:53.517140   24481 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0819 04:32:53.527991   24481 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0819 04:32:53.661116   24481 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0819 04:32:53.663295   24481 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
W0819 04:32:54.011526   24481 warnings.go:70] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition
NAME: my-datadog-operator
LAST DEPLOYED: Fri Aug 19 04:32:52 2022
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:

2. Datadog 키 연결

미리 키를 생성해야 한다.

$ kubectl create secret generic datadog-secret --from-literal api-key=xxxx --from-literal app-key=xxxx
secret/datadog-secret created

3. datadog-agent.yaml 파일 생성

파일 내용은 다음과 같다.

apiVersion: datadoghq.com/v1alpha1
kind: DatadogAgent
metadata:
  name: datadog
spec:
  credentials:
    apiSecret:
      secretName: datadog-secret
      keyName: api-key
    appSecret:
      secretName: datadog-secret
      keyName: app-key
  agent:
    image:
      name: "gcr.io/datadoghq/agent:latest"
  clusterAgent:
    image:
      name: "gcr.io/datadoghq/cluster-agent:latest"

파일을 생성하면 다음과 같이 실행한다.

$ kubectl apply -f datadog-agent.yaml
datadogagent.datadoghq.com/datadog created