Upgrade to Longhorn 1.4.2

This commit is contained in:
Lauri Võsandi 2023-05-18 22:46:54 +03:00
parent b415b8ca56
commit f14d2933d0
3 changed files with 99 additions and 89 deletions

View File

@ -1,10 +1,13 @@
# Longhorn distributed block storage system
The manifest was fetched from
https://raw.githubusercontent.com/longhorn/longhorn/v1.4.0/deploy/longhorn.yaml
and then heavily modified as per `changes.diff`
Pull the manifest and apply changes
To deploy Longhorn use following:
```
wget https://raw.githubusercontent.com/longhorn/longhorn/v1.4.2/deploy/longhorn.yaml -O application.yml
patch -p0 < changes.diff
```
To upgrade use following:
```
kubectl -n longhorn-system apply -f application.yml -f application-extras.yml
@ -14,7 +17,3 @@ After deploying specify `dedicated=storage:NoSchedule`
for `Kubernetes Taint Toleration` under `Setting -> General` on
[Longhorn Dashboard](https://longhorn.k-space.ee/).
Proceed to tag suitable nodes with `storage` and disable Longhorn scheduling on others.
# Known issues
* Longhorn does not support [trim](https://github.com/longhorn/longhorn/issues/836)

View File

@ -14,7 +14,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
---
# Source: longhorn/templates/serviceaccount.yaml
apiVersion: v1
@ -25,7 +25,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
---
# Source: longhorn/templates/default-setting.yaml
apiVersion: v1
@ -36,7 +36,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
data:
default-setting.yaml: |-
---
@ -49,7 +49,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
data:
storageclass.yaml: |
kind: StorageClass
@ -79,7 +79,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: backingimagedatasources.longhorn.io
spec:
@ -250,7 +250,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: backingimagemanagers.longhorn.io
spec:
@ -435,7 +435,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: backingimages.longhorn.io
spec:
@ -610,7 +610,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: backups.longhorn.io
spec:
@ -803,7 +803,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: backuptargets.longhorn.io
spec:
@ -986,7 +986,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: backupvolumes.longhorn.io
spec:
@ -1150,7 +1150,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: engineimages.longhorn.io
spec:
@ -1342,7 +1342,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: engines.longhorn.io
spec:
@ -1691,7 +1691,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: instancemanagers.longhorn.io
spec:
@ -1776,7 +1776,7 @@ spec:
description: InstanceManagerSpec defines the desired state of the Longhorn instancer manager
properties:
engineImage:
description: 'TODO: deprecate this field'
description: 'Deprecated: This field is useless.'
type: string
image:
type: string
@ -1861,7 +1861,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: nodes.longhorn.io
spec:
@ -2100,7 +2100,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: orphans.longhorn.io
spec:
@ -2269,7 +2269,7 @@ spec:
jsonPath: .spec.groups
name: Groups
type: string
- description: Should be one of "backup" or "snapshot"
- description: Should be one of "snapshot", "snapshot-force-create", "snapshot-cleanup", "snapshot-delete", "backup" or "backup-force-create"
jsonPath: .spec.task
name: Task
type: string
@ -2331,10 +2331,14 @@ spec:
description: The retain count of the snapshot/backup.
type: integer
task:
description: The recurring job type. Can be "snapshot" or "backup".
description: The recurring job task. Can be "snapshot", "snapshot-force-create", "snapshot-cleanup", "snapshot-delete", "backup" or "backup-force-create".
enum:
- snapshot
- snapshot-force-create
- snapshot-cleanup
- snapshot-delete
- backup
- backup-force-create
type: string
type: object
status:
@ -2366,7 +2370,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: replicas.longhorn.io
spec:
@ -2584,7 +2588,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: settings.longhorn.io
spec:
@ -2675,7 +2679,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: sharemanagers.longhorn.io
spec:
@ -2786,7 +2790,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: snapshots.longhorn.io
spec:
@ -2913,7 +2917,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: supportbundles.longhorn.io
spec:
@ -3039,7 +3043,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: systembackups.longhorn.io
spec:
@ -3162,7 +3166,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: systemrestores.longhorn.io
spec:
@ -3264,7 +3268,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
longhorn-manager: ""
name: volumes.longhorn.io
spec:
@ -3438,7 +3442,7 @@ spec:
recurringJobs:
description: Deprecated. Replaced by a separate resource named "RecurringJob"
items:
description: 'VolumeRecurringJobSpec is a deprecated struct. TODO: Should be removed when recurringJobs gets removed from the volume spec.'
description: 'Deprecated: This field is useless and has been replaced by the RecurringJob CRD'
properties:
concurrency:
type: integer
@ -3459,7 +3463,11 @@ spec:
task:
enum:
- snapshot
- snapshot-force-create
- snapshot-cleanup
- snapshot-delete
- backup
- backup-force-create
type: string
type: object
type: array
@ -3616,7 +3624,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
rules:
- apiGroups:
- apiextensions.k8s.io
@ -3681,7 +3689,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
@ -3699,7 +3707,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
@ -3716,7 +3724,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-manager
name: longhorn-backend
namespace: longhorn-system
@ -3737,7 +3745,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-ui
name: longhorn-frontend
namespace: longhorn-system
@ -3758,7 +3766,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-conversion-webhook
name: longhorn-conversion-webhook
namespace: longhorn-system
@ -3779,7 +3787,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-admission-webhook
name: longhorn-admission-webhook
namespace: longhorn-system
@ -3800,7 +3808,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-recovery-backend
name: longhorn-recovery-backend
namespace: longhorn-system
@ -3821,7 +3829,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
name: longhorn-engine-manager
namespace: longhorn-system
spec:
@ -3837,7 +3845,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
name: longhorn-replica-manager
namespace: longhorn-system
spec:
@ -3853,7 +3861,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-manager
name: longhorn-manager
namespace: longhorn-system
@ -3866,7 +3874,7 @@ spec:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-manager
spec:
tolerations:
@ -3876,11 +3884,11 @@ spec:
effect: NoSchedule
initContainers:
- name: wait-longhorn-admission-webhook
image: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
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: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
imagePullPolicy: IfNotPresent
securityContext:
privileged: true
@ -3889,17 +3897,17 @@ spec:
- -d
- daemon
- --engine-image
- "longhornio/longhorn-engine:v1.4.0"
- "longhornio/longhorn-engine:v1.4.2"
- --instance-manager-image
- "longhornio/longhorn-instance-manager:v1.4.0"
- "longhornio/longhorn-instance-manager:v1.4.2"
- --share-manager-image
- "longhornio/longhorn-share-manager:v1.4.0"
- "longhornio/longhorn-share-manager:v1.4.2"
- --backing-image-manager-image
- "longhornio/backing-image-manager:v1.4.0"
- "longhornio/backing-image-manager:v1.4.2"
- --support-bundle-manager-image
- "longhornio/support-bundle-kit:v0.0.17"
- "longhornio/support-bundle-kit:v0.0.24"
- --manager-image
- "longhornio/longhorn-manager:v1.4.0"
- "longhornio/longhorn-manager:v1.4.2"
- --service-account
- longhorn-service-account
ports:
@ -3959,7 +3967,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
spec:
replicas: 1
selector:
@ -3970,7 +3978,7 @@ spec:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-driver-deployer
spec:
tolerations:
@ -3979,18 +3987,18 @@ spec:
value: storage
initContainers:
- name: wait-longhorn-manager
image: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
command: ['sh', '-c', 'while [ $(curl -m 1 -s -o /dev/null -w "%{http_code}" http://longhorn-backend:9500/v1) != "200" ]; do echo waiting; sleep 2; done']
containers:
- name: longhorn-driver-deployer
image: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
imagePullPolicy: IfNotPresent
command:
- longhorn-manager
- -d
- deploy-driver
- --manager-image
- "longhornio/longhorn-manager:v1.4.0"
- "longhornio/longhorn-manager:v1.4.2"
- --manager-url
- http://longhorn-backend:9500/v1
env:
@ -4029,7 +4037,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-recovery-backend
name: longhorn-recovery-backend
namespace: longhorn-system
@ -4043,7 +4051,7 @@ spec:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-recovery-backend
spec:
tolerations:
@ -4065,7 +4073,7 @@ spec:
topologyKey: kubernetes.io/hostname
containers:
- name: longhorn-recovery-backend
image: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
imagePullPolicy: IfNotPresent
securityContext:
runAsUser: 2000
@ -4100,7 +4108,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-ui
name: longhorn-ui
namespace: longhorn-system
@ -4114,7 +4122,7 @@ spec:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-ui
spec:
tolerations:
@ -4136,7 +4144,7 @@ spec:
topologyKey: kubernetes.io/hostname
containers:
- name: longhorn-ui
image: longhornio/longhorn-ui:v1.4.0
image: longhornio/longhorn-ui:v1.4.2
imagePullPolicy: IfNotPresent
volumeMounts:
- name : nginx-cache
@ -4168,7 +4176,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-conversion-webhook
name: longhorn-conversion-webhook
namespace: longhorn-system
@ -4182,7 +4190,7 @@ spec:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-conversion-webhook
spec:
tolerations:
@ -4204,7 +4212,7 @@ spec:
topologyKey: kubernetes.io/hostname
containers:
- name: longhorn-conversion-webhook
image: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
imagePullPolicy: IfNotPresent
securityContext:
runAsUser: 2000
@ -4233,7 +4241,7 @@ metadata:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-admission-webhook
name: longhorn-admission-webhook
namespace: longhorn-system
@ -4247,7 +4255,7 @@ spec:
labels:
app.kubernetes.io/name: longhorn
app.kubernetes.io/instance: longhorn
app.kubernetes.io/version: v1.4.0
app.kubernetes.io/version: v1.4.2
app: longhorn-admission-webhook
spec:
tolerations:
@ -4269,14 +4277,14 @@ spec:
topologyKey: kubernetes.io/hostname
initContainers:
- name: wait-longhorn-conversion-webhook
image: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
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: IfNotPresent
securityContext:
runAsUser: 2000
containers:
- name: longhorn-admission-webhook
image: longhornio/longhorn-manager:v1.4.0
image: longhornio/longhorn-manager:v1.4.2
imagePullPolicy: IfNotPresent
securityContext:
runAsUser: 2000
@ -4301,3 +4309,6 @@ spec:
fieldRef:
fieldPath: spec.nodeName
serviceAccountName: longhorn-service-account
---
# Source: longhorn/templates/validate-psp-install.yaml
#

View File

@ -1,5 +1,5 @@
--- ref 2023-02-20 11:15:07.340650467 +0200
+++ application.yml 2023-02-19 18:38:05.059234209 +0200
--- application.yml2 2023-05-18 22:19:47.918873914 +0300
+++ application.yml 2023-05-18 22:19:40.226773807 +0300
@@ -60,14 +60,14 @@
storageclass.kubernetes.io/is-default-class: "true"
provisioner: driver.longhorn.io
@ -19,8 +19,8 @@
---
# Source: longhorn/templates/crds.yaml
apiVersion: apiextensions.k8s.io/v1
@@ -3869,6 +3869,11 @@
app.kubernetes.io/version: v1.4.0
@@ -3877,6 +3877,11 @@
app.kubernetes.io/version: v1.4.2
app: longhorn-manager
spec:
+ tolerations:
@ -30,9 +30,9 @@
+ effect: NoSchedule
initContainers:
- name: wait-longhorn-admission-webhook
image: longhornio/longhorn-manager:v1.4.0
@@ -3968,6 +3973,10 @@
app.kubernetes.io/version: v1.4.0
image: longhornio/longhorn-manager:v1.4.2
@@ -3976,6 +3981,10 @@
app.kubernetes.io/version: v1.4.2
app: longhorn-driver-deployer
spec:
+ tolerations:
@ -41,9 +41,9 @@
+ value: storage
initContainers:
- name: wait-longhorn-manager
image: longhornio/longhorn-manager:v1.4.0
@@ -4037,6 +4046,11 @@
app.kubernetes.io/version: v1.4.0
image: longhornio/longhorn-manager:v1.4.2
@@ -4045,6 +4054,11 @@
app.kubernetes.io/version: v1.4.2
app: longhorn-recovery-backend
spec:
+ tolerations:
@ -54,8 +54,8 @@
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
@@ -4103,6 +4117,11 @@
app.kubernetes.io/version: v1.4.0
@@ -4111,6 +4125,11 @@
app.kubernetes.io/version: v1.4.2
app: longhorn-ui
spec:
+ tolerations:
@ -66,8 +66,8 @@
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
@@ -4166,6 +4185,11 @@
app.kubernetes.io/version: v1.4.0
@@ -4174,6 +4193,11 @@
app.kubernetes.io/version: v1.4.2
app: longhorn-conversion-webhook
spec:
+ tolerations:
@ -78,8 +78,8 @@
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
@@ -4226,6 +4250,11 @@
app.kubernetes.io/version: v1.4.0
@@ -4234,6 +4258,11 @@
app.kubernetes.io/version: v1.4.2
app: longhorn-admission-webhook
spec:
+ tolerations: