Compare commits
13
Commits
7cbcaca6d4
...
good
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d5eddaf2c2 | ||
|
|
9b986a4953 | ||
|
|
1a2a820273 | ||
|
|
af850e4bd5 | ||
|
|
dddb91e2a7 | ||
|
|
9a125bb29d | ||
|
|
1420a0b354 | ||
|
|
3ae6d51fb2 | ||
|
|
f6a5dffe3c | ||
|
|
7ea3134ff8 | ||
|
|
e130feda8c | ||
|
|
eed6e01cee | ||
|
|
99059ae603 |
@@ -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
|
||||
|
||||
@@ -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
|
||||
@@ -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:
|
||||
Reference in New Issue
Block a user