diff --git a/charts/kured/Chart.yaml b/charts/kured/Chart.yaml index a747993..40043d2 100644 --- a/charts/kured/Chart.yaml +++ b/charts/kured/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 -appVersion: "1.13.2" +appVersion: "1.14.0" description: A Helm chart for kured name: kured -version: 5.1.0 +version: 5.2.0 home: https://github.com/kubereboot/kured maintainers: - name: ckotzbauer diff --git a/charts/kured/README.md b/charts/kured/README.md index 23b7e26..497cfe9 100644 --- a/charts/kured/README.md +++ b/charts/kured/README.md @@ -71,7 +71,7 @@ The following changes have been made compared to the stable chart: | Config | Description | Default | | ------ | ----------- | ------- | | `image.repository` | Image repository | `ghcr.io/kubereboot/kured`| -| `image.tag` | Image tag | `1.13.2` | +| `image.tag` | Image tag | `1.14.0` | | `image.pullPolicy` | Image pull policy | `IfNotPresent` | | `image.pullSecrets` | Image pull secrets | `[]` | | `revisionHistoryLimit` | Number of old history to retain to allow rollback | `10` | @@ -81,11 +81,13 @@ The following changes have been made compared to the stable chart: | `dsAnnotations` | Annotations to apply to the kured DaemonSet | `{}` | | `extraArgs` | Extra arguments to pass to `/usr/bin/kured`. See below. | `{}` | | `extraEnvVars` | Array of environment variables to pass to the daemonset. | `{}` | +| `metricsHost` | Host to expose the metrics endpoint. | `""` | | `metricsPort` | Port to expose the metrics endpoint. | `8080` | | `configuration.lockTtl` | cli-parameter `--lock-ttl` | `0` | | `configuration.lockReleaseDelay` | cli-parameter `--lock-release-delay` | `0` | | `configuration.alertFilterRegexp` | cli-parameter `--alert-filter-regexp` | `""` | | `configuration.alertFiringOnly` | cli-parameter `--alert-firing-only` | `false` | +| `configuration.alertFilterMatchOnly` | cli-parameter `--alert-filter-match-only` | `false` | | `configuration.blockingPodSelector` | Array of selectors for multiple cli-parameters `--blocking-pod-selector` | `[]` | | `configuration.endTime` | cli-parameter `--end-time` | `""` | | `configuration.lockAnnotation` | cli-parameter `--lock-annotation` | `""` | @@ -93,6 +95,7 @@ The following changes have been made compared to the stable chart: | `configuration.forceReboot` | cli-parameter `--force-reboot` | `false` | | `configuration.drainGracePeriod` | cli-parameter `--drain-grace-period` | `""` | | `configuration.drainTimeout` | cli-parameter `--drain-timeout` | `""` | +| `configuration.drainPodSelector` | cli-parameter `--drain-pod-selector` | `""` | | `configuration.skipWaitForDeleteTimeout` | cli-parameter `--skip-wait-for-delete-timeout` | `""` | | `configuration.prometheusUrl` | cli-parameter `--prometheus-url` | `""` | | `configuration.rebootDays` | Array of days for multiple cli-parameters `--reboot-days` | `[]` | @@ -114,6 +117,7 @@ The following changes have been made compared to the stable chart: | `configuration.preferNoScheduleTaint` | Taint name applied during pending node reboot | `""` | | `configuration.preRebootNodeLabels` | Array of key-value-pairs to add to nodes before cordoning for multiple cli-parameters `--pre-reboot-node-labels` | `[]` | | `configuration.postRebootNodeLabels` | Array of key-value-pairs to add to nodes after uncordoning for multiple cli-parameters `--post-reboot-node-labels` | `[]` | +| `configuration.concurrency` | cli-parameter `--concurrency` | `1` | | `rbac.create` | Create RBAC roles | `true` | | `serviceAccount.create` | Create a service account | `true` | | `serviceAccount.name` | Service account name to create (or use if `serviceAccount.create` is false) | (chart fullname) | diff --git a/charts/kured/templates/daemonset.yaml b/charts/kured/templates/daemonset.yaml index 3ba5929..10adf5b 100644 --- a/charts/kured/templates/daemonset.yaml +++ b/charts/kured/templates/daemonset.yaml @@ -66,6 +66,9 @@ spec: args: - --ds-name={{ template "kured.fullname" . }} - --ds-namespace={{ .Release.Namespace }} + {{- if .Values.configuration.metricsHost }} + - --metrics-host={{ .Values.configuration.metricsHost }} + {{- end }} {{- if .Values.configuration.metricsPort }} - --metrics-port={{ .Values.configuration.metricsPort }} {{- end }} @@ -81,6 +84,9 @@ spec: {{- if .Values.configuration.alertFiringOnly }} - --alert-firing-only={{ .Values.configuration.alertFiringOnly }} {{- end }} + {{- if .Values.configuration.alertFilterMatchOnly }} + - --alert-filter-match-only={{ .Values.configuration.alertFilterMatchOnly }} + {{- end }} {{- range .Values.configuration.blockingPodSelector }} - --blocking-pod-selector={{ . }} {{- end }} @@ -99,6 +105,9 @@ spec: {{- if .Values.configuration.drainGracePeriod }} - --drain-grace-period={{ .Values.configuration.drainGracePeriod }} {{- end }} + {{- if .Values.configuration.drainPodSelector }} + - --drain-pod-selector={{ .Values.configuration.drainPodSelector }} + {{- end }} {{- if .Values.configuration.drainTimeout }} - --drain-timeout={{ .Values.configuration.drainTimeout }} {{- end }} @@ -165,6 +174,9 @@ spec: {{- if .Values.configuration.logFormat }} - --log-format={{ .Values.configuration.logFormat }} {{- end }} + {{- if .Values.configuration.concurrency }} + - --concurrency={{ .Values.configuration.concurrency }} + {{- end }} {{- range $key, $value := .Values.extraArgs }} {{- if $value }} - --{{ $key }}={{ $value }} diff --git a/charts/kured/values.minikube.yaml b/charts/kured/values.minikube.yaml index 15168f9..5df8253 100644 --- a/charts/kured/values.minikube.yaml +++ b/charts/kured/values.minikube.yaml @@ -12,6 +12,7 @@ configuration: period: "1m" # reboot check period (default 1h0m0s) # forceReboot: false # force a reboot even if the drain fails or times out (default: false) # drainGracePeriod: "" # time in seconds given to each pod to terminate gracefully, if negative, the default value specified in the pod will be used (default: -1) + # drainPodSelector: "" # only drain pods with labels matching the selector (default: '', all pods) # drainTimeout: "" # timeout after which the drain is aborted (default: 0, infinite time) # skipWaitForDeleteTimeout: "" # when time is greater than zero, skip waiting for the pods whose deletion timestamp is older than N seconds while draining a node (default: 0) # prometheusUrl: "" # Prometheus instance to probe for active alerts diff --git a/charts/kured/values.yaml b/charts/kured/values.yaml index c067996..808bdc1 100644 --- a/charts/kured/values.yaml +++ b/charts/kured/values.yaml @@ -25,16 +25,19 @@ extraEnvVars: # value: 123 configuration: + metricsHost: "" # host where metrics will listen metricsPort: 8080 # port number where metrics will listen lockTtl: 0 # force clean annotation after this amount of time (default 0, disabled) alertFilterRegexp: "" # alert names to ignore when checking for active alerts alertFiringOnly: false # only consider firing alerts when checking for active alerts + alertFilterMatchOnly: false # Only block if the alert-filter-regexp matches active alerts blockingPodSelector: [] # label selector identifying pods whose presence should prevent reboots endTime: "" # only reboot before this time of day (default "23:59") lockAnnotation: "" # annotation in which to record locking node (default "weave.works/kured-node-lock") period: "" # reboot check period (default 1h0m0s) forceReboot: false # force a reboot even if the drain fails or times out (default: false) drainGracePeriod: "" # time in seconds given to each pod to terminate gracefully, if negative, the default value specified in the pod will be used (default: -1) + drainPodSelector: "" # only drain pods with labels matching the selector (default: '', all pods) drainTimeout: "" # timeout after which the drain is aborted (default: 0, infinite time) skipWaitForDeleteTimeout: "" # when time is greater than zero, skip waiting for the pods whose deletion timestamp is older than N seconds while draining a node (default: 0) prometheusUrl: "" # Prometheus instance to probe for active alerts @@ -58,6 +61,7 @@ configuration: logFormat: "text" # log format specified as text or json, defaults to text preRebootNodeLabels: [] # labels to add to nodes before cordoning (default []) postRebootNodeLabels: [] # labels to add to nodes after uncordoning (default []) + concurrency: 1 # amount of nodes to concurrently reboot. (default 1) rbac: