139 lines
4.6 KiB
YAML
139 lines
4.6 KiB
YAML
image:
|
|
repository: ghcr.io/jmcgrath207/k8s-ephemeral-storage-metrics
|
|
tag: 1.18.2
|
|
imagePullPolicy: IfNotPresent
|
|
imagePullSecrets: []
|
|
|
|
# -- Configure the Service Monitor
|
|
serviceMonitor:
|
|
enable: false
|
|
# -- Add labels to the ServiceMonitor.Spec
|
|
additionalLabels: {}
|
|
# -- Set relabelings as per https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#monitoring.coreos.com/v1.RelabelConfig
|
|
relabelings: []
|
|
# -- Set metricRelabelings as per https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#monitoring.coreos.com/v1.RelabelConfig
|
|
metricRelabelings: []
|
|
# -- Set targetLabels as per https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#monitoring.coreos.com/v1.ServiceMonitorSpec
|
|
targetLabels: []
|
|
# -- Set podTargetLabels as per https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#monitoring.coreos.com/v1.ServiceMonitorSpec
|
|
podTargetLabels: []
|
|
|
|
# -- Scrape metrics through kubelet instead of kube api
|
|
kubelet:
|
|
scrape: false
|
|
readOnlyPort: 0
|
|
insecure: false
|
|
|
|
# -- Set metrics you want to enable
|
|
metrics:
|
|
# -- Adjust the metric port as needed (default 9100)
|
|
port: 9100
|
|
# -- Percentage of ephemeral storage used by a container in a pod
|
|
ephemeral_storage_container_limit_percentage: true
|
|
# -- Current ephemeral storage used by a container's volume in a pod
|
|
ephemeral_storage_container_volume_usage: true
|
|
# -- Percentage of ephemeral storage used by a container's volume in a pod
|
|
ephemeral_storage_container_volume_limit_percentage: true
|
|
# -- Current ephemeral byte usage of pod
|
|
ephemeral_storage_pod_usage: true
|
|
# -- Current ephemeral inode usage of pod
|
|
ephemeral_storage_inodes: true
|
|
# -- Available ephemeral storage for a node
|
|
ephemeral_storage_node_available: true
|
|
# -- Capacity of ephemeral storage for a node
|
|
ephemeral_storage_node_capacity: true
|
|
# -- Percentage of ephemeral storage used on a node
|
|
ephemeral_storage_node_percentage: true
|
|
# -- Create the ephemeral_storage_adjusted_polling_rate metrics to report Adjusted Poll Rate in milliseconds. Typically used for testing.
|
|
adjusted_polling_rate: false
|
|
|
|
log_level: info
|
|
# -- Set as Deployment for single controller to query all nodes or Daemonset
|
|
deploy_type: Deployment
|
|
# -- Set additional labels for the Deployment/Daemonset
|
|
deploy_labels: {}
|
|
# -- Set additional labels for the Pods
|
|
pod_labels: {}
|
|
# Note in testing, Kube API does not refresh faster than 10 seconds
|
|
# -- Polling node rate for exporter
|
|
interval: 15 # Seconds
|
|
# -- Max number of concurrent query requests to the kubernetes API.
|
|
max_node_concurrency: 10
|
|
# -- QPS indicates the maximum QPS to the master from this client.
|
|
client_go_qps: 5
|
|
# -- Maximum burst for throttle.
|
|
client_go_burst: 10
|
|
|
|
prometheus:
|
|
enable: false
|
|
release: kube-prometheus-stack
|
|
# -- Add labels to the PrometheusRule.Spec
|
|
additionalLabels: {}
|
|
rules:
|
|
# -- Create PrometheusRules firing alerts when out of ephemeral storage
|
|
enable: false
|
|
# -- How many hours in the future to predict filling up of a volume
|
|
predictFilledHours: 12
|
|
# -- What percentage of limit must be used right now to predict filling up of a volume
|
|
predictMinCurrentUsage: 33.3
|
|
# -- What additional labels to set on alerts
|
|
labels:
|
|
severity: warning
|
|
|
|
# -- Enable Pprof
|
|
pprof: false
|
|
|
|
# -- For local development or testing that will deploy grow and shrink pods and debug service
|
|
dev:
|
|
enabled: false
|
|
shrink:
|
|
image: ghcr.io/jmcgrath207/k8s-ephemeral-storage-shrink-test:latest
|
|
imagePullPolicy: IfNotPresent
|
|
grow:
|
|
image: ghcr.io/jmcgrath207/k8s-ephemeral-storage-grow-test:latest
|
|
imagePullPolicy: IfNotPresent
|
|
|
|
# -- Resource requests and limits for the container
|
|
resources: {}
|
|
|
|
podAnnotations: {}
|
|
|
|
nodeSelector: {}
|
|
|
|
affinity: {}
|
|
|
|
tolerations: []
|
|
|
|
priorityClassName:
|
|
|
|
# -- Revision history limit for the Deployment
|
|
revisionHistoryLimit: 10
|
|
|
|
# -- Service Account configuration
|
|
serviceAccount:
|
|
create: true
|
|
# If not set and create is true, a name is generated using the name template
|
|
name: null
|
|
|
|
# -- RBAC configuration
|
|
rbac:
|
|
create: true
|
|
|
|
# Pod Security Context
|
|
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
podSecurityContext:
|
|
runAsNonRoot: true
|
|
seccompProfile:
|
|
type: RuntimeDefault
|
|
|
|
# Container Security Context to be set on the controller component container
|
|
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
|
|
containerSecurityContext:
|
|
allowPrivilegeEscalation: false
|
|
capabilities:
|
|
drop:
|
|
- ALL
|
|
privileged: false
|
|
readOnlyRootFilesystem: false
|
|
runAsNonRoot: true
|