- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
This page provides an overview of the Datadog CSI driver and installation instructions on a kubernetes cluster.
More information about Kubernetes Container Storage Interface (CSI) can be found here.
Datadog CSI driver is a daemonset that runs a GRPC server implementing the CSI specfications on each node of your kubernetes cluster.
Installing Datadog CSI driver on a kubernetes cluster allows users to leverage CSI volumes by specifying the datadog’s driver name.
The Datadog CSI node server will be responsible for managing Datadog CSI’s volume lifecycle.
Datadog CSI driver allows the agent to share the trace agent and dogstatsd Unix Domain Sockets with user pods regardless of the pods’ namespace pod security standards.
If CSI volumes are not used, the UDS sockets need to be shared with the user pod via hostpath volumes. If the user pod is running in a namespace having a non-privileged pod security standard, the pod will fail to start because hostpath volumes are not permitted in such contexts.
Datadog CSI driver shifts the hostpath volume from the user application to the CSI node server; the CSI daemonset runs in a separate privileged namespace and allows injecting UDS sockets into user pods with a Datadog CSI volume, allowing user pods to run in namespaces with baselinne
or restricted
pod security standards.
Datadog CSI driver can be installed using the public helm chart.
Add the Datadog CSI Helm repository
Run:
helm repo add datadog-csi-driver https://helm.datadoghq.com
helm repo update
Deploy Datadog CSI Driver
Run:
helm install datadog-csi-driver datadog/datadog-csi-driver
To run an unprivileged installation, add the following to datadog-agent.yaml
:
apiVersion: datadoghq.com/v2alpha1
kind: DatadogAgent
metadata:
name: datadog
spec:
global:
clusterName: <CLUSTER_NAME>
site: <DATADOG_SITE>
credentials:
apiSecret:
secretName: datadog-secret
keyName: api-key
agent:
config:
securityContext:
runAsUser: <USER_ID>
supplementalGroups:
- <GROUP_ID>
<USER_ID>
with the UID to run the Datadog Agent. Datadog recommends setting this value to 100 since Datadog Agent v7.48+.<GROUP_ID>
with the group ID that owns the Docker or containerd socket.Then, deploy the Agent:
kubectl apply -f datadog-agent.yaml
To run an unprivileged installation, add the following to your datadog-values.yaml
file:
datadog:
apiKeyExistingSecret: datadog-secret
site: <DATADOG_SITE>
securityContext:
runAsUser: <USER_ID>
supplementalGroups:
- <GROUP_ID>
<USER_ID>
with the UID to run the Datadog Agent.<GROUP_ID>
with the group ID that owns the Docker or containerd socket.Then, deploy the Agent:
helm install datadog-agent -f datadog-values.yaml datadog/datadog