update charts
diff --git a/charts/longhorn/templates/clusterrole.yaml b/charts/longhorn/templates/clusterrole.yaml
index bf28a47..e652a34 100644
--- a/charts/longhorn/templates/clusterrole.yaml
+++ b/charts/longhorn/templates/clusterrole.yaml
@@ -41,7 +41,8 @@
"backingimagemanagers", "backingimagemanagers/status", "backingimagedatasources", "backingimagedatasources/status",
"backuptargets", "backuptargets/status", "backupvolumes", "backupvolumes/status", "backups", "backups/status",
"recurringjobs", "recurringjobs/status", "orphans", "orphans/status", "snapshots", "snapshots/status",
- "supportbundles", "supportbundles/status", "systembackups", "systembackups/status", "systemrestores", "systemrestores/status"]
+ "supportbundles", "supportbundles/status", "systembackups", "systembackups/status", "systemrestores", "systemrestores/status",
+ "volumeattachments", "volumeattachments/status"]
verbs: ["*"]
- apiGroups: ["coordination.k8s.io"]
resources: ["leases"]
diff --git a/charts/longhorn/templates/crds.yaml b/charts/longhorn/templates/crds.yaml
index 0f73824..ac56efe 100644
--- a/charts/longhorn/templates/crds.yaml
+++ b/charts/longhorn/templates/crds.yaml
@@ -296,12 +296,6 @@
properties:
currentChecksum:
type: string
- directory:
- description: 'Deprecated: This field is useless.'
- type: string
- downloadProgress:
- description: 'Deprecated: This field is renamed to `Progress`.'
- type: integer
message:
type: string
name:
@@ -317,9 +311,6 @@
type: integer
state:
type: string
- url:
- description: 'Deprecated: This field is useless now. The manager of backing image files doesn''t care if a file is downloaded and how.'
- type: string
uuid:
type: string
type: object
@@ -364,7 +355,7 @@
name: longhorn-conversion-webhook
namespace: {{ include "release_namespace" . }}
path: /v1/webhook/conversion
- port: 9443
+ port: 9501
conversionReviewVersions:
- v1beta2
- v1beta1
@@ -446,9 +437,6 @@
additionalProperties:
type: string
type: object
- imageURL:
- description: 'Deprecated: This kind of info will be included in the related BackingImageDataSource.'
- type: string
sourceParameters:
additionalProperties:
type: string
@@ -465,19 +453,6 @@
properties:
checksum:
type: string
- diskDownloadProgressMap:
- additionalProperties:
- type: integer
- description: 'Deprecated: Replaced by field `Progress` in `DiskFileStatusMap`.'
- nullable: true
- type: object
- diskDownloadStateMap:
- additionalProperties:
- description: BackingImageDownloadState is replaced by BackingImageState.
- type: string
- description: 'Deprecated: Replaced by field `State` in `DiskFileStatusMap`.'
- nullable: true
- type: object
diskFileStatusMap:
additionalProperties:
properties:
@@ -637,6 +612,9 @@
backupCreatedAt:
description: The snapshot backup upload finished time.
type: string
+ compressionMethod:
+ description: Compression method
+ type: string
error:
description: The error message when taking the snapshot backup.
type: string
@@ -724,7 +702,7 @@
name: longhorn-conversion-webhook
namespace: {{ include "release_namespace" . }}
path: /v1/webhook/conversion
- port: 9443
+ port: 9501
conversionReviewVersions:
- v1beta2
- v1beta1
@@ -1032,6 +1010,9 @@
size:
description: The backup volume size.
type: string
+ storageClassName:
+ description: the storage class name of pv/pvc binding with the volume.
+ type: string
type: object
type: object
served: true
@@ -1064,7 +1045,7 @@
name: longhorn-conversion-webhook
namespace: {{ include "release_namespace" . }}
path: /v1/webhook/conversion
- port: 9443
+ port: 9501
conversionReviewVersions:
- v1beta2
- v1beta1
@@ -1333,6 +1314,11 @@
properties:
active:
type: boolean
+ backendStoreDriver:
+ enum:
+ - v1
+ - v2
+ type: string
backupVolume:
type: string
desireState:
@@ -1345,6 +1331,7 @@
enum:
- blockdev
- iscsi
+ - nvmf
- ""
type: string
logRequested:
@@ -1668,15 +1655,13 @@
spec:
description: InstanceManagerSpec defines the desired state of the Longhorn instancer manager
properties:
- engineImage:
- description: 'Deprecated: This field is useless.'
- type: string
image:
type: string
nodeID:
type: string
type:
enum:
+ - aio
- engine
- replica
type: string
@@ -1694,11 +1679,13 @@
type: integer
currentState:
type: string
- instances:
+ instanceEngines:
additionalProperties:
properties:
spec:
properties:
+ backendStoreDriver:
+ type: string
name:
type: string
type: object
@@ -1727,6 +1714,77 @@
type: object
nullable: true
type: object
+ instanceReplicas:
+ additionalProperties:
+ properties:
+ spec:
+ properties:
+ backendStoreDriver:
+ type: string
+ name:
+ type: string
+ type: object
+ status:
+ properties:
+ endpoint:
+ type: string
+ errorMsg:
+ type: string
+ listen:
+ type: string
+ portEnd:
+ format: int32
+ type: integer
+ portStart:
+ format: int32
+ type: integer
+ resourceVersion:
+ format: int64
+ type: integer
+ state:
+ type: string
+ type:
+ type: string
+ type: object
+ type: object
+ nullable: true
+ type: object
+ instances:
+ additionalProperties:
+ properties:
+ spec:
+ properties:
+ backendStoreDriver:
+ type: string
+ name:
+ type: string
+ type: object
+ status:
+ properties:
+ endpoint:
+ type: string
+ errorMsg:
+ type: string
+ listen:
+ type: string
+ portEnd:
+ format: int32
+ type: integer
+ portStart:
+ format: int32
+ type: integer
+ resourceVersion:
+ format: int64
+ type: integer
+ state:
+ type: string
+ type:
+ type: string
+ type: object
+ type: object
+ nullable: true
+ description: 'Deprecated: Replaced by InstanceEngines and InstanceReplicas'
+ type: object
ip:
type: string
ownerID:
@@ -1763,7 +1821,7 @@
name: longhorn-conversion-webhook
namespace: {{ include "release_namespace" . }}
path: /v1/webhook/conversion
- port: 9443
+ port: 9501
conversionReviewVersions:
- v1beta2
- v1beta1
@@ -1865,16 +1923,19 @@
items:
type: string
type: array
+ diskType:
+ enum:
+ - filesystem
+ - block
+ type: string
type: object
type: object
- engineManagerCPURequest:
- type: integer
evictionRequested:
type: boolean
+ instanceManagerCPURequest:
+ type: integer
name:
type: string
- replicaManagerCPURequest:
- type: integer
tags:
items:
type: string
@@ -1934,6 +1995,8 @@
type: object
nullable: true
type: array
+ diskType:
+ type: string
diskUUID:
type: string
scheduledReplica:
@@ -2153,7 +2216,7 @@
jsonPath: .spec.groups
name: Groups
type: string
- - description: Should be one of "snapshot", "snapshot-cleanup", "snapshot-delete" or "backup"
+ - description: Should be one of "snapshot", "snapshot-force-create", "snapshot-cleanup", "snapshot-delete", "backup", "backup-force-create" or "filesystem-trim"
jsonPath: .spec.task
name: Task
type: string
@@ -2215,12 +2278,15 @@
description: The retain count of the snapshot/backup.
type: integer
task:
- description: The recurring job task. Can be "snapshot", "snapshot-cleanup", "snapshot-delete" or "backup".
+ description: The recurring job task. Can be "snapshot", "snapshot-force-create", "snapshot-cleanup", "snapshot-delete", "backup", "backup-force-create" or "filesystem-trim"
enum:
- snapshot
+ - snapshot-force-create
- snapshot-cleanup
- snapshot-delete
- backup
+ - backup-force-create
+ - filesystem-trim
type: string
type: object
status:
@@ -2350,16 +2416,15 @@
properties:
active:
type: boolean
+ backendStoreDriver:
+ enum:
+ - v1
+ - v2
+ type: string
backingImage:
type: string
- baseImage:
- description: Deprecated. Rename to BackingImage
- type: string
dataDirectoryName:
type: string
- dataPath:
- description: Deprecated
- type: string
desireState:
type: string
diskID:
@@ -2626,16 +2691,20 @@
description: ShareManagerSpec defines the desired state of the Longhorn share manager
properties:
image:
+ description: Share manager image used for creating a share manager pod
type: string
type: object
status:
description: ShareManagerStatus defines the observed state of the Longhorn share manager
properties:
endpoint:
+ description: NFS endpoint that can access the mounted filesystem of the volume
type: string
ownerID:
+ description: The node ID on which the controller is responsible to reconcile this share manager resource
type: string
state:
+ description: The state of the share manager resource
type: string
type: object
type: object
@@ -2947,6 +3016,11 @@
type: object
spec:
description: SystemBackupSpec defines the desired state of the Longhorn SystemBackup
+ properties:
+ volumeBackupPolicy:
+ description: The create volume backup policy Can be "if-not-present", "always" or "disabled"
+ nullable: true
+ type: string
type: object
status:
description: SystemBackupStatus defines the observed state of the Longhorn SystemBackup
@@ -3131,7 +3205,7 @@
name: longhorn-conversion-webhook
namespace: {{ include "release_namespace" . }}
path: /v1/webhook/conversion
- port: 9443
+ port: 9501
conversionReviewVersions:
- v1beta2
- v1beta1
@@ -3238,10 +3312,18 @@
- rwo
- rwx
type: string
+ backendStoreDriver:
+ enum:
+ - v1
+ - v2
+ type: string
backingImage:
type: string
- baseImage:
- description: Deprecated. Rename to BackingImage
+ backupCompressionMethod:
+ enum:
+ - none
+ - lz4
+ - gzip
type: string
dataLocality:
enum:
@@ -3263,16 +3345,11 @@
type: string
fromBackup:
type: string
- restoreVolumeRecurringJob:
- enum:
- - ignored
- - enabled
- - disabled
- type: string
frontend:
enum:
- blockdev
- iscsi
+ - nvmf
- ""
type: string
lastAttachedBy:
@@ -3289,36 +3366,13 @@
type: array
numberOfReplicas:
type: integer
- recurringJobs:
- description: Deprecated. Replaced by a separate resource named "RecurringJob"
- items:
- description: 'Deprecated: This field is useless and has been replaced by the RecurringJob CRD'
- properties:
- concurrency:
- type: integer
- cron:
- type: string
- groups:
- items:
- type: string
- type: array
- labels:
- additionalProperties:
- type: string
- type: object
- name:
- type: string
- retain:
- type: integer
- task:
- enum:
- - snapshot
- - snapshot-cleanup
- - snapshot-delete
- - backup
- type: string
- type: object
- type: array
+ offlineReplicaRebuilding:
+ description: OfflineReplicaRebuilding is used to determine if the offline replica rebuilding feature is enabled or not
+ enum:
+ - ignored
+ - disabled
+ - enabled
+ type: string
replicaAutoBalance:
enum:
- ignored
@@ -3326,6 +3380,26 @@
- least-effort
- best-effort
type: string
+ replicaSoftAntiAffinity:
+ description: Replica soft anti affinity of the volume. Set enabled to allow replicas to be scheduled on the same node
+ enum:
+ - ignored
+ - enabled
+ - disabled
+ type: string
+ replicaZoneSoftAntiAffinity:
+ description: Replica zone soft anti affinity of the volume. Set enabled to allow replicas to be scheduled in the same zone
+ enum:
+ - ignored
+ - enabled
+ - disabled
+ type: string
+ restoreVolumeRecurringJob:
+ enum:
+ - ignored
+ - enabled
+ - disabled
+ type: string
revisionCounterDisabled:
type: boolean
size:
@@ -3388,6 +3462,9 @@
type: array
currentImage:
type: string
+ currentMigrationNodeID:
+ description: the node that this volume is currently migrating to
+ type: string
currentNodeID:
type: string
expansionRequired:
@@ -3433,9 +3510,12 @@
type: string
lastDegradedAt:
type: string
+ offlineReplicaRebuildingRequired:
+ type: boolean
ownerID:
type: string
pendingNodeID:
+ description: Deprecated.
type: string
remountRequestedAt:
type: string
@@ -3463,3 +3543,130 @@
plural: ""
conditions: []
storedVersions: []
+---
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+ annotations:
+ controller-gen.kubebuilder.io/version: v0.7.0
+ creationTimestamp: null
+ labels: {{- include "longhorn.labels" . | nindent 4 }}
+ longhorn-manager: ""
+ name: volumeattachments.longhorn.io
+spec:
+ group: longhorn.io
+ names:
+ kind: VolumeAttachment
+ listKind: VolumeAttachmentList
+ plural: volumeattachments
+ shortNames:
+ - lhva
+ singular: volumeattachment
+ scope: Namespaced
+ versions:
+ - additionalPrinterColumns:
+ - jsonPath: .metadata.creationTimestamp
+ name: Age
+ type: date
+ name: v1beta2
+ schema:
+ openAPIV3Schema:
+ description: VolumeAttachment stores attachment information of a Longhorn volume
+ properties:
+ apiVersion:
+ description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+ type: string
+ kind:
+ description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+ type: string
+ metadata:
+ type: object
+ spec:
+ description: VolumeAttachmentSpec defines the desired state of Longhorn VolumeAttachment
+ properties:
+ attachmentTickets:
+ additionalProperties:
+ properties:
+ generation:
+ description: A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.
+ format: int64
+ type: integer
+ id:
+ description: The unique ID of this attachment. Used to differentiate different attachments of the same volume.
+ type: string
+ nodeID:
+ description: The node that this attachment is requesting
+ type: string
+ parameters:
+ additionalProperties:
+ type: string
+ description: Optional additional parameter for this attachment
+ type: object
+ type:
+ type: string
+ type: object
+ type: object
+ volume:
+ description: The name of Longhorn volume of this VolumeAttachment
+ type: string
+ required:
+ - volume
+ type: object
+ status:
+ description: VolumeAttachmentStatus defines the observed state of Longhorn VolumeAttachment
+ properties:
+ attachmentTicketStatuses:
+ additionalProperties:
+ properties:
+ conditions:
+ description: Record any error when trying to fulfill this attachment
+ items:
+ properties:
+ lastProbeTime:
+ description: Last time we probed the condition.
+ type: string
+ lastTransitionTime:
+ description: Last time the condition transitioned from one status to another.
+ type: string
+ message:
+ description: Human-readable message indicating details about last transition.
+ type: string
+ reason:
+ description: Unique, one-word, CamelCase reason for the condition's last transition.
+ type: string
+ status:
+ description: Status is the status of the condition. Can be True, False, Unknown.
+ type: string
+ type:
+ description: Type is the type of the condition.
+ type: string
+ type: object
+ nullable: true
+ type: array
+ generation:
+ description: A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.
+ format: int64
+ type: integer
+ id:
+ description: The unique ID of this attachment. Used to differentiate different attachments of the same volume.
+ type: string
+ satisfied:
+ description: Indicate whether this attachment ticket has been satisfied
+ type: boolean
+ required:
+ - conditions
+ - satisfied
+ type: object
+ type: object
+ type: object
+ type: object
+ served: true
+ storage: true
+ subresources:
+ status: {}
+status:
+ acceptedNames:
+ kind: ""
+ plural: ""
+ conditions: []
+ storedVersions: []
diff --git a/charts/longhorn/templates/daemonset-sa.yaml b/charts/longhorn/templates/daemonset-sa.yaml
index 63f98cd..f361d27 100644
--- a/charts/longhorn/templates/daemonset-sa.yaml
+++ b/charts/longhorn/templates/daemonset-sa.yaml
@@ -18,10 +18,6 @@
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
- initContainers:
- - name: wait-longhorn-admission-webhook
- image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
- command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" -k https://longhorn-admission-webhook:9443/v1/healthz) != "200" ]; do echo waiting; sleep 2; done']
containers:
- name: longhorn-manager
image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
@@ -52,9 +48,17 @@
ports:
- containerPort: 9500
name: manager
+ - containerPort: 9501
+ name: conversion-wh
+ - containerPort: 9502
+ name: admission-wh
+ - containerPort: 9503
+ name: recov-backend
readinessProbe:
- tcpSocket:
- port: 9500
+ httpGet:
+ path: /v1/healthz
+ port: 9501
+ scheme: HTTPS
volumeMounts:
- name: dev
mountPath: /host/dev/
diff --git a/charts/longhorn/templates/default-setting.yaml b/charts/longhorn/templates/default-setting.yaml
index 49870a4..ac38ba9 100644
--- a/charts/longhorn/templates/default-setting.yaml
+++ b/charts/longhorn/templates/default-setting.yaml
@@ -15,6 +15,7 @@
{{ if not (kindIs "invalid" .Values.defaultSettings.replicaAutoBalance) }}replica-auto-balance: {{ .Values.defaultSettings.replicaAutoBalance }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.storageOverProvisioningPercentage) }}storage-over-provisioning-percentage: {{ .Values.defaultSettings.storageOverProvisioningPercentage }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.storageMinimalAvailablePercentage) }}storage-minimal-available-percentage: {{ .Values.defaultSettings.storageMinimalAvailablePercentage }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.storageReservedPercentageForDefaultDisk) }}storage-reserved-percentage-for-default-disk: {{ .Values.defaultSettings.storageReservedPercentageForDefaultDisk }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.upgradeChecker) }}upgrade-checker: {{ .Values.defaultSettings.upgradeChecker }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.defaultReplicaCount) }}default-replica-count: {{ .Values.defaultSettings.defaultReplicaCount }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.defaultDataLocality) }}default-data-locality: {{ .Values.defaultSettings.defaultDataLocality }}{{ end }}
@@ -51,9 +52,7 @@
{{ if not (kindIs "invalid" .Values.defaultSettings.disableSchedulingOnCordonedNode) }}disable-scheduling-on-cordoned-node: {{ .Values.defaultSettings.disableSchedulingOnCordonedNode }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.replicaZoneSoftAntiAffinity) }}replica-zone-soft-anti-affinity: {{ .Values.defaultSettings.replicaZoneSoftAntiAffinity }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.nodeDownPodDeletionPolicy) }}node-down-pod-deletion-policy: {{ .Values.defaultSettings.nodeDownPodDeletionPolicy }}{{ end }}
- {{ if not (kindIs "invalid" .Values.defaultSettings.allowNodeDrainWithLastHealthyReplica) }}allow-node-drain-with-last-healthy-replica: {{ .Values.defaultSettings.allowNodeDrainWithLastHealthyReplica }}{{ end }}
- {{ if not (kindIs "invalid" .Values.defaultSettings.mkfsExt4Parameters) }}mkfs-ext4-parameters: {{ .Values.defaultSettings.mkfsExt4Parameters }}{{ end }}
- {{ if not (kindIs "invalid" .Values.defaultSettings.disableReplicaRebuild) }}disable-replica-rebuild: {{ .Values.defaultSettings.disableReplicaRebuild }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.nodeDrainPolicy) }}node-drain-policy: {{ .Values.defaultSettings.nodeDrainPolicy }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.replicaReplenishmentWaitInterval) }}replica-replenishment-wait-interval: {{ .Values.defaultSettings.replicaReplenishmentWaitInterval }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.concurrentReplicaRebuildPerNodeLimit) }}concurrent-replica-rebuild-per-node-limit: {{ .Values.defaultSettings.concurrentReplicaRebuildPerNodeLimit }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.concurrentVolumeBackupRestorePerNodeLimit) }}concurrent-volume-backup-restore-per-node-limit: {{ .Values.defaultSettings.concurrentVolumeBackupRestorePerNodeLimit }}{{ end }}
@@ -64,8 +63,7 @@
{{ if not (kindIs "invalid" .Values.defaultSettings.concurrentAutomaticEngineUpgradePerNodeLimit) }}concurrent-automatic-engine-upgrade-per-node-limit: {{ .Values.defaultSettings.concurrentAutomaticEngineUpgradePerNodeLimit }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.backingImageCleanupWaitInterval) }}backing-image-cleanup-wait-interval: {{ .Values.defaultSettings.backingImageCleanupWaitInterval }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.backingImageRecoveryWaitInterval) }}backing-image-recovery-wait-interval: {{ .Values.defaultSettings.backingImageRecoveryWaitInterval }}{{ end }}
- {{ if not (kindIs "invalid" .Values.defaultSettings.guaranteedEngineManagerCPU) }}guaranteed-engine-manager-cpu: {{ .Values.defaultSettings.guaranteedEngineManagerCPU }}{{ end }}
- {{ if not (kindIs "invalid" .Values.defaultSettings.guaranteedReplicaManagerCPU) }}guaranteed-replica-manager-cpu: {{ .Values.defaultSettings.guaranteedReplicaManagerCPU }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.guaranteedInstanceManagerCPU) }}guaranteed-instance-manager-cpu: {{ .Values.defaultSettings.guaranteedInstanceManagerCPU }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.kubernetesClusterAutoscalerEnabled) }}kubernetes-cluster-autoscaler-enabled: {{ .Values.defaultSettings.kubernetesClusterAutoscalerEnabled }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.orphanAutoDeletion) }}orphan-auto-deletion: {{ .Values.defaultSettings.orphanAutoDeletion }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.storageNetwork) }}storage-network: {{ .Values.defaultSettings.storageNetwork }}{{ end }}
@@ -76,4 +74,10 @@
{{ if not (kindIs "invalid" .Values.defaultSettings.snapshotDataIntegrityCronjob) }}snapshot-data-integrity-cronjob: {{ .Values.defaultSettings.snapshotDataIntegrityCronjob }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.removeSnapshotsDuringFilesystemTrim) }}remove-snapshots-during-filesystem-trim: {{ .Values.defaultSettings.removeSnapshotsDuringFilesystemTrim }}{{ end }}
{{ if not (kindIs "invalid" .Values.defaultSettings.fastReplicaRebuildEnabled) }}fast-replica-rebuild-enabled: {{ .Values.defaultSettings.fastReplicaRebuildEnabled }}{{ end }}
- {{ if not (kindIs "invalid" .Values.defaultSettings.replicaFileSyncHttpClientTimeout) }}replica-file-sync-http-client-timeout: {{ .Values.defaultSettings.replicaFileSyncHttpClientTimeout }}{{ end }}
\ No newline at end of file
+ {{ if not (kindIs "invalid" .Values.defaultSettings.replicaFileSyncHttpClientTimeout) }}replica-file-sync-http-client-timeout: {{ .Values.defaultSettings.replicaFileSyncHttpClientTimeout }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.logLevel) }}log-level: {{ .Values.defaultSettings.logLevel }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.backupCompressionMethod) }}backup-compression-method: {{ .Values.defaultSettings.backupCompressionMethod }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.backupConcurrentLimit) }}backup-concurrent-limit: {{ .Values.defaultSettings.backupConcurrentLimit }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.restoreConcurrentLimit) }}restore-concurrent-limit: {{ .Values.defaultSettings.restoreConcurrentLimit }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.v2DataEngine) }}v2-data-engine: {{ .Values.defaultSettings.v2DataEngine }}{{ end }}
+ {{ if not (kindIs "invalid" .Values.defaultSettings.offlineReplicaRebuilding) }}offline-replica-rebuilding: {{ .Values.defaultSettings.offlineReplicaRebuilding }}{{ end }}
diff --git a/charts/longhorn/templates/deployment-recovery-backend.yaml b/charts/longhorn/templates/deployment-recovery-backend.yaml
deleted file mode 100644
index 81c8aba..0000000
--- a/charts/longhorn/templates/deployment-recovery-backend.yaml
+++ /dev/null
@@ -1,83 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels: {{- include "longhorn.labels" . | nindent 4 }}
- app: longhorn-recovery-backend
- name: longhorn-recovery-backend
- namespace: {{ include "release_namespace" . }}
-spec:
- replicas: {{ .Values.longhornRecoveryBackend.replicas }}
- selector:
- matchLabels:
- app: longhorn-recovery-backend
- template:
- metadata:
- labels: {{- include "longhorn.labels" . | nindent 8 }}
- app: longhorn-recovery-backend
- spec:
- affinity:
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 1
- podAffinityTerm:
- labelSelector:
- matchExpressions:
- - key: app
- operator: In
- values:
- - longhorn-recovery-backend
- topologyKey: kubernetes.io/hostname
- containers:
- - name: longhorn-recovery-backend
- image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- securityContext:
- runAsUser: 2000
- command:
- - longhorn-manager
- - recovery-backend
- - --service-account
- - longhorn-service-account
- ports:
- - containerPort: 9600
- name: recov-backend
- readinessProbe:
- tcpSocket:
- port: 9600
- initialDelaySeconds: 3
- periodSeconds: 5
- env:
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: NODE_NAME
- valueFrom:
- fieldRef:
- fieldPath: spec.nodeName
- {{- if .Values.privateRegistry.registrySecret }}
- imagePullSecrets:
- - name: {{ .Values.privateRegistry.registrySecret }}
- {{- end }}
- {{- if .Values.longhornRecoveryBackend.priorityClass }}
- priorityClassName: {{ .Values.longhornRecoveryBackend.priorityClass | quote }}
- {{- end }}
- {{- if or .Values.longhornRecoveryBackend.tolerations .Values.global.cattle.windowsCluster.enabled }}
- tolerations:
- {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
-{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
- {{- end }}
- {{- if .Values.longhornRecoveryBackend.tolerations }}
-{{ toYaml .Values.longhornRecoveryBackend.tolerations | indent 6 }}
- {{- end }}
- {{- end }}
- {{- if or .Values.longhornRecoveryBackend.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
- nodeSelector:
- {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
-{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
- {{- end }}
- {{- if .Values.longhornRecoveryBackend.nodeSelector }}
-{{ toYaml .Values.longhornRecoveryBackend.nodeSelector | indent 8 }}
- {{- end }}
- {{- end }}
- serviceAccountName: longhorn-service-account
diff --git a/charts/longhorn/templates/deployment-webhook.yaml b/charts/longhorn/templates/deployment-webhook.yaml
deleted file mode 100644
index c4d353a..0000000
--- a/charts/longhorn/templates/deployment-webhook.yaml
+++ /dev/null
@@ -1,166 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels: {{- include "longhorn.labels" . | nindent 4 }}
- app: longhorn-conversion-webhook
- name: longhorn-conversion-webhook
- namespace: {{ include "release_namespace" . }}
-spec:
- replicas: {{ .Values.longhornConversionWebhook.replicas }}
- selector:
- matchLabels:
- app: longhorn-conversion-webhook
- template:
- metadata:
- labels: {{- include "longhorn.labels" . | nindent 8 }}
- app: longhorn-conversion-webhook
- spec:
- affinity:
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 1
- podAffinityTerm:
- labelSelector:
- matchExpressions:
- - key: app
- operator: In
- values:
- - longhorn-conversion-webhook
- topologyKey: kubernetes.io/hostname
- containers:
- - name: longhorn-conversion-webhook
- image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- securityContext:
- runAsUser: 2000
- command:
- - longhorn-manager
- - conversion-webhook
- - --service-account
- - longhorn-service-account
- ports:
- - containerPort: 9443
- name: conversion-wh
- readinessProbe:
- tcpSocket:
- port: 9443
- env:
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- {{- if .Values.privateRegistry.registrySecret }}
- imagePullSecrets:
- - name: {{ .Values.privateRegistry.registrySecret }}
- {{- end }}
- {{- if .Values.longhornConversionWebhook.priorityClass }}
- priorityClassName: {{ .Values.longhornConversionWebhook.priorityClass | quote }}
- {{- end }}
- {{- if or .Values.longhornConversionWebhook.tolerations .Values.global.cattle.windowsCluster.enabled }}
- tolerations:
- {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
-{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
- {{- end }}
- {{- if .Values.longhornConversionWebhook.tolerations }}
-{{ toYaml .Values.longhornConversionWebhook.tolerations | indent 6 }}
- {{- end }}
- {{- end }}
- {{- if or .Values.longhornConversionWebhook.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
- nodeSelector:
- {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
-{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
- {{- end }}
- {{- if .Values.longhornConversionWebhook.nodeSelector }}
-{{ toYaml .Values.longhornConversionWebhook.nodeSelector | indent 8 }}
- {{- end }}
- {{- end }}
- serviceAccountName: longhorn-service-account
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- labels: {{- include "longhorn.labels" . | nindent 4 }}
- app: longhorn-admission-webhook
- name: longhorn-admission-webhook
- namespace: {{ include "release_namespace" . }}
-spec:
- replicas: {{ .Values.longhornAdmissionWebhook.replicas }}
- selector:
- matchLabels:
- app: longhorn-admission-webhook
- template:
- metadata:
- labels: {{- include "longhorn.labels" . | nindent 8 }}
- app: longhorn-admission-webhook
- spec:
- affinity:
- podAntiAffinity:
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 1
- podAffinityTerm:
- labelSelector:
- matchExpressions:
- - key: app
- operator: In
- values:
- - longhorn-admission-webhook
- topologyKey: kubernetes.io/hostname
- initContainers:
- - name: wait-longhorn-conversion-webhook
- image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
- command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" -k https://longhorn-conversion-webhook:9443/v1/healthz) != "200" ]; do echo waiting; sleep 2; done']
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- securityContext:
- runAsUser: 2000
- containers:
- - name: longhorn-admission-webhook
- image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- securityContext:
- runAsUser: 2000
- command:
- - longhorn-manager
- - admission-webhook
- - --service-account
- - longhorn-service-account
- ports:
- - containerPort: 9443
- name: admission-wh
- readinessProbe:
- tcpSocket:
- port: 9443
- env:
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: NODE_NAME
- valueFrom:
- fieldRef:
- fieldPath: spec.nodeName
- {{- if .Values.privateRegistry.registrySecret }}
- imagePullSecrets:
- - name: {{ .Values.privateRegistry.registrySecret }}
- {{- end }}
- {{- if .Values.longhornAdmissionWebhook.priorityClass }}
- priorityClassName: {{ .Values.longhornAdmissionWebhook.priorityClass | quote }}
- {{- end }}
- {{- if or .Values.longhornAdmissionWebhook.tolerations .Values.global.cattle.windowsCluster.enabled }}
- tolerations:
- {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
-{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
- {{- end }}
- {{- if .Values.longhornAdmissionWebhook.tolerations }}
-{{ toYaml .Values.longhornAdmissionWebhook.tolerations | indent 6 }}
- {{- end }}
- {{- end }}
- {{- if or .Values.longhornAdmissionWebhook.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
- nodeSelector:
- {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
-{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
- {{- end }}
- {{- if .Values.longhornAdmissionWebhook.nodeSelector }}
-{{ toYaml .Values.longhornAdmissionWebhook.nodeSelector | indent 8 }}
- {{- end }}
- {{- end }}
- serviceAccountName: longhorn-service-account
diff --git a/charts/longhorn/templates/network-policies/backing-image-data-source-network-policy.yaml b/charts/longhorn/templates/network-policies/backing-image-data-source-network-policy.yaml
new file mode 100644
index 0000000..cc91054
--- /dev/null
+++ b/charts/longhorn/templates/network-policies/backing-image-data-source-network-policy.yaml
@@ -0,0 +1,27 @@
+{{- if .Values.networkPolicies.enabled }}
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: backing-image-data-source
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-data-source
+ policyTypes:
+ - Ingress
+ ingress:
+ - from:
+ - podSelector:
+ matchLabels:
+ app: longhorn-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: instance-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-data-source
+{{- end }}
diff --git a/charts/longhorn/templates/network-policies/backing-image-manager-network-policy.yaml b/charts/longhorn/templates/network-policies/backing-image-manager-network-policy.yaml
new file mode 100644
index 0000000..ebc288f
--- /dev/null
+++ b/charts/longhorn/templates/network-policies/backing-image-manager-network-policy.yaml
@@ -0,0 +1,27 @@
+{{- if .Values.networkPolicies.enabled }}
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: backing-image-manager
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-manager
+ policyTypes:
+ - Ingress
+ ingress:
+ - from:
+ - podSelector:
+ matchLabels:
+ app: longhorn-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: instance-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-data-source
+{{- end }}
diff --git a/charts/longhorn/templates/network-policies/instance-manager-networking.yaml b/charts/longhorn/templates/network-policies/instance-manager-networking.yaml
new file mode 100644
index 0000000..6f03c6e
--- /dev/null
+++ b/charts/longhorn/templates/network-policies/instance-manager-networking.yaml
@@ -0,0 +1,27 @@
+{{- if .Values.networkPolicies.enabled }}
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: instance-manager
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ longhorn.io/component: instance-manager
+ policyTypes:
+ - Ingress
+ ingress:
+ - from:
+ - podSelector:
+ matchLabels:
+ app: longhorn-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: instance-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-manager
+ - podSelector:
+ matchLabels:
+ longhorn.io/component: backing-image-data-source
+{{- end }}
diff --git a/charts/longhorn/templates/network-policies/manager-network-policy.yaml b/charts/longhorn/templates/network-policies/manager-network-policy.yaml
new file mode 100644
index 0000000..c9d763f
--- /dev/null
+++ b/charts/longhorn/templates/network-policies/manager-network-policy.yaml
@@ -0,0 +1,35 @@
+{{- if .Values.networkPolicies.enabled }}
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: longhorn-manager
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ app: longhorn-manager
+ policyTypes:
+ - Ingress
+ ingress:
+ - from:
+ - podSelector:
+ matchLabels:
+ app: longhorn-manager
+ - podSelector:
+ matchLabels:
+ app: longhorn-ui
+ - podSelector:
+ matchLabels:
+ app: longhorn-csi-plugin
+ - podSelector:
+ matchLabels:
+ longhorn.io/managed-by: longhorn-manager
+ matchExpressions:
+ - { key: recurring-job.longhorn.io, operator: Exists }
+ - podSelector:
+ matchExpressions:
+ - { key: longhorn.io/job-task, operator: Exists }
+ - podSelector:
+ matchLabels:
+ app: longhorn-driver-deployer
+{{- end }}
diff --git a/charts/longhorn/templates/network-policies/recovery-backend-network-policy.yaml b/charts/longhorn/templates/network-policies/recovery-backend-network-policy.yaml
new file mode 100644
index 0000000..cebe485
--- /dev/null
+++ b/charts/longhorn/templates/network-policies/recovery-backend-network-policy.yaml
@@ -0,0 +1,17 @@
+{{- if .Values.networkPolicies.enabled }}
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: longhorn-recovery-backend
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ app: longhorn-manager
+ policyTypes:
+ - Ingress
+ ingress:
+ - ports:
+ - protocol: TCP
+ port: 9503
+{{- end }}
diff --git a/charts/longhorn/templates/network-policies/ui-frontend-network-policy.yaml b/charts/longhorn/templates/network-policies/ui-frontend-network-policy.yaml
new file mode 100644
index 0000000..04c8beb
--- /dev/null
+++ b/charts/longhorn/templates/network-policies/ui-frontend-network-policy.yaml
@@ -0,0 +1,46 @@
+{{- if and .Values.networkPolicies.enabled .Values.ingress.enabled (not (eq .Values.networkPolicies.type "")) }}
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: longhorn-ui-frontend
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ app: longhorn-ui
+ policyTypes:
+ - Ingress
+ ingress:
+ - from:
+ {{- if eq .Values.networkPolicies.type "rke1"}}
+ - namespaceSelector:
+ matchLabels:
+ kubernetes.io/metadata.name: ingress-nginx
+ podSelector:
+ matchLabels:
+ app.kubernetes.io/component: controller
+ app.kubernetes.io/instance: ingress-nginx
+ app.kubernetes.io/name: ingress-nginx
+ {{- else if eq .Values.networkPolicies.type "rke2" }}
+ - namespaceSelector:
+ matchLabels:
+ kubernetes.io/metadata.name: kube-system
+ podSelector:
+ matchLabels:
+ app.kubernetes.io/component: controller
+ app.kubernetes.io/instance: rke2-ingress-nginx
+ app.kubernetes.io/name: rke2-ingress-nginx
+ {{- else if eq .Values.networkPolicies.type "k3s" }}
+ - namespaceSelector:
+ matchLabels:
+ kubernetes.io/metadata.name: kube-system
+ podSelector:
+ matchLabels:
+ app.kubernetes.io/name: traefik
+ ports:
+ - port: 8000
+ protocol: TCP
+ - port: 80
+ protocol: TCP
+ {{- end }}
+{{- end }}
diff --git a/charts/longhorn/templates/network-policies/webhook-network-policy.yaml b/charts/longhorn/templates/network-policies/webhook-network-policy.yaml
new file mode 100644
index 0000000..c9790f6
--- /dev/null
+++ b/charts/longhorn/templates/network-policies/webhook-network-policy.yaml
@@ -0,0 +1,33 @@
+{{- if .Values.networkPolicies.enabled }}
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: longhorn-conversion-webhook
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ app: longhorn-manager
+ policyTypes:
+ - Ingress
+ ingress:
+ - ports:
+ - protocol: TCP
+ port: 9501
+---
+apiVersion: networking.k8s.io/v1
+kind: NetworkPolicy
+metadata:
+ name: longhorn-admission-webhook
+ namespace: longhorn-system
+spec:
+ podSelector:
+ matchLabels:
+ app: longhorn-manager
+ policyTypes:
+ - Ingress
+ ingress:
+ - ports:
+ - protocol: TCP
+ port: 9502
+{{- end }}
diff --git a/charts/longhorn/templates/postupgrade-job.yaml b/charts/longhorn/templates/postupgrade-job.yaml
index b9b2eeb..bb25a54 100644
--- a/charts/longhorn/templates/postupgrade-job.yaml
+++ b/charts/longhorn/templates/postupgrade-job.yaml
@@ -19,8 +19,6 @@
- name: longhorn-post-upgrade
image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
- securityContext:
- privileged: true
command:
- longhorn-manager
- post-upgrade
diff --git a/charts/longhorn/templates/preupgrade-job.yaml b/charts/longhorn/templates/preupgrade-job.yaml
new file mode 100644
index 0000000..357e6d7
--- /dev/null
+++ b/charts/longhorn/templates/preupgrade-job.yaml
@@ -0,0 +1,58 @@
+{{- if .Values.helmPreUpgradeCheckerJob.enabled }}
+apiVersion: batch/v1
+kind: Job
+metadata:
+ annotations:
+ "helm.sh/hook": pre-upgrade
+ "helm.sh/hook-delete-policy": hook-succeeded,before-hook-creation,hook-failed
+ name: longhorn-pre-upgrade
+ namespace: {{ include "release_namespace" . }}
+ labels: {{- include "longhorn.labels" . | nindent 4 }}
+spec:
+ activeDeadlineSeconds: 900
+ backoffLimit: 1
+ template:
+ metadata:
+ name: longhorn-pre-upgrade
+ labels: {{- include "longhorn.labels" . | nindent 8 }}
+ spec:
+ containers:
+ - name: longhorn-pre-upgrade
+ image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
+ imagePullPolicy: {{ .Values.image.pullPolicy }}
+ command:
+ - longhorn-manager
+ - pre-upgrade
+ env:
+ - name: POD_NAMESPACE
+ valueFrom:
+ fieldRef:
+ fieldPath: metadata.namespace
+ restartPolicy: OnFailure
+ {{- if .Values.privateRegistry.registrySecret }}
+ imagePullSecrets:
+ - name: {{ .Values.privateRegistry.registrySecret }}
+ {{- end }}
+ {{- if .Values.longhornManager.priorityClass }}
+ priorityClassName: {{ .Values.longhornManager.priorityClass | quote }}
+ {{- end }}
+ serviceAccountName: longhorn-service-account
+ {{- if or .Values.longhornManager.tolerations .Values.global.cattle.windowsCluster.enabled }}
+ tolerations:
+ {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
+{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
+ {{- end }}
+ {{- if .Values.longhornManager.tolerations }}
+{{ toYaml .Values.longhornManager.tolerations | indent 6 }}
+ {{- end }}
+ {{- end }}
+ {{- if or .Values.longhornManager.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
+ nodeSelector:
+ {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
+{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
+ {{- end }}
+ {{- if .Values.longhornManager.nodeSelector }}
+{{ toYaml .Values.longhornManager.nodeSelector | indent 8 }}
+ {{- end }}
+ {{- end }}
+{{- end }}
\ No newline at end of file
diff --git a/charts/longhorn/templates/services.yaml b/charts/longhorn/templates/services.yaml
index cd008db..7da9d18 100644
--- a/charts/longhorn/templates/services.yaml
+++ b/charts/longhorn/templates/services.yaml
@@ -9,10 +9,10 @@
type: ClusterIP
sessionAffinity: ClientIP
selector:
- app: longhorn-conversion-webhook
+ app: longhorn-manager
ports:
- name: conversion-webhook
- port: 9443
+ port: 9501
targetPort: conversion-wh
---
apiVersion: v1
@@ -26,10 +26,10 @@
type: ClusterIP
sessionAffinity: ClientIP
selector:
- app: longhorn-admission-webhook
+ app: longhorn-manager
ports:
- name: admission-webhook
- port: 9443
+ port: 9502
targetPort: admission-wh
---
apiVersion: v1
@@ -43,10 +43,10 @@
type: ClusterIP
sessionAffinity: ClientIP
selector:
- app: longhorn-recovery-backend
+ app: longhorn-manager
ports:
- name: recovery-backend
- port: 9600
+ port: 9503
targetPort: recov-backend
---
apiVersion: v1
diff --git a/charts/longhorn/templates/uninstall-job.yaml b/charts/longhorn/templates/uninstall-job.yaml
index 989933d..968f420 100644
--- a/charts/longhorn/templates/uninstall-job.yaml
+++ b/charts/longhorn/templates/uninstall-job.yaml
@@ -19,8 +19,6 @@
- name: longhorn-uninstall
image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }}
imagePullPolicy: {{ .Values.image.pullPolicy }}
- securityContext:
- privileged: true
command:
- longhorn-manager
- uninstall