migrate from kubespray to library helm client
This commit is contained in:
@@ -1,66 +1,55 @@
|
||||
- name: fluent-operator
|
||||
namespace: observability
|
||||
create_namespace: true
|
||||
chart_ref: {{ .Modules.Observability.Logging.Operator.ChartRef }}
|
||||
chart_version: {{ .Modules.Observability.Logging.Operator.ChartVersion }}
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Logging.Enabled }}
|
||||
release_state: "present"
|
||||
{{- else }}
|
||||
release_state: "absent"
|
||||
{{- end }}
|
||||
values:
|
||||
# Set this to containerd or crio if you want to collect CRI format logs
|
||||
containerRuntime: {{ .Orchestrator.ContainerEngine.Type }}
|
||||
Kubernetes: false
|
||||
# Set this to containerd or crio if you want to collect CRI format logs
|
||||
containerRuntime: {{ .Orchestrator.ContainerEngine.Type }}
|
||||
Kubernetes: false
|
||||
|
||||
operator:
|
||||
initcontainer:
|
||||
repository: "{{ .Modules.Observability.Logging.Operator.InitContainer.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.Operator.InitContainer.Tag }}"
|
||||
operator:
|
||||
initcontainer:
|
||||
repository: "{{ .Modules.Observability.Logging.Operator.InitContainer.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.Operator.InitContainer.Tag }}"
|
||||
|
||||
resources:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
resources:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
|
||||
requests:
|
||||
cpu: 50m
|
||||
memory: 64Mi
|
||||
container:
|
||||
repository: "{{ .Modules.Observability.Logging.Operator.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.Operator.Tag }}"
|
||||
resources:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 60Mi
|
||||
imagePullSecrets: []
|
||||
labels: {}
|
||||
logPath:
|
||||
# The operator currently assumes a Docker container runtime path for the logs as the default, for other container runtimes you can set the location explicitly below.
|
||||
# crio: /var/log
|
||||
containerd: /var/log
|
||||
disableComponentControllers: ""
|
||||
requests:
|
||||
cpu: 50m
|
||||
memory: 64Mi
|
||||
container:
|
||||
repository: "{{ .Modules.Observability.Logging.Operator.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.Operator.Tag }}"
|
||||
resources:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 60Mi
|
||||
imagePullSecrets: []
|
||||
labels: {}
|
||||
logPath:
|
||||
# The operator currently assumes a Docker container runtime path for the logs as the default, for other container runtimes you can set the location explicitly below.
|
||||
# crio: /var/log
|
||||
containerd: /var/log
|
||||
disableComponentControllers: ""
|
||||
|
||||
fluentbit:
|
||||
crdsEnable: true
|
||||
enable: false
|
||||
fluentbit:
|
||||
crdsEnable: true
|
||||
enable: false
|
||||
|
||||
fluentd:
|
||||
crdsEnable: true
|
||||
enable: false
|
||||
name: fluentd
|
||||
# Valid modes include "collector" and "agent".
|
||||
# The "collector" mode will deploy Fluentd as a StatefulSet as before.
|
||||
# The new "agent" mode will deploy Fluentd as a DaemonSet.
|
||||
mode: "agent"
|
||||
port: 24224
|
||||
image:
|
||||
repository: "{{ .Modules.Observability.Logging.Fluentd.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.Fluentd.Tag }}"
|
||||
fluentd:
|
||||
crdsEnable: true
|
||||
enable: false
|
||||
name: fluentd
|
||||
# Valid modes include "collector" and "agent".
|
||||
# The "collector" mode will deploy Fluentd as a StatefulSet as before.
|
||||
# The new "agent" mode will deploy Fluentd as a DaemonSet.
|
||||
mode: "agent"
|
||||
port: 24224
|
||||
image:
|
||||
repository: "{{ .Modules.Observability.Logging.Fluentd.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.Fluentd.Tag }}"
|
||||
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
namespaceOverride: ""
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
namespaceOverride: ""
|
||||
|
||||
@@ -1,200 +1,188 @@
|
||||
- name: loki
|
||||
namespace: observability
|
||||
create_namespace: true
|
||||
chart_ref: {{ .Modules.Observability.Logging.Loki.ChartRef }}
|
||||
chart_version: {{ .Modules.Observability.Logging.Loki.ChartVersion }}
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Logging.Enabled }}
|
||||
release_state: "present"
|
||||
{{- else }}
|
||||
release_state: "absent"
|
||||
{{- end }}
|
||||
values:
|
||||
loki:
|
||||
image:
|
||||
registry: {{ .Modules.Observability.Logging.Loki.Registry }}
|
||||
repository: {{ .Modules.Observability.Logging.Loki.Image }}
|
||||
tag: {{ .Modules.Observability.Logging.Loki.Tag }}
|
||||
podAnnotations:
|
||||
app.kubernetes.io/component: "loki"
|
||||
auth_enabled: false
|
||||
commonConfig:
|
||||
replication_factor: 1
|
||||
storage:
|
||||
type: 'filesystem'
|
||||
loki:
|
||||
image:
|
||||
registry: {{ .Modules.Observability.Logging.Loki.Registry }}
|
||||
repository: {{ .Modules.Observability.Logging.Loki.Image }}
|
||||
tag: {{ .Modules.Observability.Logging.Loki.Tag }}
|
||||
podAnnotations:
|
||||
app.kubernetes.io/component: "loki"
|
||||
auth_enabled: false
|
||||
commonConfig:
|
||||
replication_factor: 1
|
||||
storage:
|
||||
type: 'filesystem'
|
||||
|
||||
frontend:
|
||||
max_outstanding_per_tenant: 10000
|
||||
frontend:
|
||||
max_outstanding_per_tenant: 10000
|
||||
|
||||
limits_config:
|
||||
reject_old_samples: false
|
||||
split_queries_by_interval: 15m
|
||||
max_query_parallelism: 32
|
||||
max_query_series: 10000
|
||||
retention_period: {{ .Modules.Observability.Logging.Loki.Persistence.Retention }}
|
||||
limits_config:
|
||||
reject_old_samples: false
|
||||
split_queries_by_interval: 15m
|
||||
max_query_parallelism: 32
|
||||
max_query_series: 10000
|
||||
retention_period: {{ .Modules.Observability.Logging.Loki.Persistence.Retention }}
|
||||
|
||||
compactor:
|
||||
compaction_interval: 10m
|
||||
retention_enabled: true
|
||||
retention_delete_delay: 2h
|
||||
compactor:
|
||||
compaction_interval: 10m
|
||||
retention_enabled: true
|
||||
retention_delete_delay: 2h
|
||||
|
||||
querier:
|
||||
max_concurrent: 2048
|
||||
querier:
|
||||
max_concurrent: 2048
|
||||
|
||||
query_scheduler:
|
||||
max_outstanding_requests_per_tenant: 10000
|
||||
query_scheduler:
|
||||
max_outstanding_requests_per_tenant: 10000
|
||||
|
||||
rulerConfig:
|
||||
storage:
|
||||
type: local
|
||||
local:
|
||||
directory: /var/loki/rules
|
||||
rule_path: /tmp/rules
|
||||
rulerConfig:
|
||||
storage:
|
||||
type: local
|
||||
local:
|
||||
directory: /var/loki/rules
|
||||
rule_path: /tmp/rules
|
||||
|
||||
alertmanager_url: {{ .Modules.Observability.Logging.Loki.AlertManagerUrl }}
|
||||
alertmanager_url: {{ .Modules.Observability.Logging.Loki.AlertManagerUrl }}
|
||||
|
||||
|
||||
singleBinary:
|
||||
replicas: 1
|
||||
singleBinary:
|
||||
replicas: 1
|
||||
|
||||
extraVolumes:
|
||||
- name: loki-default-rules
|
||||
configMap:
|
||||
name: loki-default-alerting-rules
|
||||
extraVolumes:
|
||||
- name: loki-default-rules
|
||||
configMap:
|
||||
name: loki-default-alerting-rules
|
||||
|
||||
extraVolumeMounts:
|
||||
- name: loki-default-rules
|
||||
mountPath: /var/loki/rules
|
||||
extraVolumeMounts:
|
||||
- name: loki-default-rules
|
||||
mountPath: /var/loki/rules
|
||||
|
||||
|
||||
write:
|
||||
persistence:
|
||||
volumeClaimsEnabled: true
|
||||
storageClass: "{{ .Modules.Observability.Logging.Loki.Persistence.StorageClass }}"
|
||||
size: {{ .Modules.Observability.Logging.Loki.Persistence.StorageSize }}
|
||||
write:
|
||||
persistence:
|
||||
volumeClaimsEnabled: true
|
||||
storageClass: "{{ .Modules.Observability.Logging.Loki.Persistence.StorageClass }}"
|
||||
size: {{ .Modules.Observability.Logging.Loki.Persistence.StorageSize }}
|
||||
|
||||
test:
|
||||
enabled: false
|
||||
test:
|
||||
enabled: false
|
||||
|
||||
gateway:
|
||||
enabled: false
|
||||
gateway:
|
||||
enabled: false
|
||||
|
||||
monitoring:
|
||||
selfMonitoring:
|
||||
enabled: false
|
||||
grafanaAgent:
|
||||
installOperator: false
|
||||
lokiCanary:
|
||||
enabled: false
|
||||
rules:
|
||||
enabled: true
|
||||
alerting: true
|
||||
additionalGroups: {}
|
||||
monitoring:
|
||||
selfMonitoring:
|
||||
enabled: false
|
||||
grafanaAgent:
|
||||
installOperator: false
|
||||
lokiCanary:
|
||||
enabled: false
|
||||
rules:
|
||||
enabled: true
|
||||
alerting: true
|
||||
|
||||
extraObjects:
|
||||
- apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: loki-default-alerting-rules
|
||||
labels:
|
||||
loki_rule: ""
|
||||
extraObjects:
|
||||
- apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: loki-default-alerting-rules
|
||||
labels:
|
||||
loki_rule: ""
|
||||
|
||||
data:
|
||||
loki-default-alerting-rules.yaml: |-
|
||||
groups:
|
||||
{{- .Modules.Observability.Logging.Loki.AdditionalRulesGroups | toString | nindent 14 -}}
|
||||
- name: kube-events-alerts
|
||||
rules:
|
||||
- alert: FailedEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `Failed` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: FailedEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: Failed events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
data:
|
||||
loki-default-alerting-rules.yaml: |-
|
||||
groups:
|
||||
{{- .Modules.Observability.Logging.Loki.AdditionalRulesGroups | toString | nindent 14 -}}
|
||||
- name: kube-events-alerts
|
||||
rules:
|
||||
- alert: FailedEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `Failed` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: FailedEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: Failed events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
|
||||
- alert: OOMKilledEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `OOMKilled` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: OOMKilledEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: OOMKilled events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
- alert: OOMKilledEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `OOMKilled` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: OOMKilledEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: OOMKilled events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
|
||||
- alert: EvictedEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `Evicted` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: EvictedEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: Evicted events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
- alert: EvictedEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `Evicted` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: EvictedEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: Evicted events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
|
||||
- alert: ImagePullBackOffEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `ImagePullBackOff` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: ImagePullBackOffEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: ImagePullBackOff events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
- alert: ImagePullBackOffEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `ImagePullBackOff` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: ImagePullBackOffEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: ImagePullBackOff events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
|
||||
- alert: BackOffEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `BackOff` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: BackOffEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: BackOff events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
sidecar:
|
||||
rules:
|
||||
enabled: true
|
||||
# -- Label that the configmaps/secrets with rules will be marked with.
|
||||
label: loki_rule
|
||||
# -- Label value that the configmaps/secrets with rules will be set to.
|
||||
labelValue: ""
|
||||
# -- Folder into which the rules will be placed.
|
||||
folder: /var/loki/rules
|
||||
# -- Comma separated list of namespaces. If specified, the sidecar will search for config-maps/secrets inside these namespaces.
|
||||
# Otherwise the namespace in which the sidecar is running will be used.
|
||||
# It's also possible to specify 'ALL' to search in all namespaces.
|
||||
searchNamespace: 'ALL'
|
||||
# -- Method to use to detect ConfigMap changes. With WATCH the sidecar will do a WATCH request, with SLEEP it will list all ConfigMaps, then sleep for 60 seconds.
|
||||
watchMethod: WATCH
|
||||
# -- Search in configmap, secret, or both.
|
||||
resource: both
|
||||
# -- Absolute path to the shell script to execute after a configmap or secret has been reloaded.
|
||||
script: null
|
||||
# -- WatchServerTimeout: request to the server, asking it to cleanly close the connection after that.
|
||||
# defaults to 60sec; much higher values like 3600 seconds (1h) are feasible for non-Azure K8S.
|
||||
watchServerTimeout: 60
|
||||
#
|
||||
# -- WatchClientTimeout: is a client-side timeout, configuring your local socket.
|
||||
# If you have a network outage dropping all packets with no RST/FIN,
|
||||
# this is how long your client waits before realizing & dropping the connection.
|
||||
# Defaults to 66sec.
|
||||
watchClientTimeout: 60
|
||||
# -- Log level of the sidecar container.
|
||||
logLevel: INFO
|
||||
- alert: BackOffEventsOccured
|
||||
expr: |
|
||||
count(rate({logs_type="kube-events"} | json reason="reason", event_type="event_type" | event_type = `Warning` | reason = `BackOff` [1h])) > 0
|
||||
for: 1m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
alertname: BackOffEventsOccured
|
||||
instance: kube-cluster
|
||||
jobName: kube_events
|
||||
summary: BackOff events occured in cluster
|
||||
addDefaultUrl: "true"
|
||||
sidecar:
|
||||
rules:
|
||||
enabled: true
|
||||
# -- Label that the configmaps/secrets with rules will be marked with.
|
||||
label: loki_rule
|
||||
# -- Label value that the configmaps/secrets with rules will be set to.
|
||||
labelValue: ""
|
||||
# -- Folder into which the rules will be placed.
|
||||
folder: /var/loki/rules
|
||||
# -- Comma separated list of namespaces. If specified, the sidecar will search for config-maps/secrets inside these namespaces.
|
||||
# Otherwise the namespace in which the sidecar is running will be used.
|
||||
# It's also possible to specify 'ALL' to search in all namespaces.
|
||||
searchNamespace: 'ALL'
|
||||
# -- Method to use to detect ConfigMap changes. With WATCH the sidecar will do a WATCH request, with SLEEP it will list all ConfigMaps, then sleep for 60 seconds.
|
||||
watchMethod: WATCH
|
||||
# -- Search in configmap, secret, or both.
|
||||
resource: both
|
||||
# -- Absolute path to the shell script to execute after a configmap or secret has been reloaded.
|
||||
script: null
|
||||
# -- WatchServerTimeout: request to the server, asking it to cleanly close the connection after that.
|
||||
# defaults to 60sec; much higher values like 3600 seconds (1h) are feasible for non-Azure K8S.
|
||||
watchServerTimeout: 60
|
||||
#
|
||||
# -- WatchClientTimeout: is a client-side timeout, configuring your local socket.
|
||||
# If you have a network outage dropping all packets with no RST/FIN,
|
||||
# this is how long your client waits before realizing & dropping the connection.
|
||||
# Defaults to 66sec.
|
||||
watchClientTimeout: 60
|
||||
# -- Log level of the sidecar container.
|
||||
logLevel: INFO
|
||||
|
||||
@@ -1,203 +1,192 @@
|
||||
- name: metrics-server
|
||||
namespace: kube-system
|
||||
create_namespace: true
|
||||
chart_ref: {{ .Modules.Observability.Monitoring.MetricsServer.ChartRef }}
|
||||
chart_version: {{ .Modules.Observability.Monitoring.MetricsServer.ChartVersion }}
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Monitoring.Enabled }}
|
||||
release_state: "present"
|
||||
{{- else }}
|
||||
release_state: "absent"
|
||||
{{- end }}
|
||||
values:
|
||||
image:
|
||||
repository: {{.Modules.Observability.Monitoring.MetricsServer.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.MetricsServer.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
image:
|
||||
repository: {{.Modules.Observability.Monitoring.MetricsServer.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.MetricsServer.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
imagePullSecrets: []
|
||||
# - name: registrySecretName
|
||||
imagePullSecrets: []
|
||||
# - name: registrySecretName
|
||||
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
serviceAccount:
|
||||
# Specifies whether a service account should be created
|
||||
create: true
|
||||
# Annotations to add to the service account
|
||||
annotations: {}
|
||||
# The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the fullname template
|
||||
name: ""
|
||||
# The list of secrets mountable by this service account.
|
||||
# See https://kubernetes.io/docs/reference/labels-annotations-taints/#enforce-mountable-secrets
|
||||
secrets: []
|
||||
serviceAccount:
|
||||
# Specifies whether a service account should be created
|
||||
create: true
|
||||
# Annotations to add to the service account
|
||||
annotations: {}
|
||||
# The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the fullname template
|
||||
name: ""
|
||||
# The list of secrets mountable by this service account.
|
||||
# See https://kubernetes.io/docs/reference/labels-annotations-taints/#enforce-mountable-secrets
|
||||
secrets: []
|
||||
|
||||
rbac:
|
||||
# Specifies whether RBAC resources should be created
|
||||
create: true
|
||||
pspEnabled: false
|
||||
rbac:
|
||||
# Specifies whether RBAC resources should be created
|
||||
create: true
|
||||
pspEnabled: false
|
||||
|
||||
apiService:
|
||||
create: true
|
||||
# Annotations to add to the API service
|
||||
annotations: {}
|
||||
# Specifies whether to skip TLS verification
|
||||
insecureSkipTLSVerify: true
|
||||
# The PEM encoded CA bundle for TLS verification
|
||||
caBundle: ""
|
||||
apiService:
|
||||
create: true
|
||||
# Annotations to add to the API service
|
||||
annotations: {}
|
||||
# Specifies whether to skip TLS verification
|
||||
insecureSkipTLSVerify: true
|
||||
# The PEM encoded CA bundle for TLS verification
|
||||
caBundle: ""
|
||||
|
||||
commonLabels: {}
|
||||
podLabels:
|
||||
"app.kubernetes.io/component": "metrics-server"
|
||||
podAnnotations: {}
|
||||
commonLabels: {}
|
||||
podLabels:
|
||||
"app.kubernetes.io/component": "metrics-server"
|
||||
podAnnotations: {}
|
||||
|
||||
podSecurityContext: {}
|
||||
podSecurityContext: {}
|
||||
|
||||
securityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
securityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
|
||||
priorityClassName: system-cluster-critical
|
||||
priorityClassName: system-cluster-critical
|
||||
|
||||
containerPort: 10250
|
||||
containerPort: 10250
|
||||
|
||||
hostNetwork:
|
||||
# Specifies if metrics-server should be started in hostNetwork mode.
|
||||
#
|
||||
# You would require this enabled if you use alternate overlay networking for pods and
|
||||
# API server unable to communicate with metrics-server. As an example, this is required
|
||||
# if you use Weave network on EKS
|
||||
enabled: false
|
||||
hostNetwork:
|
||||
# Specifies if metrics-server should be started in hostNetwork mode.
|
||||
#
|
||||
# You would require this enabled if you use alternate overlay networking for pods and
|
||||
# API server unable to communicate with metrics-server. As an example, this is required
|
||||
# if you use Weave network on EKS
|
||||
enabled: false
|
||||
|
||||
replicas: 1
|
||||
replicas: 1
|
||||
|
||||
revisionHistoryLimit:
|
||||
revisionHistoryLimit:
|
||||
|
||||
updateStrategy: {}
|
||||
# type: RollingUpdate
|
||||
# rollingUpdate:
|
||||
# maxSurge: 0
|
||||
# maxUnavailable: 1
|
||||
updateStrategy: {}
|
||||
# type: RollingUpdate
|
||||
# rollingUpdate:
|
||||
# maxSurge: 0
|
||||
# maxUnavailable: 1
|
||||
|
||||
podDisruptionBudget:
|
||||
# https://kubernetes.io/docs/tasks/run-application/configure-pdb/
|
||||
enabled: false
|
||||
minAvailable:
|
||||
maxUnavailable:
|
||||
podDisruptionBudget:
|
||||
# https://kubernetes.io/docs/tasks/run-application/configure-pdb/
|
||||
enabled: false
|
||||
minAvailable:
|
||||
maxUnavailable:
|
||||
|
||||
defaultArgs:
|
||||
- --cert-dir=/tmp
|
||||
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
|
||||
- --kubelet-use-node-status-port
|
||||
- --metric-resolution=15s
|
||||
- --kubelet-insecure-tls
|
||||
defaultArgs:
|
||||
- --cert-dir=/tmp
|
||||
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
|
||||
- --kubelet-use-node-status-port
|
||||
- --metric-resolution=15s
|
||||
- --kubelet-insecure-tls
|
||||
|
||||
args: []
|
||||
args: []
|
||||
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /livez
|
||||
port: https
|
||||
scheme: HTTPS
|
||||
initialDelaySeconds: 0
|
||||
periodSeconds: 10
|
||||
failureThreshold: 3
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /livez
|
||||
port: https
|
||||
scheme: HTTPS
|
||||
initialDelaySeconds: 0
|
||||
periodSeconds: 10
|
||||
failureThreshold: 3
|
||||
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /readyz
|
||||
port: https
|
||||
scheme: HTTPS
|
||||
initialDelaySeconds: 20
|
||||
periodSeconds: 10
|
||||
failureThreshold: 3
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /readyz
|
||||
port: https
|
||||
scheme: HTTPS
|
||||
initialDelaySeconds: 20
|
||||
periodSeconds: 10
|
||||
failureThreshold: 3
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 443
|
||||
annotations: {}
|
||||
labels: {}
|
||||
# Add these labels to have metrics-server show up in `kubectl cluster-info`
|
||||
# kubernetes.io/cluster-service: "true"
|
||||
# kubernetes.io/name: "Metrics-server"
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 443
|
||||
annotations: {}
|
||||
labels: {}
|
||||
# Add these labels to have metrics-server show up in `kubectl cluster-info`
|
||||
# kubernetes.io/cluster-service: "true"
|
||||
# kubernetes.io/name: "Metrics-server"
|
||||
|
||||
addonResizer:
|
||||
enabled: false
|
||||
image:
|
||||
repository: registry.k8s.io/autoscaling/addon-resizer
|
||||
tag: 1.8.20
|
||||
securityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
resources:
|
||||
requests:
|
||||
cpu: 40m
|
||||
memory: 25Mi
|
||||
limits:
|
||||
cpu: 40m
|
||||
memory: 25Mi
|
||||
nanny:
|
||||
cpu: 0m
|
||||
extraCpu: 1m
|
||||
memory: 0Mi
|
||||
extraMemory: 2Mi
|
||||
minClusterSize: 100
|
||||
pollPeriod: 300000
|
||||
threshold: 5
|
||||
addonResizer:
|
||||
enabled: false
|
||||
image:
|
||||
repository: registry.k8s.io/autoscaling/addon-resizer
|
||||
tag: 1.8.20
|
||||
securityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
resources:
|
||||
requests:
|
||||
cpu: 40m
|
||||
memory: 25Mi
|
||||
limits:
|
||||
cpu: 40m
|
||||
memory: 25Mi
|
||||
nanny:
|
||||
cpu: 0m
|
||||
extraCpu: 1m
|
||||
memory: 0Mi
|
||||
extraMemory: 2Mi
|
||||
minClusterSize: 100
|
||||
pollPeriod: 300000
|
||||
threshold: 5
|
||||
|
||||
metrics:
|
||||
enabled: true
|
||||
metrics:
|
||||
enabled: true
|
||||
|
||||
serviceMonitor:
|
||||
enabled: true
|
||||
additionalLabels: {}
|
||||
interval: 1m
|
||||
scrapeTimeout: 10s
|
||||
metricRelabelings: []
|
||||
relabelings: []
|
||||
serviceMonitor:
|
||||
enabled: true
|
||||
additionalLabels: {}
|
||||
interval: 1m
|
||||
scrapeTimeout: 10s
|
||||
metricRelabelings: []
|
||||
relabelings: []
|
||||
|
||||
# See https://github.com/kubernetes-sigs/metrics-server#scaling
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 200Mi
|
||||
# limits:
|
||||
# cpu:
|
||||
# memory:
|
||||
# See https://github.com/kubernetes-sigs/metrics-server#scaling
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 200Mi
|
||||
# limits:
|
||||
# cpu:
|
||||
# memory:
|
||||
|
||||
extraVolumeMounts: []
|
||||
extraVolumeMounts: []
|
||||
|
||||
extraVolumes: []
|
||||
extraVolumes: []
|
||||
|
||||
nodeSelector: {}
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
affinity: {}
|
||||
|
||||
topologySpreadConstraints: []
|
||||
topologySpreadConstraints: []
|
||||
|
||||
dnsConfig: {}
|
||||
dnsConfig: {}
|
||||
|
||||
# Annotations to add to the deployment
|
||||
deploymentAnnotations: {}
|
||||
# Annotations to add to the deployment
|
||||
deploymentAnnotations: {}
|
||||
|
||||
schedulerName: ""
|
||||
schedulerName: ""
|
||||
|
||||
tmpVolume:
|
||||
emptyDir: {}
|
||||
tmpVolume:
|
||||
emptyDir: {}
|
||||
|
||||
|
||||
@@ -1,402 +1,391 @@
|
||||
- name: observability
|
||||
namespace: observability
|
||||
create_namespace: true
|
||||
chart_ref: {{ .Modules.Observability.ChartRef }}
|
||||
chart_version: {{ .Modules.Observability.ChartVersion }}
|
||||
{{- if .Modules.Observability.Enabled }}
|
||||
release_state: "present"
|
||||
{{- else }}
|
||||
release_state: "absent"
|
||||
prometheus:
|
||||
enabled: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
serviceMonitor: true
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
clustering:
|
||||
enabled: false
|
||||
replicas: 3
|
||||
shards: 1
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
|
||||
storageClassName: "{{ .Modules.Observability.Monitoring.Prometheus.Persistence.StorageClass }}"
|
||||
storageResources:
|
||||
requests:
|
||||
storage: {{ .Modules.Observability.Monitoring.Prometheus.Persistence.StorageSize }}
|
||||
|
||||
scrapeInterval: {{ .Modules.Observability.Monitoring.Prometheus.ScrapeInterval }}
|
||||
retention: {{ .Modules.Observability.Monitoring.Prometheus.Persistence.Retention }}
|
||||
# serviceNodePort: 30008
|
||||
|
||||
additionalConfigs: |
|
||||
- job_name: "kubelet"
|
||||
scheme: https
|
||||
metrics_path: /metrics/cadvisor
|
||||
tls_config:
|
||||
insecure_skip_verify: true
|
||||
authorization:
|
||||
credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||
kubernetes_sd_configs:
|
||||
- role: node
|
||||
relabel_configs:
|
||||
- action: labelmap
|
||||
regex: __meta_kubernetes_node_label_(.+)
|
||||
|
||||
- job_name: "kubernetes-apiservers"
|
||||
kubernetes_sd_configs:
|
||||
- role: endpoints
|
||||
scheme: https
|
||||
tls_config:
|
||||
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
|
||||
authorization:
|
||||
credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||
relabel_configs:
|
||||
- source_labels:
|
||||
[
|
||||
__meta_kubernetes_namespace,
|
||||
__meta_kubernetes_service_name,
|
||||
__meta_kubernetes_endpoint_port_name,
|
||||
]
|
||||
action: keep
|
||||
regex: default;kubernetes;https
|
||||
|
||||
- job_name: "coredns"
|
||||
kubernetes_sd_configs:
|
||||
- role: endpoints
|
||||
scheme: http
|
||||
relabel_configs:
|
||||
- source_labels:
|
||||
[
|
||||
__meta_kubernetes_namespace,
|
||||
__meta_kubernetes_service_name,
|
||||
__meta_kubernetes_endpoint_port_name,
|
||||
]
|
||||
action: keep
|
||||
regex: kube-system;.*dns.*;metrics
|
||||
|
||||
{{- if .Modules.Observability.Monitoring.Blackbox.Enabled }}
|
||||
- job_name: 'ingress-endpoints'
|
||||
metrics_path: /probe
|
||||
params:
|
||||
module: [https_ok]
|
||||
kubernetes_sd_configs:
|
||||
- role: ingress
|
||||
relabel_configs:
|
||||
- source_labels: [__address__]
|
||||
target_label: __param_target
|
||||
- source_labels: [__param_target]
|
||||
target_label: instance
|
||||
- source_labels:
|
||||
[
|
||||
__meta_kubernetes_ingress_scheme,
|
||||
__address__,
|
||||
__meta_kubernetes_ingress_path,
|
||||
]
|
||||
regex: (.+);(.+);(.+)
|
||||
replacement: https://${2}${3}/
|
||||
target_label: __param_target
|
||||
- target_label: __address__
|
||||
replacement: observability-blackbox-exporter:9115
|
||||
{{- end }}
|
||||
|
||||
alertManager:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.AlertManager.Enabled }}
|
||||
serviceMonitor: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
enableDefaultRules: true
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.AlertManager.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.AlertManager.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
# serviceNodePort: 30009
|
||||
|
||||
configPath: /etc/alertmanager
|
||||
{{- if .Modules.Observability.Monitoring.AlertManager.AdditionalMessageTemplates }}
|
||||
additionalMessageTemplates:
|
||||
{{- .Modules.Observability.Monitoring.AlertManager.AdditionalMessageTemplates | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Modules.Observability.Monitoring.AlertManager.Route }}
|
||||
route:
|
||||
{{- .Modules.Observability.Monitoring.AlertManager.Route | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Modules.Observability.Monitoring.AlertManager.Receivers }}
|
||||
receivers:
|
||||
{{- .Modules.Observability.Monitoring.AlertManager.Receivers | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
values:
|
||||
prometheus:
|
||||
enabled: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
serviceMonitor: true
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
clustering:
|
||||
enabled: false
|
||||
replicas: 3
|
||||
shards: 1
|
||||
blackboxExporter:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.Blackbox.Enabled }}
|
||||
serviceMonitor: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Blackbox.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.Blackbox.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
# serviceNodePort: 30012
|
||||
|
||||
storageClassName: "{{ .Modules.Observability.Monitoring.Prometheus.Persistence.StorageClass }}"
|
||||
storageResources:
|
||||
requests:
|
||||
storage: {{ .Modules.Observability.Monitoring.Prometheus.Persistence.StorageSize }}
|
||||
configPath: /etc/blackbox_exporter
|
||||
additionalModules:
|
||||
|
||||
scrapeInterval: {{ .Modules.Observability.Monitoring.Prometheus.ScrapeInterval }}
|
||||
retention: {{ .Modules.Observability.Monitoring.Prometheus.Persistence.Retention }}
|
||||
# serviceNodePort: 30008
|
||||
|
||||
additionalConfigs: |
|
||||
- job_name: "kubelet"
|
||||
scheme: https
|
||||
metrics_path: /metrics/cadvisor
|
||||
tls_config:
|
||||
insecure_skip_verify: true
|
||||
authorization:
|
||||
credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||
kubernetes_sd_configs:
|
||||
- role: node
|
||||
relabel_configs:
|
||||
- action: labelmap
|
||||
regex: __meta_kubernetes_node_label_(.+)
|
||||
kubeStateMetrics:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.KubeState.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.KubeState.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.KubeState.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
resources:
|
||||
requests:
|
||||
cpu: 30m
|
||||
memory: 120Mi
|
||||
limits:
|
||||
memory: 240Mi
|
||||
cpu: 60m
|
||||
|
||||
- job_name: "kubernetes-apiservers"
|
||||
kubernetes_sd_configs:
|
||||
- role: endpoints
|
||||
scheme: https
|
||||
tls_config:
|
||||
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
|
||||
authorization:
|
||||
credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||
relabel_configs:
|
||||
- source_labels:
|
||||
[
|
||||
__meta_kubernetes_namespace,
|
||||
__meta_kubernetes_service_name,
|
||||
__meta_kubernetes_endpoint_port_name,
|
||||
]
|
||||
action: keep
|
||||
regex: default;kubernetes;https
|
||||
prometheusOperator:
|
||||
enabled: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Operator.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Operator.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
- job_name: "coredns"
|
||||
kubernetes_sd_configs:
|
||||
- role: endpoints
|
||||
scheme: http
|
||||
relabel_configs:
|
||||
- source_labels:
|
||||
[
|
||||
__meta_kubernetes_namespace,
|
||||
__meta_kubernetes_service_name,
|
||||
__meta_kubernetes_endpoint_port_name,
|
||||
]
|
||||
action: keep
|
||||
regex: kube-system;.*dns.*;metrics
|
||||
prometheusConfigReloader:
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Operator.ConfigReloader.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Operator.ConfigReloader.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
{{- if .Modules.Observability.Monitoring.Blackbox.Enabled }}
|
||||
- job_name: 'ingress-endpoints'
|
||||
metrics_path: /probe
|
||||
params:
|
||||
module: [https_ok]
|
||||
kubernetes_sd_configs:
|
||||
- role: ingress
|
||||
relabel_configs:
|
||||
- source_labels: [__address__]
|
||||
target_label: __param_target
|
||||
- source_labels: [__param_target]
|
||||
target_label: instance
|
||||
- source_labels:
|
||||
[
|
||||
__meta_kubernetes_ingress_scheme,
|
||||
__address__,
|
||||
__meta_kubernetes_ingress_path,
|
||||
]
|
||||
regex: (.+);(.+);(.+)
|
||||
replacement: https://${2}${3}/
|
||||
target_label: __param_target
|
||||
- target_label: __address__
|
||||
replacement: observability-blackbox-exporter:9115
|
||||
{{- end }}
|
||||
kubeRbacProxy:
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Operator.KubeRbacProxy.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Operator.KubeRbacProxy.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
alertManager:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.AlertManager.Enabled }}
|
||||
serviceMonitor: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
enableDefaultRules: true
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.AlertManager.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.AlertManager.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
nodeExporter:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.Node.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Node.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Node.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
# serviceNodePort: 30009
|
||||
kubeEventsExporter:
|
||||
enabled: {{ and .Modules.Observability.Logging.Enabled .Modules.Observability.Logging.Events.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Logging.Events.Exporter.Image }}
|
||||
tag: {{ .Modules.Observability.Logging.Events.Exporter.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
lokiAddress: http://loki.observability.svc.cluster.local:3100
|
||||
logLevel: warn
|
||||
logFormat: json
|
||||
kubeQPS: 100
|
||||
kubeBurst: 500
|
||||
maxEventAgeSeconds: 120
|
||||
metricsNamePrefix: event_exporter_
|
||||
|
||||
configPath: /etc/alertmanager
|
||||
{{- if .Modules.Observability.Monitoring.AlertManager.AdditionalMessageTemplates }}
|
||||
additionalMessageTemplates:
|
||||
{{- .Modules.Observability.Monitoring.AlertManager.AdditionalMessageTemplates | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Modules.Observability.Monitoring.AlertManager.Route }}
|
||||
route:
|
||||
{{- .Modules.Observability.Monitoring.AlertManager.Route | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Modules.Observability.Monitoring.AlertManager.Receivers }}
|
||||
receivers:
|
||||
{{- .Modules.Observability.Monitoring.AlertManager.Receivers | toYaml | nindent 8 }}
|
||||
cron:
|
||||
restartSchedule: "{{ .Modules.Observability.Logging.Events.Cron.Schedule }}"
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Logging.Events.Cron.Image }}
|
||||
tag: {{ .Modules.Observability.Logging.Events.Cron.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
additionalRoutes:
|
||||
additionalReceivers:
|
||||
|
||||
grafana:
|
||||
enabled: {{ and .Modules.Observability.Enabled .Modules.Observability.Visualization.Grafana.Enabled }}
|
||||
serviceMonitor: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
domain: &grafanaDomain {{ .Modules.Observability.Visualization.Grafana.Expose.Domain }}
|
||||
path: {{ .Modules.Observability.Visualization.Grafana.Expose.Path }}
|
||||
{{- if eq .Modules.Observability.Visualization.Grafana.Expose.Type "NodePort" }}
|
||||
serviceNodePort: {{ .Modules.Observability.Visualization.Grafana.Expose.NodePortHttp }}
|
||||
{{- end }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Visualization.Grafana.Image }}
|
||||
tag: {{ .Modules.Observability.Visualization.Grafana.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
storageClassName: "{{ .Modules.Observability.Visualization.Grafana.Persistence.StorageClass }}"
|
||||
storageResources:
|
||||
requests:
|
||||
storage: {{ .Modules.Observability.Visualization.Grafana.Persistence.StorageSize }}
|
||||
|
||||
config:
|
||||
server: |
|
||||
enable_gzip = true
|
||||
root_url = {{ if .Modules.Observability.Visualization.Grafana.Expose.Tls.Enabled }}https{{ else }}http{{ end }}://{{ .Modules.Observability.Visualization.Grafana.Expose.Domain }}{{ .Modules.Observability.Visualization.Grafana.Expose.Path }}
|
||||
{{- if not (eq .Modules.Observability.Visualization.Grafana.Expose.Path "/") }}
|
||||
serve_from_sub_path = true
|
||||
{{- end }}
|
||||
|
||||
blackboxExporter:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.Blackbox.Enabled }}
|
||||
serviceMonitor: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Blackbox.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.Blackbox.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
security: |
|
||||
admin_user = admin
|
||||
admin_password = {{ .Modules.AdminPassword }}
|
||||
|
||||
# serviceNodePort: 30012
|
||||
auth: |
|
||||
{{- .Modules.Observability.Visualization.Grafana.Config.Auth | toString | nindent 10 }}
|
||||
|
||||
configPath: /etc/blackbox_exporter
|
||||
additionalModules:
|
||||
authGenericAuth: |
|
||||
{{- .Modules.Observability.Visualization.Grafana.Config.AuthGenericAuth | toString | nindent 10 }}
|
||||
|
||||
|
||||
kubeStateMetrics:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.KubeState.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.KubeState.Image }}
|
||||
tag: "{{ .Modules.Observability.Monitoring.KubeState.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
resources:
|
||||
requests:
|
||||
cpu: 30m
|
||||
memory: 120Mi
|
||||
limits:
|
||||
memory: 240Mi
|
||||
cpu: 60m
|
||||
|
||||
prometheusOperator:
|
||||
enabled: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Operator.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Operator.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
prometheusConfigReloader:
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Operator.ConfigReloader.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Operator.ConfigReloader.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
kubeRbacProxy:
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Prometheus.Operator.KubeRbacProxy.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Prometheus.Operator.KubeRbacProxy.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
nodeExporter:
|
||||
enabled: {{ and .Modules.Observability.Monitoring.Enabled .Modules.Observability.Monitoring.Node.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Monitoring.Node.Image }}
|
||||
tag: {{ .Modules.Observability.Monitoring.Node.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
kubeEventsExporter:
|
||||
enabled: {{ and .Modules.Observability.Logging.Enabled .Modules.Observability.Logging.Events.Enabled }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Logging.Events.Exporter.Image }}
|
||||
tag: {{ .Modules.Observability.Logging.Events.Exporter.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
lokiAddress: http://loki.observability.svc.cluster.local:3100
|
||||
logLevel: warn
|
||||
logFormat: json
|
||||
kubeQPS: 100
|
||||
kubeBurst: 500
|
||||
maxEventAgeSeconds: 120
|
||||
metricsNamePrefix: event_exporter_
|
||||
|
||||
cron:
|
||||
restartSchedule: "{{ .Modules.Observability.Logging.Events.Cron.Schedule }}"
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Logging.Events.Cron.Image }}
|
||||
tag: {{ .Modules.Observability.Logging.Events.Cron.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
additionalRoutes:
|
||||
additionalReceivers:
|
||||
|
||||
grafana:
|
||||
enabled: {{ and .Modules.Observability.Enabled .Modules.Observability.Visualization.Grafana.Enabled }}
|
||||
serviceMonitor: {{ .Modules.Observability.Monitoring.Enabled }}
|
||||
domain: &grafanaDomain {{ .Modules.Observability.Visualization.Grafana.Expose.Domain }}
|
||||
path: {{ .Modules.Observability.Visualization.Grafana.Expose.Path }}
|
||||
{{- if eq .Modules.Observability.Visualization.Grafana.Expose.Type "NodePort" }}
|
||||
serviceNodePort: {{ .Modules.Observability.Visualization.Grafana.Expose.NodePortHttp }}
|
||||
additionalDatasources:
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Logging.Enabled }}
|
||||
- name: Kube-loki
|
||||
type: loki
|
||||
uid: P2895588539814C92
|
||||
access: proxy
|
||||
url: http://loki:3100
|
||||
editable: false
|
||||
basicAuth: false
|
||||
isDefault: false
|
||||
jsonData:
|
||||
maxLines: 1000
|
||||
{{- end }}
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Visualization.Grafana.Image }}
|
||||
tag: {{ .Modules.Observability.Visualization.Grafana.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
storageClassName: "{{ .Modules.Observability.Visualization.Grafana.Persistence.StorageClass }}"
|
||||
storageResources:
|
||||
requests:
|
||||
storage: {{ .Modules.Observability.Visualization.Grafana.Persistence.StorageSize }}
|
||||
|
||||
config:
|
||||
server: |
|
||||
enable_gzip = true
|
||||
root_url = {{ if .Modules.Observability.Visualization.Grafana.Expose.Tls.Enabled }}https{{ else }}http{{ end }}://{{ .Modules.Observability.Visualization.Grafana.Expose.Domain }}{{ .Modules.Observability.Visualization.Grafana.Expose.Path }}
|
||||
{{- if not (eq .Modules.Observability.Visualization.Grafana.Expose.Path "/") }}
|
||||
serve_from_sub_path = true
|
||||
{{- end }}
|
||||
|
||||
security: |
|
||||
admin_user = admin
|
||||
admin_password = {{ .Modules.AdminPassword }}
|
||||
|
||||
auth: |
|
||||
{{- .Modules.Observability.Visualization.Grafana.Config.Auth | toString | nindent 10 }}
|
||||
|
||||
authGenericAuth: |
|
||||
{{- .Modules.Observability.Visualization.Grafana.Config.AuthGenericAuth | toString | nindent 10 }}
|
||||
|
||||
additionalDatasources:
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Logging.Enabled }}
|
||||
- name: Kube-loki
|
||||
type: loki
|
||||
uid: P2895588539814C92
|
||||
access: proxy
|
||||
url: http://loki:3100
|
||||
editable: false
|
||||
basicAuth: false
|
||||
isDefault: false
|
||||
jsonData:
|
||||
maxLines: 1000
|
||||
{{- end }}
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Tracing.Enabled }}
|
||||
- name: Kube-jaeger-query
|
||||
type: jaeger
|
||||
access: proxy
|
||||
url: http://tempo:16686
|
||||
editable: false
|
||||
basicAuth: false
|
||||
isDefault: false
|
||||
{{- end }}
|
||||
{{- if .Modules.Observability.Visualization.Grafana.Config.AdditionalDatasources }}
|
||||
{{- .Modules.Observability.Visualization.Grafana.Config.AdditionalDatasources | toYaml | nindent 10 }}
|
||||
{{- end }}
|
||||
|
||||
opentelemetryCollector:
|
||||
enabled: {{ and .Modules.Observability.Enabled .Modules.Observability.Tracing.Enabled }}
|
||||
serviceMonitor: true
|
||||
config: |
|
||||
receivers:
|
||||
otlp:
|
||||
protocols:
|
||||
grpc:
|
||||
http:
|
||||
exporters:
|
||||
otlphttp:
|
||||
endpoint: http://tempo:4318
|
||||
service:
|
||||
telemetry:
|
||||
logs:
|
||||
level: "debug"
|
||||
pipelines:
|
||||
traces:
|
||||
receivers: [otlp]
|
||||
exporters: [otlphttp]
|
||||
|
||||
ingress:
|
||||
{{- if and .Modules.Observability.Visualization.Grafana.Enabled (eq .Modules.Observability.Visualization.Grafana.Expose.Type "ingress") }}
|
||||
enabled: true
|
||||
{{- else }}
|
||||
enabled: false
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Tracing.Enabled }}
|
||||
- name: Kube-jaeger-query
|
||||
type: jaeger
|
||||
access: proxy
|
||||
url: http://tempo:16686
|
||||
editable: false
|
||||
basicAuth: false
|
||||
isDefault: false
|
||||
{{- end }}
|
||||
{{- if .Modules.Observability.Visualization.Grafana.Config.AdditionalDatasources }}
|
||||
{{- .Modules.Observability.Visualization.Grafana.Config.AdditionalDatasources | toYaml | nindent 10 }}
|
||||
{{- end }}
|
||||
accountEmail: {{ .Modules.Additional.CertManager.AccountEmail }}
|
||||
class: {{ .Modules.Additional.Ingress.Type }}
|
||||
annotations:
|
||||
{{- if eq .Modules.Additional.Ingress.Type "nginx" }}
|
||||
nginx.ingress.kubernetes.io/proxy-buffer-size: "128k"
|
||||
nginx.ingress.kubernetes.io/proxy-buffers: "4 256k"
|
||||
nginx.ingress.kubernetes.io/proxy-busy-buffers-size: "256k"
|
||||
{{- end }}
|
||||
tls:
|
||||
{{- if .Modules.Observability.Visualization.Grafana.Expose.Tls.Enabled }}
|
||||
enabled: true
|
||||
{{- end }}
|
||||
hosts:
|
||||
- host: {{ .Modules.Observability.Visualization.Grafana.Expose.Domain }}
|
||||
secretName: grafana-tls
|
||||
|
||||
containerRuntime: {{ .Orchestrator.ContainerEngine.Type }}
|
||||
opentelemetryCollector:
|
||||
enabled: {{ and .Modules.Observability.Enabled .Modules.Observability.Tracing.Enabled }}
|
||||
serviceMonitor: true
|
||||
config: |
|
||||
receivers:
|
||||
otlp:
|
||||
protocols:
|
||||
grpc:
|
||||
http:
|
||||
exporters:
|
||||
otlphttp:
|
||||
endpoint: http://tempo:4318
|
||||
service:
|
||||
telemetry:
|
||||
logs:
|
||||
level: "debug"
|
||||
pipelines:
|
||||
traces:
|
||||
receivers: [otlp]
|
||||
exporters: [otlphttp]
|
||||
|
||||
fluentbit:
|
||||
enable: {{ and .Modules.Observability.Enabled .Modules.Observability.Logging.Enabled }}
|
||||
serviceMonitor: true
|
||||
image:
|
||||
repository: "{{ .Modules.Observability.Logging.FluentBit.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.FluentBit.Tag }}"
|
||||
ingress:
|
||||
{{- if and .Modules.Observability.Visualization.Grafana.Enabled (eq .Modules.Observability.Visualization.Grafana.Expose.Type "ingress") }}
|
||||
enabled: true
|
||||
{{- else }}
|
||||
enabled: false
|
||||
{{- end }}
|
||||
accountEmail: {{ .Modules.Additional.CertManager.AccountEmail }}
|
||||
class: {{ .Modules.Additional.Ingress.Type }}
|
||||
annotations:
|
||||
{{- if eq .Modules.Additional.Ingress.Type "nginx" }}
|
||||
nginx.ingress.kubernetes.io/proxy-buffer-size: "128k"
|
||||
nginx.ingress.kubernetes.io/proxy-buffers: "4 256k"
|
||||
nginx.ingress.kubernetes.io/proxy-busy-buffers-size: "256k"
|
||||
{{- end }}
|
||||
tls:
|
||||
{{- if .Modules.Observability.Visualization.Grafana.Expose.Tls.Enabled }}
|
||||
enabled: true
|
||||
{{- end }}
|
||||
hosts:
|
||||
- host: {{ .Modules.Observability.Visualization.Grafana.Expose.Domain }}
|
||||
secretName: grafana-tls
|
||||
|
||||
affinity:
|
||||
nodeAffinity:
|
||||
requiredDuringSchedulingIgnoredDuringExecution:
|
||||
nodeSelectorTerms:
|
||||
- matchExpressions:
|
||||
- key: node-role.kubernetes.io/edge
|
||||
operator: DoesNotExist
|
||||
tolerations:
|
||||
- operator: Exists
|
||||
containerRuntime: {{ .Orchestrator.ContainerEngine.Type }}
|
||||
|
||||
input:
|
||||
tail:
|
||||
enable: true
|
||||
refreshIntervalSeconds: 10
|
||||
memBufLimit: 100MB
|
||||
bufferMaxSize: ""
|
||||
path: "/var/log/containers/*.log"
|
||||
skipLongLines: true
|
||||
readFromHead: false
|
||||
storageType: memory
|
||||
pauseOnChunksOverlimit: "off"
|
||||
systemd:
|
||||
enable: true
|
||||
systemdFilter:
|
||||
enable: true
|
||||
filters: []
|
||||
path: "/var/log/journal"
|
||||
includeKubelet: true
|
||||
stripUnderscores: "off"
|
||||
storageType: memory
|
||||
pauseOnChunksOverlimit: "off"
|
||||
fluentbit:
|
||||
enable: {{ and .Modules.Observability.Enabled .Modules.Observability.Logging.Enabled }}
|
||||
serviceMonitor: true
|
||||
image:
|
||||
repository: "{{ .Modules.Observability.Logging.FluentBit.Image }}"
|
||||
tag: "{{ .Modules.Observability.Logging.FluentBit.Tag }}"
|
||||
|
||||
nodeExporterMetrics: {}
|
||||
fluentBitMetrics: {}
|
||||
affinity:
|
||||
nodeAffinity:
|
||||
requiredDuringSchedulingIgnoredDuringExecution:
|
||||
nodeSelectorTerms:
|
||||
- matchExpressions:
|
||||
- key: node-role.kubernetes.io/edge
|
||||
operator: DoesNotExist
|
||||
tolerations:
|
||||
- operator: Exists
|
||||
|
||||
output:
|
||||
es:
|
||||
enable: false
|
||||
host: "<Elasticsearch url like elasticsearch-logging-data.kubesphere-logging-system.svc>"
|
||||
port: 9200
|
||||
logstashPrefix: ks-logstash-log
|
||||
bufferSize: 20MB
|
||||
traceError: true
|
||||
kafka:
|
||||
enable: false
|
||||
brokers: "<kafka broker list like xxx.xxx.xxx.xxx:9092,yyy.yyy.yyy.yyy:9092>"
|
||||
topics: ks-log
|
||||
opentelemetry: {}
|
||||
opensearch:
|
||||
enable: false
|
||||
stdout:
|
||||
enable: false
|
||||
loki:
|
||||
enable: true
|
||||
host: loki
|
||||
port: 3100
|
||||
input:
|
||||
tail:
|
||||
enable: true
|
||||
refreshIntervalSeconds: 10
|
||||
memBufLimit: 100MB
|
||||
bufferMaxSize: ""
|
||||
path: "/var/log/containers/*.log"
|
||||
skipLongLines: true
|
||||
readFromHead: false
|
||||
storageType: memory
|
||||
pauseOnChunksOverlimit: "off"
|
||||
systemd:
|
||||
enable: true
|
||||
systemdFilter:
|
||||
enable: true
|
||||
filters: []
|
||||
path: "/var/log/journal"
|
||||
includeKubelet: true
|
||||
stripUnderscores: "off"
|
||||
storageType: memory
|
||||
pauseOnChunksOverlimit: "off"
|
||||
|
||||
stackdriver: {}
|
||||
nodeExporterMetrics: {}
|
||||
fluentBitMetrics: {}
|
||||
|
||||
service:
|
||||
storage: {}
|
||||
output:
|
||||
es:
|
||||
enable: false
|
||||
host: "<Elasticsearch url like elasticsearch-logging-data.kubesphere-logging-system.svc>"
|
||||
port: 9200
|
||||
logstashPrefix: ks-logstash-log
|
||||
bufferSize: 20MB
|
||||
traceError: true
|
||||
kafka:
|
||||
enable: false
|
||||
brokers: "<kafka broker list like xxx.xxx.xxx.xxx:9092,yyy.yyy.yyy.yyy:9092>"
|
||||
topics: ks-log
|
||||
opentelemetry: {}
|
||||
opensearch:
|
||||
enable: false
|
||||
stdout:
|
||||
enable: false
|
||||
loki:
|
||||
enable: true
|
||||
host: loki
|
||||
port: 3100
|
||||
|
||||
filter:
|
||||
kubernetes:
|
||||
enable: true
|
||||
labels: true
|
||||
annotations: true
|
||||
containerd:
|
||||
enable: true
|
||||
systemd:
|
||||
enable: true
|
||||
stackdriver: {}
|
||||
|
||||
kubeedge:
|
||||
enable: false
|
||||
prometheusRemoteWrite:
|
||||
# Change the host to the address of a cloud-side Prometheus-compatible server that can receive Prometheus remote write data
|
||||
host: "<cloud-prometheus-service-host>"
|
||||
# Change the port to the port of a cloud-side Prometheus-compatible server that can receive Prometheus remote write data
|
||||
port: "<cloud-prometheus-service-port>"
|
||||
service:
|
||||
storage: {}
|
||||
|
||||
filter:
|
||||
kubernetes:
|
||||
enable: true
|
||||
labels: true
|
||||
annotations: true
|
||||
containerd:
|
||||
enable: true
|
||||
systemd:
|
||||
enable: true
|
||||
|
||||
kubeedge:
|
||||
enable: false
|
||||
prometheusRemoteWrite:
|
||||
# Change the host to the address of a cloud-side Prometheus-compatible server that can receive Prometheus remote write data
|
||||
host: "<cloud-prometheus-service-host>"
|
||||
# Change the port to the port of a cloud-side Prometheus-compatible server that can receive Prometheus remote write data
|
||||
port: "<cloud-prometheus-service-port>"
|
||||
|
||||
@@ -1,145 +1,134 @@
|
||||
- name: opentelemetry-operator
|
||||
namespace: observability
|
||||
create_namespace: true
|
||||
chart_ref: {{ .Modules.Observability.Tracing.Operator.ChartRef }}
|
||||
chart_version: {{ .Modules.Observability.Tracing.Operator.ChartVersion }}
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Tracing.Enabled }}
|
||||
release_state: "present"
|
||||
{{- else }}
|
||||
release_state: "absent"
|
||||
{{- end }}
|
||||
values:
|
||||
replicaCount: 1
|
||||
nameOverride: ""
|
||||
imagePullSecrets: []
|
||||
pdb:
|
||||
create: false
|
||||
minAvailable: 1
|
||||
maxUnavailable: ""
|
||||
replicaCount: 1
|
||||
nameOverride: ""
|
||||
imagePullSecrets: []
|
||||
pdb:
|
||||
create: false
|
||||
minAvailable: 1
|
||||
maxUnavailable: ""
|
||||
|
||||
manager:
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Tracing.Operator.Image }}
|
||||
tag: "{{ .Modules.Observability.Tracing.Operator.Tag }}"
|
||||
collectorImage:
|
||||
repository: {{ .Modules.Observability.Tracing.Collector.Image }}
|
||||
tag: {{ .Modules.Observability.Tracing.Collector.Tag }}
|
||||
manager:
|
||||
image:
|
||||
repository: {{ .Modules.Observability.Tracing.Operator.Image }}
|
||||
tag: "{{ .Modules.Observability.Tracing.Operator.Tag }}"
|
||||
collectorImage:
|
||||
repository: {{ .Modules.Observability.Tracing.Collector.Image }}
|
||||
tag: {{ .Modules.Observability.Tracing.Collector.Tag }}
|
||||
|
||||
featureGates: ""
|
||||
ports:
|
||||
metricsPort: 8080
|
||||
webhookPort: 9443
|
||||
healthzPort: 8081
|
||||
resources:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 128Mi
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 64Mi
|
||||
env:
|
||||
ENABLE_WEBHOOKS: "true"
|
||||
featureGates: ""
|
||||
ports:
|
||||
metricsPort: 8080
|
||||
webhookPort: 9443
|
||||
healthzPort: 8081
|
||||
resources:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 128Mi
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 64Mi
|
||||
env:
|
||||
ENABLE_WEBHOOKS: "true"
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
annotations: {}
|
||||
serviceAccount:
|
||||
create: true
|
||||
annotations: {}
|
||||
|
||||
serviceMonitor:
|
||||
enabled: true
|
||||
metricsEndpoints:
|
||||
- port: metrics
|
||||
serviceMonitor:
|
||||
enabled: true
|
||||
metricsEndpoints:
|
||||
- port: metrics
|
||||
|
||||
prometheusRule:
|
||||
enabled: true
|
||||
groups: []
|
||||
defaultRules:
|
||||
enabled: true
|
||||
|
||||
extraArgs: []
|
||||
|
||||
leaderElection:
|
||||
enabled: true
|
||||
|
||||
verticalPodAutoscaler:
|
||||
enabled: false
|
||||
controlledResources: []
|
||||
maxAllowed: {}
|
||||
minAllowed: {}
|
||||
|
||||
updatePolicy:
|
||||
updateMode: Auto
|
||||
minReplicas: 2
|
||||
rolling: false
|
||||
|
||||
securityContext: {}
|
||||
|
||||
kubeRBACProxy:
|
||||
prometheusRule:
|
||||
enabled: true
|
||||
groups: []
|
||||
defaultRules:
|
||||
enabled: true
|
||||
image:
|
||||
repository: quay.io/brancz/kube-rbac-proxy
|
||||
tag: v0.15.0
|
||||
ports:
|
||||
proxyPort: 8443
|
||||
resources:
|
||||
limits:
|
||||
cpu: 500m
|
||||
memory: 128Mi
|
||||
requests:
|
||||
cpu: 5m
|
||||
memory: 64Mi
|
||||
|
||||
extraArgs: []
|
||||
extraArgs: []
|
||||
|
||||
securityContext: {}
|
||||
leaderElection:
|
||||
enabled: true
|
||||
|
||||
admissionWebhooks:
|
||||
create: true
|
||||
servicePort: 443
|
||||
failurePolicy: Fail
|
||||
secretName: ""
|
||||
pods:
|
||||
failurePolicy: Ignore
|
||||
verticalPodAutoscaler:
|
||||
enabled: false
|
||||
controlledResources: []
|
||||
maxAllowed: {}
|
||||
minAllowed: {}
|
||||
|
||||
namePrefix: ""
|
||||
updatePolicy:
|
||||
updateMode: Auto
|
||||
minReplicas: 2
|
||||
rolling: false
|
||||
|
||||
timeoutSeconds: 10
|
||||
securityContext: {}
|
||||
|
||||
namespaceSelector: {}
|
||||
objectSelector: {}
|
||||
certManager:
|
||||
enabled: true
|
||||
issuerRef: {}
|
||||
certificateAnnotations: {}
|
||||
issuerAnnotations: {}
|
||||
kubeRBACProxy:
|
||||
enabled: true
|
||||
image:
|
||||
repository: quay.io/brancz/kube-rbac-proxy
|
||||
tag: v0.15.0
|
||||
ports:
|
||||
proxyPort: 8443
|
||||
resources:
|
||||
limits:
|
||||
cpu: 500m
|
||||
memory: 128Mi
|
||||
requests:
|
||||
cpu: 5m
|
||||
memory: 64Mi
|
||||
|
||||
autoGenerateCert:
|
||||
enabled: true
|
||||
recreate: true
|
||||
extraArgs: []
|
||||
|
||||
secretAnnotations: {}
|
||||
secretLabels: {}
|
||||
securityContext: {}
|
||||
|
||||
role:
|
||||
create: true
|
||||
admissionWebhooks:
|
||||
create: true
|
||||
servicePort: 443
|
||||
failurePolicy: Fail
|
||||
secretName: ""
|
||||
pods:
|
||||
failurePolicy: Ignore
|
||||
|
||||
clusterRole:
|
||||
create: true
|
||||
namePrefix: ""
|
||||
|
||||
affinity: {}
|
||||
tolerations: []
|
||||
nodeSelector: {}
|
||||
topologySpreadConstraints: []
|
||||
hostNetwork: false
|
||||
timeoutSeconds: 10
|
||||
|
||||
priorityClassName: ""
|
||||
namespaceSelector: {}
|
||||
objectSelector: {}
|
||||
certManager:
|
||||
enabled: true
|
||||
issuerRef: {}
|
||||
certificateAnnotations: {}
|
||||
issuerAnnotations: {}
|
||||
|
||||
securityContext:
|
||||
runAsGroup: 65532
|
||||
runAsNonRoot: true
|
||||
runAsUser: 65532
|
||||
fsGroup: 65532
|
||||
autoGenerateCert:
|
||||
enabled: true
|
||||
recreate: true
|
||||
|
||||
testFramework:
|
||||
image:
|
||||
repository: busybox
|
||||
tag: latest
|
||||
secretAnnotations: {}
|
||||
secretLabels: {}
|
||||
|
||||
role:
|
||||
create: true
|
||||
|
||||
clusterRole:
|
||||
create: true
|
||||
|
||||
affinity: {}
|
||||
tolerations: []
|
||||
nodeSelector: {}
|
||||
topologySpreadConstraints: []
|
||||
hostNetwork: false
|
||||
|
||||
priorityClassName: ""
|
||||
|
||||
securityContext:
|
||||
runAsGroup: 65532
|
||||
runAsNonRoot: true
|
||||
runAsUser: 65532
|
||||
fsGroup: 65532
|
||||
|
||||
testFramework:
|
||||
image:
|
||||
repository: busybox
|
||||
tag: latest
|
||||
|
||||
@@ -1,79 +1,68 @@
|
||||
- name: tempo
|
||||
namespace: observability
|
||||
create_namespace: true
|
||||
chart_ref: {{ .Modules.Observability.Tracing.Tempo.ChartRef }}
|
||||
chart_version: {{ .Modules.Observability.Tracing.Tempo.ChartVersion }}
|
||||
{{- if and .Modules.Observability.Enabled .Modules.Observability.Tracing.Enabled }}
|
||||
release_state: "present"
|
||||
{{- else }}
|
||||
release_state: "absent"
|
||||
{{- end }}
|
||||
values:
|
||||
replicas: 1
|
||||
replicas: 1
|
||||
|
||||
tempo:
|
||||
repository: {{ .Modules.Observability.Tracing.Tempo.Image }}
|
||||
tag: "{{ .Modules.Observability.Tracing.Tempo.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
tempo:
|
||||
repository: {{ .Modules.Observability.Tracing.Tempo.Image }}
|
||||
tag: "{{ .Modules.Observability.Tracing.Tempo.Tag }}"
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
updateStrategy: RollingUpdate
|
||||
updateStrategy: RollingUpdate
|
||||
|
||||
memBallastSizeMbs: 1024
|
||||
multitenancyEnabled: false
|
||||
reportingEnabled: false
|
||||
memBallastSizeMbs: 1024
|
||||
multitenancyEnabled: false
|
||||
reportingEnabled: false
|
||||
|
||||
metricsGenerator:
|
||||
enabled: false
|
||||
remoteWriteUrl: "http://prometheus.monitoring:9090/api/v1/write"
|
||||
retention: {{ .Modules.Observability.Tracing.Tempo.Retention }}
|
||||
global_overrides:
|
||||
per_tenant_override_config: /conf/overrides.yaml
|
||||
metricsGenerator:
|
||||
enabled: false
|
||||
remoteWriteUrl: "http://prometheus.monitoring:9090/api/v1/write"
|
||||
retention: {{ .Modules.Observability.Tracing.Tempo.Retention }}
|
||||
global_overrides:
|
||||
per_tenant_override_config: /conf/overrides.yaml
|
||||
|
||||
server:
|
||||
http_listen_port: {{ .Modules.Observability.Tracing.Tempo.ListenPort }}
|
||||
storage:
|
||||
trace:
|
||||
backend: local
|
||||
local:
|
||||
path: /var/tempo/traces
|
||||
wal:
|
||||
path: /var/tempo/wal
|
||||
receivers:
|
||||
otlp:
|
||||
protocols:
|
||||
grpc:
|
||||
endpoint: "0.0.0.0:4317"
|
||||
http:
|
||||
endpoint: "0.0.0.0:4318"
|
||||
server:
|
||||
http_listen_port: {{ .Modules.Observability.Tracing.Tempo.ListenPort }}
|
||||
storage:
|
||||
trace:
|
||||
backend: local
|
||||
local:
|
||||
path: /var/tempo/traces
|
||||
wal:
|
||||
path: /var/tempo/wal
|
||||
receivers:
|
||||
otlp:
|
||||
protocols:
|
||||
grpc:
|
||||
endpoint: "0.0.0.0:4317"
|
||||
http:
|
||||
endpoint: "0.0.0.0:4318"
|
||||
|
||||
tempoQuery:
|
||||
repository: {{ .Modules.Observability.Tracing.Tempo.TempoQuery.Image }}
|
||||
tag: {{ .Modules.Observability.Tracing.Tempo.TempoQuery.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
tempoQuery:
|
||||
repository: {{ .Modules.Observability.Tracing.Tempo.TempoQuery.Image }}
|
||||
tag: {{ .Modules.Observability.Tracing.Tempo.TempoQuery.Tag }}
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
enabled: true
|
||||
enabled: true
|
||||
|
||||
service:
|
||||
port: {{ .Modules.Observability.Tracing.Tempo.TempoQuery.ListenPort }}
|
||||
service:
|
||||
port: {{ .Modules.Observability.Tracing.Tempo.TempoQuery.ListenPort }}
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
ingress:
|
||||
enabled: false
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
automountServiceAccountToken: true
|
||||
serviceAccount:
|
||||
create: true
|
||||
automountServiceAccountToken: true
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
service:
|
||||
type: ClusterIP
|
||||
|
||||
serviceMonitor:
|
||||
enabled: true
|
||||
serviceMonitor:
|
||||
enabled: true
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClassName: {{ .Modules.Observability.Tracing.Tempo.Persistence.StorageClass }}
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
size: {{ .Modules.Observability.Tracing.Tempo.Persistence.StorageSize }}
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClassName: {{ .Modules.Observability.Tracing.Tempo.Persistence.StorageClass }}
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
size: {{ .Modules.Observability.Tracing.Tempo.Persistence.StorageSize }}
|
||||
|
||||
priorityClassName: null
|
||||
priorityClassName: null
|
||||
|
||||
Reference in New Issue
Block a user