Compare commits

...
13 Commits
Author SHA1 Message Date
pi-ux-ce d5eddaf2c2 The k8s-state deployment is the better home for httpcheck 2026-08-04 14:49:35 +01:00
pi-ux-ce 9b986a4953 try to setup httpcheck on the nod instead but no success 2026-08-04 14:39:09 +01:00
pi-ux-ce 1a2a820273 trying otel logs 2026-08-03 17:03:27 +01:00
pi-ux-ce af850e4bd5 tryign to add http plugin 2026-08-03 16:12:30 +01:00
pi-ux-ce dddb91e2a7 adding plugins 2026-08-03 15:48:24 +01:00
pi-ux-ce 9a125bb29d switching to new room 2026-08-03 15:15:07 +01:00
pi-ux-ce 1420a0b354 switching to new room 2026-08-03 15:12:10 +01:00
pi-ux-ce 3ae6d51fb2 add the storageClassName 2026-08-03 10:02:52 +01:00
pi-ux-ce f6a5dffe3c update proper commands 2026-08-03 09:58:50 +01:00
pi-ux-ce 7ea3134ff8 update readme 2026-07-30 10:15:21 +01:00
pi-ux-ce e130feda8c removing old files and try with the helm template 2026-07-30 10:11:09 +01:00
pi-ux-ce eed6e01cee try using the helm template but not working for now 2026-07-30 09:57:36 +01:00
pi-ux-ce 99059ae603 add before changes 2026-07-30 09:52:59 +01:00
3 changed files with 355 additions and 198 deletions
+49
View File
@@ -1,5 +1,54 @@
# netdata_kube
If you plan to connect the node to Netdata Cloud, you can find the command with the right parameters by clicking the "Add Nodes" button in your Space's Nodes tab.
File generated using the following command
```
helm repo add netdata https://netdata.github.io/helmchart/ && helm repo update
helm template -n netdata netdata netdata/netdata \
--set image.tag=edge \
--set parent.claiming.enabled="true" \
--set parent.claiming.token=CIlCwV6GawNWIfhrqMVmPAJixo_BSaGvwVbHKFOCQCHbYG5J8Ac0FDxKrObJ727F1dndg8J-v6apUhzGho6RIOlkrqJ_F7DKodjLqbsSWb7Ta-GSHkkuHcTXidxKxEo5RK0jiqU \
--set parent.claiming.rooms=e15a4f12-89d7-4d5b-b588-6658fa835473 \
--set child.claiming.enabled="true" \
--set child.claiming.token=CIlCwV6GawNWIfhrqMVmPAJixo_BSaGvwVbHKFOCQCHbYG5J8Ac0FDxKrObJ727F1dndg8J-v6apUhzGho6RIOlkrqJ_F7DKodjLqbsSWb7Ta-GSHkkuHcTXidxKxEo5RK0jiqU \
--set child.claiming.rooms=e15a4f12-89d7-4d5b-b588-6658fa835473 > /opt/kubernetes/netdata_kube/netdata_helm.yml
```
I had to manually add a namespace block
```
---
apiVersion: v1
kind: Namespace
metadata:
name: netdata
```
Also modify the PersistentVolumeClaim
```
spec:
storageClassName: nfs-storage-intelligent
```
example :
```
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: paperless-media
spec:
storageClassName: nfs-storage-intelligent
accessModes:
- ReadWriteMany
resources:
requests:
storage: 20Gi
```
## Getting started
-85
View File
@@ -1,85 +0,0 @@
apiVersion: v1
kind: Namespace
metadata:
name: netdata
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: netdata-sa-clusteradmin
namespace: netdata
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: netdata-crb-clusteradmin
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: netdata-sa-clusteradmin
namespace: netdata
---
apiVersion: v1
kind: Service
metadata:
name: netdata-agent
namespace: netdata
spec:
# type: NodePort
selector:
app: netdata-agent
ports:
- name: http
protocol: TCP
port: 19999
# targetPort: 80
# nodePort: 30999
---
apiVersion: v1
kind: Service
metadata:
name: netdata-agent-headless
namespace: netdata
spec:
clusterIP: None
selector:
app: netdata-agent
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: netdata-agent
namespace: netdata
spec:
selector:
matchLabels:
app: netdata-agent
template:
metadata:
labels:
app: netdata-agent
spec:
serviceAccountName: netdata-sa-clusteradmin
containers:
- name: netdata-agent
image: netdata/netdata
imagePullPolicy: Always
env:
- name: LOG_LEVEL
value: DEBUG
- name: AGENT_CLUSTER_ADDR
value: "netdata-agent-headless"
- name: KUBERNETES_POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
resources:
limits:
cpu: 200m
memory: 200Mi
ports:
- containerPort: 19999
protocol: TCP
+303 -110
View File
@@ -1,11 +1,16 @@
---
apiVersion: v1
kind: Namespace
metadata:
name: netdata
---
# Source: netdata/templates/serviceaccount.yaml
kind: ServiceAccount
apiVersion: v1
metadata:
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
name: netdata
@@ -19,7 +24,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
data:
@@ -32,21 +37,58 @@ data:
update_every: 1
autodetection_retry: 0
jobs:
- url: http://127.0.0.1:10255/metrics
- url: https://localhost:10250/metrics
- name: local
url: http://127.0.0.1:10255/metrics
- name: local
url: https://localhost:10250/metrics
tls_skip_verify: yes
kubeproxy: |
update_every: 1
autodetection_retry: 0
jobs:
- url: http://127.0.0.1:10249/metrics
- name: local
url: http://127.0.0.1:10249/metrics
dnsquery: |
update_every: 3600
autodetection_retry: 0
jobs:
- name: job1
record_types:
- A
- AAAA
domains:
- google.com
- github.com
- gitea.tryton.geeraert.eu
servers:
- 8.8.8.8
- 8.8.4.4
x509check: |
jobs:
- name: my_site_cert
source: https://gitea.tryton.geeraert.eu:443
web_log: |
jobs:
- name: django_testing
path: /host/var/log/pods/django-testing_django-testing-7f89d9ffc5-mcm9g_ad5b3bbf-33ca-410f-aa0e-457664c6345b/django-testing/0.log
log_type: auto
- name: nginx
path: /host/var/log/pods/reverse-proxy_reverse-proxy-67c767c86f-pxvdz_af6033a7-dfcb-4430-a67b-ee75ea424cf7/reverse-proxy/0.log
log_type: auto
netdata: |
[db]
mode = ram
[web]
bind to = localhost:19999
[health]
enabled = no
[ml]
enabled = no
[plugins]
otel = yes
[plugin:otel]
command options = --otel-endpoint 0.0.0.0:4317 --otel-logs-journal-dir /var/log/netdata/otel/v1
stream: |
[stream]
enabled = yes
@@ -56,6 +98,103 @@ data:
buffer size bytes = 1048576
reconnect delay seconds = 5
initial clock resync iterations = 60
otel: |
# OpenTelemetry Plugin Configuration
# This file configures the OpenTelemetry metrics and logs ingestion for Netdata
#
# To customize, run: edit-config otel.yaml
# Only include the fields you want to change — missing fields keep their defaults.
endpoint:
# gRPC endpoint to listen on for OpenTelemetry data
path: "127.0.0.1:4317"
# Path to TLS certificate file (enables TLS when provided)
tls_cert_path: null
# Path to TLS private key file (required when TLS certificate is provided)
tls_key_path: null
# Path to TLS CA certificate file for client authentication (optional)
tls_ca_cert_path: null
metrics:
# Directory with configuration files for mapping OTEL metrics to Netdata charts
chart_configs_dir: /etc/netdata/otel.d/v1/metrics
# Collection interval in seconds (1–3600). Defines the Netdata chart update frequency.
interval_secs: 10
# Grace period in seconds. After the last data point, the plugin waits this long
# before gap-filling. When interval_secs is overridden, this auto-derives as
# 5 * interval_secs unless explicitly set.
grace_period_secs: 60
# Expiry duration in seconds. Charts with no data for this long are removed.
expiry_duration_secs: 900
# Maximum number of new charts that can be created per gRPC request.
# Limits cardinality explosion from high-cardinality label combinations.
max_new_charts_per_request: 100
# Directory where OpenTelemetry logs and traces are stored.
# Must be an absolute path.
base_dir: /var/log/netdata/otel/v2
remote_storage:
# Upload data to remote object storage, in addition to keeping it on local
# disk. One backend is shared by logs and traces.
enabled: false
# NEVER put credentials in this file or in the URI below. Credentials are
# read from the netdata process environment and the standard cloud
# locations — for S3: AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY,
# ~/.aws/credentials, or an attached instance role (nothing to configure).
# To pass environment variables to the netdata service, use a root-only
# systemd EnvironmentFile.
# Remote storage location. The scheme selects the backend (fs, s3);
# non-secret backend options go in the query string. Examples:
# fs:///var/lib/netdata/otel/remote
# s3://bucket/prefix?region=us-east-1
# s3://bucket/prefix?region=us-east-1&endpoint=https://minio.example:9000
uri: "fs:///var/log/netdata/otel/v2/remote"
# Data deleted from local disk by retention but still in remote storage is
# fetched back into a bounded local cache when a query needs it. Cap for
# that cache:
read_cache_max_size: "1GB"
auth:
# Require senders to identify a tenant via the X-Scope-OrgID gRPC header.
# When disabled, all data belongs to a single "default" tenant.
# Applies to logs and traces; metrics have no tenants.
enabled: false
logs:
rotation:
# Incoming logs are appended to a current file; a new file starts when
# any of these limits is reached.
default:
max_file_size: "25MB"
max_entries: 50000
# Per-tenant overrides (any subset of the fields above):
# my-tenant:
# max_file_size: "100MB"
retention:
# How much log data to keep on local disk; the oldest files are deleted
# when any of these limits is exceeded.
default:
max_files: 100000
max_total_size: "1GB"
max_age: "7 days"
# Per-tenant overrides (any subset of the fields above):
# my-tenant:
# max_age: "30 days"
---
# Source: netdata/templates/child/configmap.yaml
apiVersion: v1
@@ -65,18 +204,23 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
data:
config.yml: |
name: kubernetes
discovery:
disabled: no
name: 'kubernetes'
discover:
- discoverer: k8s
k8s:
- tags: unknown
role: pod
local_mode: true
tag:
pod:
local_mode: yes
classify:
- name: "Control-Plane"
selector: unknown
tags: -unknown control_plane
@@ -90,49 +234,49 @@ data:
tags: -unknown applications
match:
- tags: activemq
expr: '{{ and (eq .Port "8161") (glob .Image "**/activemq*") }}'
expr: '{{ and (eq .Port "8161") (glob .Image "*/activemq*") }}'
- tags: apache
expr: '{{ and (eq .Port "80" "8080") (glob .Image "httpd*" "**/httpd*") }}'
expr: '{{ and (eq .Port "80" "8080") (glob .Image "httpd*" "*/httpd*") }}'
- tags: bind
expr: '{{ and (eq .Port "8653") (glob .Image "**/bind*") }}'
expr: '{{ and (eq .Port "8653") (glob .Image "*/bind*") }}'
- tags: cockroachdb
expr: '{{ and (eq .Port "8080") (glob .Image "**/cockroach*") }}'
expr: '{{ and (eq .Port "8080") (glob .Image "*/cockroach*") }}'
- tags: consul
expr: '{{ and (eq .Port "8500") (glob .Image "consul*" "**/consul*") }}'
expr: '{{ and (eq .Port "8500") (glob .Image "consul*" "*/consul*") }}'
- tags: coredns
expr: '{{ and (eq .Port "9153") (glob .Image "**/coredns*") }}'
expr: '{{ and (eq .Port "9153") (glob .Image "*/coredns*") }}'
- tags: elasticsearch
expr: '{{ and (eq .Port "9200") (glob .Image "elasticsearch:*" "**/elasticsearch:*") }}'
expr: '{{ and (eq .Port "9200") (glob .Image "elasticsearch:*" "*/elasticsearch:*") }}'
- tags: fluentd
expr: '{{ and (eq .Port "24220") (glob .Image "fluentd*" "**/fluentd*") }}'
expr: '{{ and (eq .Port "24220") (glob .Image "fluentd*" "*/fluentd*") }}'
- tags: freeradius
expr: '{{ and (eq .Port "18121") (glob .Image "**/freeradius*") }}'
expr: '{{ and (eq .Port "18121") (glob .Image "*/freeradius*") }}'
- tags: hdfs
expr: '{{ and (eq .Port "50070") (glob .Image "**/hdfs*") }}'
expr: '{{ and (eq .Port "50070") (glob .Image "*/hdfs*") }}'
- tags: lighttpd
expr: '{{ and (eq .Port "80" "8080") (glob .Image "**/lighttpd*") }}'
expr: '{{ and (eq .Port "80" "8080") (glob .Image "*/lighttpd*") }}'
- tags: logstash
expr: '{{ and (eq .Port "9600") (glob .Image "logstash*" "**/logstash*") }}'
expr: '{{ and (eq .Port "9600") (glob .Image "logstash*" "*/logstash*") }}'
- tags: mysql
expr: '{{ and (eq .Port "3306") (glob .Image "mysql*" "**/mysql*" "mariadb*" "**/mariadb*") }}'
expr: '{{ and (eq .Port "3306") (glob .Image "mysql*" "*/mysql*" "mariadb*" "*/mariadb*") }}'
- tags: nginx
expr: '{{ and (eq .Port "80" "8080") (glob .Image "nginx*" "**/nginx*") }}'
expr: '{{ and (eq .Port "80" "8080") (glob .Image "nginx*" "*/nginx*") }}'
- tags: openvpn
expr: '{{ and (eq .Port "7505") (glob .Image "**/openvpn") }}'
expr: '{{ and (eq .Port "7505") (glob .Image "*/openvpn") }}'
- tags: phpfpm
expr: '{{ and (eq .Port "80" "8080") (glob .Image "**/phpfpm*" "**/php-fpm*") }}'
expr: '{{ and (eq .Port "80" "8080") (glob .Image "*/phpfpm*" "*/php-fpm*") }}'
- tags: rabbitmq
expr: '{{ and (eq .Port "15672") (glob .Image "rabbitmq*" "**/rabbitmq*") }}'
expr: '{{ and (eq .Port "15672") (glob .Image "rabbitmq*" "*/rabbitmq*") }}'
- tags: solr
expr: '{{ and (eq .Port "8983") (glob .Image "solr*" "**/solr*") }}'
expr: '{{ and (eq .Port "8983") (glob .Image "solr*" "*/solr*") }}'
- tags: tengine
expr: '{{ and (eq .Port "80" "8080") (glob .Image "**/tengine*") }}'
expr: '{{ and (eq .Port "80" "8080") (glob .Image "*/tengine*") }}'
- tags: unbound
expr: '{{ and (eq .Port "8953") (glob .Image "**/unbound*") }}'
expr: '{{ and (eq .Port "8953") (glob .Image "*/unbound*") }}'
- tags: vernemq
expr: '{{ and (eq .Port "8888") (glob .Image "**/vernemq*") }}'
expr: '{{ and (eq .Port "8888") (glob .Image "*/vernemq*") }}'
- tags: zookeeper
expr: '{{ and (eq .Port "2181") (glob .Image "zookeeper*" "**/zookeeper*") }}'
expr: '{{ and (eq .Port "2181") (glob .Image "zookeeper*" "*/zookeeper*") }}'
- tags: consul_envoy
expr: |
{{ $imageOK := glob .Image "*/consul-dataplane*" -}}
@@ -149,13 +293,12 @@ data:
expr: |
{{ $scrapeOK := eq (get .Annotations "prometheus.io/scrape") "true" -}}
{{ $portOK := eq (default .Port (get .Annotations "prometheus.io/port")) .Port -}}
{{ $imageOK := not (glob .Image "netdata/netdata*" "**pulsar*" "**telegraf*") -}}
{{ $imageOK := not (glob .Image "netdata/netdata*" "*pulsar*" "*telegraf*") -}}
{{ and $scrapeOK $portOK $imageOK }}
build:
compose:
- name: "Control-Plane"
selector: '!unknown control_plane'
tags: file
apply:
config:
- selector: kube_scheduler
template: |
- module: prometheus
@@ -174,8 +317,7 @@ data:
max_time_series: 2000
- name: "Prometheus Generic Applications"
selector: '!unknown prometheus_generic'
tags: file
apply:
config:
- selector: prometheus_generic
template: |
{{ $path := default "/metrics" (get .Annotations "prometheus.io/path") -}}
@@ -188,7 +330,7 @@ data:
- name: "Applications"
selector: '!unknown applications'
tags: file
apply:
config:
- selector: activemq
template: |
- module: activemq
@@ -309,10 +451,6 @@ data:
- module: zookeeper
name: zookeeper-{{.TUID}}
address: {{.Address}}
export:
file:
- selector: file
filename: "/export/go.d.yml"
---
# Source: netdata/templates/k8s-state/configmap.yaml
apiVersion: v1
@@ -322,7 +460,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
data:
@@ -331,6 +469,7 @@ data:
default_run: no
modules:
k8s_state: yes
httpcheck: yes
go.d-k8s_state: |
jobs:
- name: k8s_state
@@ -340,6 +479,8 @@ data:
hostname = netdata-k8s-state
[db]
mode = ram
[web]
bind to = localhost:19999
[health]
enabled = no
[ml]
@@ -371,6 +512,18 @@ data:
buffer size bytes = 1048576
reconnect delay seconds = 5
initial clock resync iterations = 60
httpcheck: |
update_every: 1
autodetection_retry: 0
jobs:
- name: gitea
url: https://gitea.tryton.geeraert.eu:443
headers:
Host: localhost:8080
User-Agent: netdata/go.d.plugin
Accept: */*
- name: bitwarden
url: https://bitwarden.tryton.geeraert.eu:443
---
# Source: netdata/templates/parent/configmap.yaml
apiVersion: v1
@@ -380,7 +533,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
data:
@@ -425,11 +578,12 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
role: k8sState
spec:
storageClassName: nfs-storage-intelligent
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
@@ -443,15 +597,16 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
role: parent
spec:
storageClassName: nfs-storage-intelligent
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 2Gi
storage: 15Gi
---
# Source: netdata/templates/parent/persistentvolumeclaim.yaml
apiVersion: v1
@@ -461,11 +616,12 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
role: parent
spec:
storageClassName: nfs-storage-intelligent
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
@@ -478,7 +634,7 @@ metadata:
name: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
rules:
@@ -495,6 +651,21 @@ rules:
- "get"
- "list"
- "watch"
- apiGroups: ["apps"]
resources:
- "deployments"
verbs:
- "get"
- "list"
- "watch"
- apiGroups: ["batch"]
resources:
- "cronjobs"
- "jobs"
verbs:
- "get"
- "list"
- "watch"
- apiGroups: [""]
resources:
- "namespaces" # used by go.d/k8s_state, netdata (cgroup-name.sh, get-kubernetes-labels.sh)
@@ -508,7 +679,7 @@ metadata:
name: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
roleRef:
@@ -528,7 +699,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
role: parent
@@ -553,7 +724,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
role: child
@@ -567,7 +738,7 @@ spec:
metadata:
annotations:
container.apparmor.security.beta.kubernetes.io/netdata: unconfined
checksum/config: 8a8e545f0dc48a2f506bad9fcb687a4a86525f3b66f3622d6db28d8fef66fb29
checksum/config: 8a146c7f2aa937bbdd19b8ad73ddf059040663eb3ae88046b343003a4fa089e3
labels:
app: netdata
release: netdata
@@ -597,9 +768,15 @@ spec:
'
containers:
- name: netdata
image: "netdata/netdata:v1.45.3"
image: "netdata/netdata:edge"
imagePullPolicy: Always
env:
- name: NETDATA_CLAIM_URL
value: "https://api.netdata.cloud"
- name: NETDATA_CLAIM_TOKEN
value: "CIlCwV6GawNWIfhrqMVmPAJixo_BSaGvwVbHKFOCQCHbYG5J8Ac0FDxKrObJ727F1dndg8J-v6apUhzGho6RIOlkrqJ_F7DKodjLqbsSWb7Ta-GSHkkuHcTXidxKxEo5RK0jiqU"
- name: NETDATA_CLAIM_ROOMS
value: "e15a4f12-89d7-4d5b-b588-6658fa835473"
- name: MY_POD_NAME
valueFrom:
fieldRef:
@@ -614,25 +791,25 @@ spec:
fieldPath: metadata.namespace
- name: NETDATA_LISTENER_PORT
value: '19999'
- name: NETDATA_PLUGINS_GOD_WATCH_PATH
value: "/etc/netdata/go.d/sd/go.d.yml"
ports:
- name: http
containerPort: 19999
protocol: TCP
livenessProbe:
httpGet:
path: /api/v1/info
port: http
exec:
command:
- /usr/sbin/netdatacli
- ping
initialDelaySeconds: 0
failureThreshold: 3
periodSeconds: 30
successThreshold: 1
timeoutSeconds: 1
readinessProbe:
httpGet:
path: /api/v1/info
port: http
exec:
command:
- /usr/sbin/netdatacli
- ping
initialDelaySeconds: 0
failureThreshold: 3
periodSeconds: 30
@@ -654,6 +831,18 @@ spec:
- name: configmap
mountPath: /etc/netdata/go.d/k8s_kubelet.conf
subPath: kubelet
- name: configmap
mountPath: /etc/netdata/go.d/dns_query.conf
subPath: dnsquery
- name: configmap
mountPath: /etc/netdata/go.d/x509check.conf
subPath: x509check
- name: configmap
mountPath: /etc/netdata/go.d/web_log.conf
subPath: web_log
- name: configmap
mountPath: /etc/netdata/otel.yaml
subPath: otel
- name: configmap
mountPath: /etc/netdata/go.d/k8s_kubeproxy.conf
subPath: kubeproxy
@@ -665,8 +854,9 @@ spec:
subPath: stream
- name: persistencevarlibdir
mountPath: /var/lib/netdata
- name: sd-shared
mountPath: "/etc/netdata/go.d/sd/"
- name: sdconfigmap
mountPath: "/etc/netdata/go.d/sd/k8s.conf"
subPath: config.yml
securityContext:
capabilities:
add:
@@ -674,30 +864,6 @@ spec:
- SYS_ADMIN
resources:
{}
- name: sd
image: "netdata/agent-sd:v0.2.9"
imagePullPolicy: Always
volumeMounts:
- name: sd-shared
mountPath: "/export/"
resources:
limits:
cpu: 50m
memory: 150Mi
requests:
cpu: 50m
memory: 100Mi
env:
- name: NETDATA_SD_CONFIG_MAP
value: "netdata-child-sd-config-map:config.yml"
- name: MY_POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: MY_NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
tolerations:
- effect: NoSchedule
operator: Exists
@@ -727,8 +893,10 @@ spec:
hostPath:
path: /var/lib/netdata-k8s-child/var/lib/netdata
type: DirectoryOrCreate
- name: sd-shared
emptyDir: { }
- name: sdconfigmap
configMap:
name: netdata-child-sd-config-map
optional: true
dnsPolicy: ClusterFirstWithHostNet
---
# Source: netdata/templates/k8s-state/deployment.yaml
@@ -739,7 +907,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
role: k8sState
@@ -755,7 +923,7 @@ spec:
metadata:
annotations:
container.apparmor.security.beta.kubernetes.io/netdata: unconfined
checksum/config: 4376cdf86723c0d12ab8579f65590ceb5471790269a6e69073e5ca43f5a3622e
checksum/config: 695eec71873af73b22884232dbacc2917e0b13dad40de683b317b1105911c469
labels:
app: netdata
release: netdata
@@ -768,9 +936,17 @@ spec:
initContainers:
containers:
- name: netdata
image: "netdata/netdata:v1.45.3"
image: "netdata/netdata:edge"
imagePullPolicy: Always
env:
- name: MY_POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: MY_POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: NETDATA_LISTENER_PORT
value: '19999'
ports:
@@ -778,18 +954,20 @@ spec:
containerPort: 19999
protocol: TCP
livenessProbe:
httpGet:
path: /api/v1/info
port: http
exec:
command:
- /usr/sbin/netdatacli
- ping
initialDelaySeconds: 0
failureThreshold: 3
periodSeconds: 30
successThreshold: 1
timeoutSeconds: 1
readinessProbe:
httpGet:
path: /api/v1/info
port: http
exec:
command:
- /usr/sbin/netdatacli
- ping
initialDelaySeconds: 0
failureThreshold: 3
periodSeconds: 30
@@ -801,6 +979,9 @@ spec:
- name: configmap
mountPath: /etc/netdata/go.d.conf
subPath: go.d
- name: configmap
mountPath: /etc/netdata/go.d/httpcheck.conf
subPath: httpcheck
- name: configmap
mountPath: /etc/netdata/go.d/k8s_state.conf
subPath: go.d-k8s_state
@@ -840,7 +1021,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
role: parent
@@ -860,17 +1041,24 @@ spec:
release: netdata
role: parent
annotations:
checksum/config: ddb93add72023d942465d0159ea638549f579f448126dd65a6212c1f8a13b9a3
checksum/config: 7ae6d956c6b1ddf923e6d707aecca99fc502fa2fba6feb22b7845f5840edd58e
spec:
securityContext:
fsGroup: 201
serviceAccountName: netdata
initContainers:
[]
containers:
- name: netdata
image: "netdata/netdata:v1.45.3"
image: "netdata/netdata:edge"
imagePullPolicy: Always
env:
- name: NETDATA_CLAIM_URL
value: "https://api.netdata.cloud"
- name: NETDATA_CLAIM_TOKEN
value: "CIlCwV6GawNWIfhrqMVmPAJixo_BSaGvwVbHKFOCQCHbYG5J8Ac0FDxKrObJ727F1dndg8J-v6apUhzGho6RIOlkrqJ_F7DKodjLqbsSWb7Ta-GSHkkuHcTXidxKxEo5RK0jiqU"
- name: NETDATA_CLAIM_ROOMS
value: "e15a4f12-89d7-4d5b-b588-6658fa835473"
- name: MY_POD_NAME
valueFrom:
fieldRef:
@@ -886,23 +1074,28 @@ spec:
containerPort: 19999
protocol: TCP
livenessProbe:
httpGet:
path: /api/v1/info
port: http
exec:
command:
- /usr/sbin/netdatacli
- ping
initialDelaySeconds: 0
failureThreshold: 3
periodSeconds: 30
successThreshold: 1
timeoutSeconds: 1
readinessProbe:
httpGet:
path: /api/v1/info
port: http
exec:
command:
- /usr/sbin/netdatacli
- ping
initialDelaySeconds: 0
failureThreshold: 3
periodSeconds: 30
successThreshold: 1
timeoutSeconds: 1
securityContext:
runAsUser: 201
runAsGroup: 201
volumeMounts:
- name: os-release
mountPath: /host/etc/os-release
@@ -950,7 +1143,7 @@ metadata:
namespace: netdata
labels:
app: netdata
chart: netdata-3.7.88
chart: netdata-3.7.170
release: netdata
heritage: Helm
annotations: