Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable system-probe on GKE Autopilot #1453

Merged
merged 31 commits into from
Feb 28, 2025
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
0affc11
Changes for system-probe on GKE Autopilot
hmahmood Jul 11, 2024
f57c180
Merge remote-tracking branch 'origin/main' into hasan.mahmood/system-…
hmahmood Jul 16, 2024
64f9b2f
Fix os-release mounts
hmahmood Jul 16, 2024
83c3f9e
Update version and changelog
hmahmood Jul 16, 2024
9e2d995
Update README
hmahmood Jul 17, 2024
560e258
Merge remote-tracking branch 'origin/main' into hasan.mahmood/system-…
hmahmood Jul 17, 2024
25caa09
Merge remote-tracking branch 'origin/main' into hasan.mahmood/system-…
hmahmood Sep 3, 2024
2bbe0fb
Bump chart to 3.71
hmahmood Sep 4, 2024
055cbb8
Merge branch 'main' into hasan.mahmood/system-probe-autopilot
fanny-jiang Jan 29, 2025
b746a4e
Minor fixes for WorkloadAllowlist (#1677)
fanny-jiang Jan 30, 2025
b0dc898
Fix
hmahmood Jan 30, 2025
4a8cf81
Merge remote-tracking branch 'origin/main' into hasan.mahmood/system-…
hmahmood Jan 30, 2025
e1c96c2
Enable apparmor profile on gke autopilot for system-probe
hmahmood Feb 6, 2025
90b0c78
Enable securityContext on gke autopilot
hmahmood Feb 6, 2025
eead5ac
Merge remote-tracking branch 'origin/main' into hasan.mahmood/system-…
hmahmood Feb 6, 2025
700f22f
Fix npm for autopilot and GDC (#1679)
fanny-jiang Feb 7, 2025
50f0ebe
Fix
hmahmood Feb 7, 2025
0836fe5
fix changelog and add note about required GKE version
fanny-jiang Feb 10, 2025
d687f18
Merge branch 'main' into hasan.mahmood/system-probe-autopilot
fanny-jiang Feb 10, 2025
099687d
update baselines
fanny-jiang Feb 10, 2025
b6875e3
fix changelog
fanny-jiang Feb 10, 2025
ecbb147
Merge remote-tracking branch 'origin/main' into hasan.mahmood/system-…
hmahmood Feb 24, 2025
021c926
Revert unnecessary changes
hmahmood Feb 24, 2025
6ac2dd7
Update helm docs
hmahmood Feb 24, 2025
f4f4bbc
Update min version
hmahmood Feb 25, 2025
ee3c93b
Fix tests
hmahmood Feb 25, 2025
12e19ca
Merge branch 'main' into hasan.mahmood/system-probe-autopilot
fanny-jiang Feb 27, 2025
1259c72
Merge branch 'main' into hasan.mahmood/system-probe-autopilot
fanny-jiang Feb 27, 2025
64df0bc
Handle older GKE versions (#1720)
fanny-jiang Feb 28, 2025
3ff2fa1
Merge branch 'main' into hasan.mahmood/system-probe-autopilot
fanny-jiang Feb 28, 2025
caf9e65
bump chart version
fanny-jiang Feb 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion charts/datadog/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Datadog changelog

## 3.70.8

* Enable `system-probe` container on GKE Autopilot

## 3.70.7

* Set default `Agent` and `Cluster-Agent` version to `7.56.2`.
Expand Down Expand Up @@ -46,7 +50,7 @@

## 3.69.0

* Add support OTel Agent container. OTel Agent is Datadog's distribution of OTel collector.
* Add support OTel Agent container. OTel Agent is Datadog's distribution of OTel collector.

## 3.68.2

Expand Down
2 changes: 1 addition & 1 deletion charts/datadog/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
apiVersion: v1
name: datadog
version: 3.70.7
version: 3.70.8
appVersion: "7"
description: Datadog Agent
keywords:
Expand Down
2 changes: 1 addition & 1 deletion charts/datadog/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Datadog

![Version: 3.70.7](https://img.shields.io/badge/Version-3.70.7-informational?style=flat-square) ![AppVersion: 7](https://img.shields.io/badge/AppVersion-7-informational?style=flat-square)
![Version: 3.70.8](https://img.shields.io/badge/Version-3.70.8-informational?style=flat-square) ![AppVersion: 7](https://img.shields.io/badge/AppVersion-7-informational?style=flat-square)

[Datadog](https://www.datadoghq.com/) is a hosted infrastructure monitoring platform. This chart adds the Datadog Agent to all nodes in your cluster via a DaemonSet. It also optionally depends on the [kube-state-metrics chart](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-state-metrics). For more information about monitoring Kubernetes with Datadog, please refer to the [Datadog documentation website](https://docs.datadoghq.com/agent/basic_agent_usage/kubernetes/).

Expand Down
18 changes: 0 additions & 18 deletions charts/datadog/templates/NOTES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -333,14 +333,6 @@ On GKE Autopilot, only one "datadog" Helm chart release is allowed by Kubernetes
* The serviceAccountName must be "datadog-agent".
* All ConfigMap names mounted must be hardcode.

{{- if eq (include "system-probe-feature" .) "true" }}

#####################################################################
#### WARNING: System Probe is not supported on GKE Autopilot ####
#####################################################################
{{- fail "On GKE Autopilot environments, System Probe is not supported. The option 'datadog.securityAgent.runtime.enabled' must be set 'false'" }}

{{- end }}

{{- if and .Values.providers.gke.cos .Values.datadog.systemProbe.enableDefaultKernelHeadersPaths }}
#################################################################################
Expand Down Expand Up @@ -398,16 +390,6 @@ The option is overriden to avoid mounting volumes that are not allowed which wou

{{- end }}

{{- if .Values.datadog.networkMonitoring.enabled }}

#######################################################################################
#### WARNING: Network Performance Monitoring is not supported on GKE Autopilot ####
#######################################################################################

{{- fail "On GKE Autopilot environments, Network Performance Monitoring is not supported. The option 'datadog.networkMonitoring.enabled' must be set to 'false'" }}

{{- end }}

{{- end }}

{{- if and (.Values.datadog.dogstatsd.useSocketVolume) (eq .Values.targetSystem "windows") }}
Expand Down
4 changes: 3 additions & 1 deletion charts/datadog/templates/_container-system-probe.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
image: "{{ include "image-path" (dict "root" .Values "image" .Values.agents.image) }}"
imagePullPolicy: {{ .Values.agents.image.pullPolicy }}
{{ include "generate-security-context" (dict "securityContext" .Values.agents.containers.systemProbe.securityContext "targetSystem" .Values.targetSystem "seccomp" .Values.datadog.systemProbe.seccomp "kubeversion" .Capabilities.KubeVersion.Version) | indent 2 }}
command: ["/opt/datadog-agent/embedded/bin/system-probe", "--config=/etc/datadog-agent/system-probe.yaml"]
command: ["system-probe", "--config=/etc/datadog-agent/system-probe.yaml"]
{{- if .Values.agents.containers.systemProbe.ports }}
ports:
{{ toYaml .Values.agents.containers.systemProbe.ports | indent 2 }}
Expand All @@ -30,9 +30,11 @@
resources:
{{ toYaml .Values.agents.containers.systemProbe.resources | indent 4 }}
volumeMounts:
{{- if (not .Values.providers.gke.autopilot) }}
- name: auth-token
mountPath: {{ template "datadog.confPath" . }}/auth
readOnly: true
{{- end }}
- name: logdatadog
mountPath: {{ template "datadog.logDirectoryPath" . }}
readOnly: false # Need RW to write logs
Expand Down
2 changes: 1 addition & 1 deletion charts/datadog/templates/_daemonset-volumes-linux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
- hostPath:
path: /sys/fs/cgroup
name: cgroups
{{- if and (not .Values.providers.gke.autopilot) (or .Values.datadog.systemProbe.osReleasePath .Values.datadog.osReleasePath .Values.datadog.sbom.host.enabled) }}
{{- if (or .Values.datadog.systemProbe.osReleasePath .Values.datadog.osReleasePath .Values.datadog.sbom.host.enabled) }}
- hostPath:
path: {{ .Values.datadog.systemProbe.osReleasePath | default .Values.datadog.osReleasePath }}
name: os-release-file
Expand Down
3 changes: 1 addition & 2 deletions charts/datadog/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -338,7 +338,7 @@ false
Return true if the system-probe container should be created.
*/}}
{{- define "should-enable-system-probe" -}}
{{- if and (not .Values.providers.gke.autopilot) (eq (include "system-probe-feature" .) "true") (eq .Values.targetSystem "linux") -}}
{{- if and (eq (include "system-probe-feature" .) "true") (eq .Values.targetSystem "linux") -}}
true
{{- else -}}
false
Expand Down Expand Up @@ -938,7 +938,6 @@ Create RBACs for custom resources
false
{{- end -}}
{{- end -}}

{{/*
Return true if any process-related check is enabled
*/}}
Expand Down
3 changes: 3 additions & 0 deletions charts/datadog/templates/daemonset.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,9 @@ spec:
{{- if and .Values.agents.podSecurity.apparmor.enabled .Values.datadog.sbom.containerImage.uncompressedLayersSupport }}
container.apparmor.security.beta.kubernetes.io/agent: unconfined
{{- end }}
{{- if .Values.providers.gke.autopilot }}
autopilot.gke.io/no-connect: "false"
{{- end }}
{{- if .Values.agents.podAnnotations }}
{{ tpl (toYaml .Values.agents.podAnnotations) . | indent 8 }}
{{- end }}
Expand Down
Loading