velero update

This commit is contained in:
Philip Haupt
2025-09-03 12:45:53 +02:00
parent 01e0618e4f
commit a56457b7ad
3 changed files with 317 additions and 72 deletions

View File

@@ -5,7 +5,7 @@ kind: Kustomization
helmCharts:
- name: velero
repo: https://vmware-tanzu.github.io/helm-charts
version: 7.0.0
version: 10.1.1
releaseName: velero
includeCRDs: true
namespace: velero

View File

@@ -7,18 +7,12 @@ namespace:
labels: {}
# Enforce Pod Security Standards with Namespace Labels
# https://kubernetes.io/docs/tasks/configure-pod-container/enforce-standards-namespace-labels/
# - key: pod-security.kubernetes.io/enforce
# value: privileged
# - key: pod-security.kubernetes.io/enforce-version
# value: latest
# - key: pod-security.kubernetes.io/audit
# value: privileged
# - key: pod-security.kubernetes.io/audit-version
# value: latest
# - key: pod-security.kubernetes.io/warn
# value: privileged
# - key: pod-security.kubernetes.io/warn-version
# value: latest
# pod-security.kubernetes.io/enforce: privileged
# pod-security.kubernetes.io/enforce-version: latest
# pod-security.kubernetes.io/audit: privileged
# pod-security.kubernetes.io/audit-version: latest
# pod-security.kubernetes.io/warn: privileged
# pod-security.kubernetes.io/warn-version: latest
##
## End of namespace-related settings.
@@ -33,7 +27,7 @@ namespace:
# enabling node-agent). Required.
image:
repository: velero/velero
tag: v1.16.1
tag: v1.16.2
# Digest value example: sha256:d238835e151cec91c6a811fe3a89a66d3231d9f64d09e5f3c49552672d271f38.
# If used, it will take precedence over the image.tag.
# digest:
@@ -81,6 +75,22 @@ resources: {}
# cpu: 1000m
# memory: 512Mi
# Container resize policy for the Velero deployment.
# See: https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/
resizePolicy: []
# - resourceName: cpu
# restartPolicy: NotRequired
# - resourceName: memory
# restartPolicy: RestartContainer
# Configure hostAliases for Velero deployment. Optional
# For more information, check: https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/
hostAliases: []
# - ip: "127.0.0.1"
# hostnames:
# - "foo.local"
# - "bar.local"
# Resource requests/limits to specify for the upgradeCRDs job pod. Need to be adjusted by user accordingly.
upgradeJobResources: {}
# requests:
@@ -94,9 +104,23 @@ upgradeCRDsJob:
extraVolumes: []
# Extra volumeMounts for the Upgrade CRDs Job. Optional.
extraVolumeMounts: []
# Extra key/value pairs to be used as environment variables. Optional.
extraEnvVars: {}
# Additional values to be used as environment variables. Optional.
extraEnvVars: []
# Simple value
# - name: SIMPLE_VAR
# value: "simple-value"
# FieldRef example
# - name: MY_POD_LABEL
# valueFrom:
# fieldRef:
# fieldPath: metadata.labels['my_label']
# Configure if API credential for Service Account is automounted.
automountServiceAccountToken: true
# Configure the shell cmd in case you are using custom image
# shellCmd: /tmp/sh
# updateCmd: /velero install --crds-only --dry-run -o yaml | /tmp/kubectl apply -f -
# Configure the dnsPolicy of the Velero deployment
# See: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
@@ -106,7 +130,7 @@ dnsPolicy: ClusterFirst
# If the value is a string then it is evaluated as a template.
initContainers:
- name: velero-plugin-for-aws
image: velero/velero-plugin-for-aws:v1.12.0
image: velero/velero-plugin-for-aws:v1.12.2
imagePullPolicy: IfNotPresent
volumeMounts:
- mountPath: /target
@@ -216,7 +240,19 @@ metrics:
# service metdata if metrics are enabled
service:
annotations: {}
type: ClusterIP
labels: {}
nodePort: null
# External/Internal traffic policy setting (Cluster, Local)
# https://kubernetes.io/docs/reference/networking/virtual-ips/#traffic-policies
externalTrafficPolicy: ""
internalTrafficPolicy: ""
# the IP family policy for the metrics Service to be able to configure dual-stack; see [Configure dual-stack](https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services).
ipFamilyPolicy: ""
# a list of IP families for the metrics Service that should be supported, in the order in which they should be applied to ClusterIP. Can be "IPv4" and/or "IPv6".
ipFamilies: []
# Pod annotations for Prometheus
podAnnotations:
@@ -262,19 +298,40 @@ metrics:
# namespace: ""
# Rules to be deployed
spec: []
# - alert: VeleroBackupPartialFailures
# - alert: VeleroBackupFailed
# annotations:
# message: Velero backup {{ $labels.schedule }} has {{ $value | humanizePercentage }} partialy failed backups.
# message: Velero backup {{ $labels.schedule }} has failed
# expr: |-
# velero_backup_partial_failure_total{schedule!=""} / velero_backup_attempt_total{schedule!=""} > 0.25
# velero_backup_last_status{schedule!=""} != 1
# for: 15m
# labels:
# severity: warning
# - alert: VeleroBackupFailures
# - alert: VeleroBackupFailing
# annotations:
# message: Velero backup {{ $labels.schedule }} has {{ $value | humanizePercentage }} failed backups.
# message: Velero backup {{ $labels.schedule }} has been failing for the last 12h
# expr: |-
# velero_backup_failure_total{schedule!=""} / velero_backup_attempt_total{schedule!=""} > 0.25
# velero_backup_last_status{schedule!=""} != 1
# for: 12h
# labels:
# severity: critical
# - alert: VeleroNoNewBackup
# annotations:
# message: Velero backup {{ $labels.schedule }} has not run successfuly in the last 30h
# expr: |-
# (
# rate(velero_backup_last_successful_timestamp{schedule!=""}[15m]) <=bool 0
# or
# absent(velero_backup_last_successful_timestamp{schedule!=""})
# ) == 1
# for: 30h
# labels:
# severity: critical
# - alert: VeleroBackupPartialFailures
# annotations:
# message: Velero backup {{ $labels.schedule }} has {{ $value | humanizePercentage }} partialy failed backups
# expr: |-
# rate(velero_backup_partial_failure_total{schedule!=""}[25m])
# / rate(velero_backup_attempt_total{schedule!=""}[25m]) > 0.5
# for: 15m
# labels:
# severity: warning
@@ -296,6 +353,10 @@ kubectl:
annotations: {}
# Labels to set for the upgrade/cleanup job. Optional.
labels: {}
# Extra volumes for the upgrade/cleanup job. Optional.
extraVolumes: []
# Extra volumeMounts for the upgrade/cleanup job.. Optional.
extraVolumeMounts: []
# This job upgrades the CRDs.
upgradeCRDs: true
@@ -365,7 +426,8 @@ configuration:
# Parameters for the VolumeSnapshotLocation(s). Configure multiple by adding other element(s) to the volumeSnapshotLocation slice.
# See https://velero.io/docs/v1.6/api-types/volumesnapshotlocation/
volumeSnapshotLocation:
# name is the name of the volume snapshot location where snapshots are being taken. Required.
# name is the name of the volume snapshot location where snapshots are being taken. If a name is not provided,
# a volume snapshot location will be created with the name "default". Optional.
- name: nas
# provider is the name for the volume snapshot provider.
provider: aws
@@ -420,6 +482,8 @@ configuration:
disableInformerCache: false
# `velero server` default: 1h
garbageCollectionFrequency:
# `velero server` default: 1
itemBlockWorkerCount:
# Set log-format for Velero pod. Default: text. Other option: json.
logFormat:
# Set log-level for Velero pod. Default: info. Other options: debug, warning, error, fatal, panic.
@@ -443,6 +507,8 @@ configuration:
# Comma separated list of velero feature flags. default: empty
# features: EnableCSI
features: EnableCSI
# Configures the timeout for provisioning the volume created from the CSI snapshot. Default: 30m
dataMoverPrepareTimeout:
# Resource requests/limits to specify for the repository-maintenance job. Optional.
# https://velero.io/docs/v1.14/repository-maintenance/#resource-limitation
repositoryMaintenanceJob:
@@ -454,14 +520,64 @@ configuration:
# memory: 1024Mi
# Number of latest maintenance jobs to keep for each repository
latestJobsCount: 3
# Per-repository resource settings ConfigMap
# This ConfigMap allows specifying different settings for different repositories
# See: https://velero.io/docs/main/repository-maintenance/
repositoryConfigData:
# Name of the ConfigMap to create. If not provided, will use "velero-repo-maintenance"
name: "velero-repo-maintenance"
# Global configuration applied to all repositories
# This configuration is used when no specific repository configuration is found
# global:
# podResources:
# cpuRequest: "100m"
# cpuLimit: "200m"
# memoryRequest: "100Mi"
# memoryLimit: "200Mi"
# keepLatestMaintenanceJobs: 1
# loadAffinity:
# - nodeSelector:
# matchExpressions:
# - key: "cloud.google.com/machine-family"
# operator: "In"
# values: ["e2"]
# - nodeSelector:
# matchExpressions:
# - key: "topology.kubernetes.io/zone"
# operator: "In"
# values: ["us-central1-a", "us-central1-b", "us-central1-c"]
# priorityClassName: "low-priority" # Note: priorityClassName is only supported in global configuration
global: {}
# Repository-specific configurations
# Repository keys are formed as: "{namespace}-{storageLocation}-{repositoryType}"
# For example: "default-default-kopia" or "prod-s3-backup-kopia"
# Note: priorityClassName is NOT supported in repository-specific configurations
# repositories:
# "kibishii-default-kopia":
# podResources:
# cpuRequest: "200m"
# cpuLimit: "400m"
# memoryRequest: "200Mi"
# memoryLimit: "400Mi"
# keepLatestMaintenanceJobs: 2
repositories: {}
# `velero server` default: velero
namespace:
# additional command-line arguments that will be passed to the `velero server`
# e.g.: extraArgs: ["--foo=bar"]
extraArgs: []
# additional key/value pairs to be used as environment variables such as "AWS_CLUSTER_NAME: 'yourcluster.domain.tld'"
extraEnvVars: {}
# Additional values to be used as environment variables. Optional.
extraEnvVars: []
# Simple value
# - name: SIMPLE_VAR
# value: "simple-value"
# FieldRef example
# - name: MY_POD_LABEL
# valueFrom:
# fieldRef:
# fieldPath: metadata.labels['my_label']
# Set true for backup all pod volumes without having to apply annotation on the pod when used file system backup Default: false.
defaultVolumesToFsBackup:
@@ -495,6 +611,8 @@ serviceAccount:
labels:
imagePullSecrets: []
# - registrySecretName
# Configure if API credential for Service Account is automounted.
automountServiceAccountToken: true
# Info about the secret to be used by the Velero deployment, which
# should contain credentials for the cloud provider IAM account you've
@@ -542,6 +660,8 @@ nodeAgent:
pluginVolumePath: /var/lib/kubelet/plugins
# Pod priority class name to use for the node-agent daemonset. Optional.
priorityClassName: ""
# Pod runtime class name to use for the node-agent daemonset. Optional.
runtimeClassName: ""
# Resource requests/limits to specify for the node-agent daemonset deployment. Optional.
# https://velero.io/docs/v1.6/customize-installation/#customize-resource-requests-and-limits
resources: {}
@@ -551,6 +671,13 @@ nodeAgent:
# limits:
# cpu: 1000m
# memory: 1024Mi
# Container resize policy for the node-agent daemonset.
# See: https://kubernetes.io/docs/tasks/configure-pod-container/resize-container-resources/
resizePolicy: []
# - resourceName: cpu
# restartPolicy: NotRequired
# - resourceName: memory
# restartPolicy: RestartContainer
# Tolerations to use for the node-agent daemonset. Optional.
tolerations: []
@@ -576,8 +703,17 @@ nodeAgent:
# Extra volumeMounts for the node-agent daemonset. Optional.
extraVolumeMounts: []
# Key/value pairs to be used as environment variables for the node-agent daemonset. Optional.
extraEnvVars: {}
# Additional values to be used as environment variables for node-agent daemonset. Optional.
extraEnvVars: []
# Simple key/value
# - name: SIMPLE_VAR
# value: "simple-value"
# FieldRef example
# - name: MY_POD_LABEL
# valueFrom:
# fieldRef:
# fieldPath: metadata.labels['my_label']
# Additional command-line arguments that will be passed to the node-agent. Optional.
# e.g.: extraArgs: ["--foo=bar"]
@@ -587,6 +723,14 @@ nodeAgent:
# See: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
dnsPolicy: ClusterFirst
# Configure hostAliases for node-agent daemonset. Optional
# For more information, check: https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/
hostAliases: []
# - ip: "127.0.0.1"
# hostnames:
# - "foo.local"
# - "bar.local"
# SecurityContext to use for the Velero deployment. Optional.
# Set fsGroup for `AWS IAM Roles for Service Accounts`
# see more informations at: https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html
@@ -665,5 +809,4 @@ configMaps: {}
##
## End of additional Velero resource settings.
##
##