Update to v1.2.0

Signed-off-by: David Ko <dko@suse.com>
This commit is contained in:
David Ko 2021-09-01 00:10:15 +08:00
parent a22706cf1e
commit 84d2f48912
7 changed files with 185 additions and 188 deletions

View File

@ -1,7 +1,7 @@
apiVersion: v1 apiVersion: v1
name: longhorn name: longhorn
version: 1.2.0-rc2 version: 1.2.0
appVersion: v1.2.0-rc2 appVersion: v1.2.0
kubeVersion: ">=v1.18.0" kubeVersion: ">=v1.18.0"
description: Longhorn is a distributed block storage system for Kubernetes. description: Longhorn is a distributed block storage system for Kubernetes.
keywords: keywords:

View File

@ -18,7 +18,7 @@ Longhorn is 100% open source software. Project source code is spread across a nu
## Prerequisites ## Prerequisites
1. A container runtime compatible with Kubernetes (Docker v1.13+, containerd v1.3.7+, etc.) 1. A container runtime compatible with Kubernetes (Docker v1.13+, containerd v1.3.7+, etc.)
2. Kubernetes v1.16+ 2. Kubernetes v1.18+
3. Make sure `bash`, `curl`, `findmnt`, `grep`, `awk` and `blkid` has been installed in all nodes of the Kubernetes cluster. 3. Make sure `bash`, `curl`, `findmnt`, `grep`, `awk` and `blkid` has been installed in all nodes of the Kubernetes cluster.
4. Make sure `open-iscsi` has been installed, and the `iscsid` daemon is running on all nodes of the Kubernetes cluster. For GKE, recommended Ubuntu as guest OS image since it contains `open-iscsi` already. 4. Make sure `open-iscsi` has been installed, and the `iscsid` daemon is running on all nodes of the Kubernetes cluster. For GKE, recommended Ubuntu as guest OS image since it contains `open-iscsi` already.

View File

@ -17,7 +17,7 @@ questions:
label: Longhorn Manager Image Repository label: Longhorn Manager Image Repository
group: "Longhorn Images Settings" group: "Longhorn Images Settings"
- variable: image.longhorn.manager.tag - variable: image.longhorn.manager.tag
default: v1.2.0-rc2 default: v1.2.0
description: "Specify Longhorn Manager Image Tag" description: "Specify Longhorn Manager Image Tag"
type: string type: string
label: Longhorn Manager Image Tag label: Longhorn Manager Image Tag
@ -29,7 +29,7 @@ questions:
label: Longhorn Engine Image Repository label: Longhorn Engine Image Repository
group: "Longhorn Images Settings" group: "Longhorn Images Settings"
- variable: image.longhorn.engine.tag - variable: image.longhorn.engine.tag
default: v1.2.0-rc2 default: v1.2.0
description: "Specify Longhorn Engine Image Tag" description: "Specify Longhorn Engine Image Tag"
type: string type: string
label: Longhorn Engine Image Tag label: Longhorn Engine Image Tag
@ -41,7 +41,7 @@ questions:
label: Longhorn UI Image Repository label: Longhorn UI Image Repository
group: "Longhorn Images Settings" group: "Longhorn Images Settings"
- variable: image.longhorn.ui.tag - variable: image.longhorn.ui.tag
default: v1.2.0-rc2 default: v1.2.0
description: "Specify Longhorn UI Image Tag" description: "Specify Longhorn UI Image Tag"
type: string type: string
label: Longhorn UI Image Tag label: Longhorn UI Image Tag

View File

@ -9,13 +9,13 @@ image:
longhorn: longhorn:
engine: engine:
repository: longhornio/longhorn-engine repository: longhornio/longhorn-engine
tag: v1.2.0-rc2 tag: v1.2.0
manager: manager:
repository: longhornio/longhorn-manager repository: longhornio/longhorn-manager
tag: v1.2.0-rc2 tag: v1.2.0
ui: ui:
repository: longhornio/longhorn-ui repository: longhornio/longhorn-ui
tag: v1.2.0-rc2 tag: v1.2.0
instanceManager: instanceManager:
repository: longhornio/longhorn-instance-manager repository: longhornio/longhorn-instance-manager
tag: v1_20210731 tag: v1_20210731

View File

@ -4,8 +4,8 @@ k8s.gcr.io/sig-storage/csi-resizer:v1.2.0
k8s.gcr.io/sig-storage/csi-snapshotter:v3.0.3 k8s.gcr.io/sig-storage/csi-snapshotter:v3.0.3
k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0 k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0
longhornio/backing-image-manager:v2_20210820 longhornio/backing-image-manager:v2_20210820
longhornio/longhorn-engine:v1.2.0-rc2 longhornio/longhorn-engine:v1.2.0
longhornio/longhorn-instance-manager:v1_20210731 longhornio/longhorn-instance-manager:v1_20210731
longhornio/longhorn-manager:v1.2.0-rc2 longhornio/longhorn-manager:v1.2.0
longhornio/longhorn-share-manager:v1_20210820 longhornio/longhorn-share-manager:v1_20210820
longhornio/longhorn-ui:v1.2.0-rc2 longhornio/longhorn-ui:v1.2.0

View File

@ -39,7 +39,7 @@ rules:
resources: ["priorityclasses"] resources: ["priorityclasses"]
verbs: ["watch", "list"] verbs: ["watch", "list"]
- apiGroups: ["storage.k8s.io"] - apiGroups: ["storage.k8s.io"]
resources: ["storageclasses", "volumeattachments","volumeattachments/status", "csinodes", "csidrivers"] resources: ["storageclasses", "volumeattachments", "volumeattachments/status", "csinodes", "csidrivers"]
verbs: ["*"] verbs: ["*"]
- apiGroups: ["snapshot.storage.k8s.io"] - apiGroups: ["snapshot.storage.k8s.io"]
resources: ["volumesnapshotclasses", "volumesnapshots", "volumesnapshotcontents", "volumesnapshotcontents/status"] resources: ["volumesnapshotclasses", "volumesnapshots", "volumesnapshotcontents", "volumesnapshotcontents/status"]
@ -611,44 +611,44 @@ spec:
listKind: BackupTargetList listKind: BackupTargetList
plural: backuptargets plural: backuptargets
shortNames: shortNames:
- lhbt - lhbt
singular: backuptarget singular: backuptarget
scope: Namespaced scope: Namespaced
versions: versions:
- name: v1beta1 - name: v1beta1
served: true served: true
storage: true storage: true
schema: schema:
openAPIV3Schema: openAPIV3Schema:
type: object type: object
properties: properties:
spec: spec:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
status: status:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
subresources: subresources:
status: {} status: {}
additionalPrinterColumns: additionalPrinterColumns:
- name: URL - name: URL
type: string type: string
description: The backup target URL description: The backup target URL
jsonPath: .spec.backupTargetURL jsonPath: .spec.backupTargetURL
- name: Credential - name: Credential
type: string type: string
description: The backup target credential secret description: The backup target credential secret
jsonPath: .spec.credentialSecret jsonPath: .spec.credentialSecret
- name: Interval - name: Interval
type: string type: string
description: The backup target poll interval description: The backup target poll interval
jsonPath: .spec.pollInterval jsonPath: .spec.pollInterval
- name: Available - name: Available
type: boolean type: boolean
description: Indicate whether the backup target is available or not description: Indicate whether the backup target is available or not
jsonPath: .status.available jsonPath: .status.available
- name: LastSyncedAt - name: LastSyncedAt
type: string type: string
description: The backup target last synced time description: The backup target last synced time
jsonPath: .status.lastSyncedAt jsonPath: .status.lastSyncedAt
--- ---
apiVersion: apiextensions.k8s.io/v1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
@ -663,40 +663,40 @@ spec:
listKind: BackupVolumeList listKind: BackupVolumeList
plural: backupvolumes plural: backupvolumes
shortNames: shortNames:
- lhbv - lhbv
singular: backupvolume singular: backupvolume
scope: Namespaced scope: Namespaced
versions: versions:
- name: v1beta1 - name: v1beta1
served: true served: true
storage: true storage: true
schema: schema:
openAPIV3Schema: openAPIV3Schema:
type: object type: object
properties: properties:
spec: spec:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
status: status:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
subresources: subresources:
status: {} status: {}
additionalPrinterColumns: additionalPrinterColumns:
- name: CreatedAt - name: CreatedAt
type: string type: string
description: The backup volume creation time description: The backup volume creation time
jsonPath: .status.createdAt jsonPath: .status.createdAt
- name: LastBackupName - name: LastBackupName
type: string type: string
description: The backup volume last backup name description: The backup volume last backup name
jsonPath: .status.lastBackupName jsonPath: .status.lastBackupName
- name: LastBackupAt - name: LastBackupAt
type: string type: string
description: The backup volume last backup time description: The backup volume last backup time
jsonPath: .status.lastBackupAt jsonPath: .status.lastBackupAt
- name: LastSyncedAt - name: LastSyncedAt
type: string type: string
description: The backup volume last synced time description: The backup volume last synced time
jsonPath: .status.lastSyncedAt jsonPath: .status.lastSyncedAt
--- ---
apiVersion: apiextensions.k8s.io/v1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
@ -711,45 +711,44 @@ spec:
listKind: BackupList listKind: BackupList
plural: backups plural: backups
shortNames: shortNames:
- lhb - lhb
singular: backup singular: backup
scope: Namespaced scope: Namespaced
versions: versions:
- name: v1beta1 - name: v1beta1
served: true served: true
storage: true storage: true
schema: schema:
openAPIV3Schema: openAPIV3Schema:
type: object type: object
properties: properties:
spec: spec:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
status: status:
x-kubernetes-preserve-unknown-fields: true x-kubernetes-preserve-unknown-fields: true
subresources: subresources:
status: {} status: {}
additionalPrinterColumns: additionalPrinterColumns:
- name: SnapshotName - name: SnapshotName
type: string type: string
description: The snapshot name description: The snapshot name
jsonPath: .status.snapshotName jsonPath: .status.snapshotName
- name: SnapshotSize - name: SnapshotSize
type: string type: string
description: The snapshot size description: The snapshot size
jsonPath: .status.size jsonPath: .status.size
- name: SnapshotCreatedAt - name: SnapshotCreatedAt
type: string type: string
description: The snapshot creation time description: The snapshot creation time
jsonPath: .status.snapshotCreatedAt jsonPath: .status.snapshotCreatedAt
- name: State - name: State
type: string type: string
description: The backup state description: The backup state
jsonPath: .status.state jsonPath: .status.state
- name: LastSyncedAt - name: LastSyncedAt
type: string type: string
description: The backup last synced time description: The backup last synced time
jsonPath: .status.lastSyncedAt jsonPath: .status.lastSyncedAt
--- ---
apiVersion: apiextensions.k8s.io/v1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
@ -764,72 +763,72 @@ spec:
listKind: RecurringJobList listKind: RecurringJobList
plural: recurringjobs plural: recurringjobs
shortNames: shortNames:
- lhrj - lhrj
singular: recurringjob singular: recurringjob
scope: Namespaced scope: Namespaced
versions: versions:
- name: v1beta1 - name: v1beta1
served: true served: true
storage: true storage: true
schema: schema:
openAPIV3Schema: openAPIV3Schema:
type: object type: object
properties: properties:
metadata: metadata:
type: object type: object
properties: properties:
name: name:
type: string
spec:
type: object
properties:
groups:
type: array
items:
type: string type: string
spec: task:
type: object type: string
properties: pattern: "^snapshot|backup$"
groups: cron:
type: array type: string
items: retain:
type: string type: integer
task: concurrency:
type: string type: integer
pattern: "^snapshot|backup$" labels:
cron: x-kubernetes-preserve-unknown-fields: true
type: string status:
retain: x-kubernetes-preserve-unknown-fields: true
type: integer subresources:
concurrency: status: {}
type: integer additionalPrinterColumns:
labels: - name: Groups
x-kubernetes-preserve-unknown-fields: true type: string
status: description: Sets groupings to the jobs. When set to "default" group will be added to the volume label when no other job label exist in volume.
x-kubernetes-preserve-unknown-fields: true jsonPath: .spec.groups
subresources: - name: Task
status: {} type: string
additionalPrinterColumns: description: Should be one of "backup" or "snapshot".
- name: Groups jsonPath: .spec.task
type: string - name: Cron
description: Sets groupings to the jobs. When set to "default" group will be added to the volume label when no other job label exist in volume. type: string
jsonPath: .spec.groups description: The cron expression represents recurring job scheduling.
- name: Task jsonPath: .spec.cron
type: string - name: Retain
description: Should be one of "backup" or "snapshot". type: integer
jsonPath: .spec.task description: The number of snapshots/backups to keep for the volume.
- name: Cron jsonPath: .spec.retain
type: string - name: Concurrency
description: The cron expression represents recurring job scheduling. type: integer
jsonPath: .spec.cron description: The concurrent job to run by each cron job.
- name: Retain jsonPath: .spec.concurrency
type: integer - name: Age
description: The number of snapshots/backups to keep for the volume. type: date
jsonPath: .spec.retain jsonPath: .metadata.creationTimestamp
- name: Concurrency - name: Labels
type: integer type: string
description: The concurrent job to run by each cron job. description: Specify the labels
jsonPath: .spec.concurrency jsonPath: .spec.labels
- name: Age
type: date
jsonPath: .metadata.creationTimestamp
- name: Labels
type: string
description: Specify the labels
jsonPath: .spec.labels
--- ---
--- ---
apiVersion: v1 apiVersion: v1
@ -845,12 +844,12 @@ data:
create-default-disk-labeled-nodes: create-default-disk-labeled-nodes:
default-data-path: default-data-path:
replica-soft-anti-affinity: replica-soft-anti-affinity:
replica-auto-balance:
storage-over-provisioning-percentage: storage-over-provisioning-percentage:
storage-minimal-available-percentage: storage-minimal-available-percentage:
upgrade-checker: upgrade-checker:
default-replica-count: default-replica-count:
default-data-locality: default-data-locality:
guaranteed-engine-cpu:
default-longhorn-static-storage-class: default-longhorn-static-storage-class:
backupstore-poll-interval: backupstore-poll-interval:
taint-toleration: taint-toleration:
@ -860,7 +859,6 @@ data:
auto-delete-pod-when-volume-detached-unexpectedly: auto-delete-pod-when-volume-detached-unexpectedly:
disable-scheduling-on-cordoned-node: disable-scheduling-on-cordoned-node:
replica-zone-soft-anti-affinity: replica-zone-soft-anti-affinity:
volume-attachment-recovery-policy:
node-down-pod-deletion-policy: node-down-pod-deletion-policy:
allow-node-drain-with-last-healthy-replica: allow-node-drain-with-last-healthy-replica:
mkfs-ext4-parameters: mkfs-ext4-parameters:
@ -874,7 +872,6 @@ data:
backing-image-cleanup-wait-interval: backing-image-cleanup-wait-interval:
guaranteed-engine-manager-cpu: guaranteed-engine-manager-cpu:
guaranteed-replica-manager-cpu: guaranteed-replica-manager-cpu:
--- ---
apiVersion: policy/v1beta1 apiVersion: policy/v1beta1
kind: PodSecurityPolicy kind: PodSecurityPolicy
@ -984,7 +981,7 @@ spec:
spec: spec:
containers: containers:
- name: longhorn-manager - name: longhorn-manager
image: longhornio/longhorn-manager:v1.2.0-rc2 image: longhornio/longhorn-manager:v1.2.0
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
securityContext: securityContext:
privileged: true privileged: true
@ -993,7 +990,7 @@ spec:
- -d - -d
- daemon - daemon
- --engine-image - --engine-image
- longhornio/longhorn-engine:v1.2.0-rc2 - longhornio/longhorn-engine:v1.2.0
- --instance-manager-image - --instance-manager-image
- longhornio/longhorn-instance-manager:v1_20210731 - longhornio/longhorn-instance-manager:v1_20210731
- --share-manager-image - --share-manager-image
@ -1001,7 +998,7 @@ spec:
- --backing-image-manager-image - --backing-image-manager-image
- longhornio/backing-image-manager:v2_20210820 - longhornio/backing-image-manager:v2_20210820
- --manager-image - --manager-image
- longhornio/longhorn-manager:v1.2.0-rc2 - longhornio/longhorn-manager:v1.2.0
- --service-account - --service-account
- longhorn-service-account - longhorn-service-account
ports: ports:
@ -1101,7 +1098,7 @@ spec:
spec: spec:
containers: containers:
- name: longhorn-ui - name: longhorn-ui
image: longhornio/longhorn-ui:v1.2.0-rc2 image: longhornio/longhorn-ui:v1.2.0
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
securityContext: securityContext:
runAsUser: 0 runAsUser: 0
@ -1157,18 +1154,18 @@ spec:
spec: spec:
initContainers: initContainers:
- name: wait-longhorn-manager - name: wait-longhorn-manager
image: longhornio/longhorn-manager:v1.2.0-rc2 image: longhornio/longhorn-manager:v1.2.0
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'] 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: containers:
- name: longhorn-driver-deployer - name: longhorn-driver-deployer
image: longhornio/longhorn-manager:v1.2.0-rc2 image: longhornio/longhorn-manager:v1.2.0
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
command: command:
- longhorn-manager - longhorn-manager
- -d - -d
- deploy-driver - deploy-driver
- --manager-image - --manager-image
- longhornio/longhorn-manager:v1.2.0-rc2 - longhornio/longhorn-manager:v1.2.0
- --manager-url - --manager-url
- http://longhorn-backend:9500/v1 - http://longhorn-backend:9500/v1
env: env:

View File

@ -101,7 +101,7 @@ spec:
spec: spec:
containers: containers:
- name: longhorn-uninstall - name: longhorn-uninstall
image: longhornio/longhorn-manager:v1.2.0-rc2 image: longhornio/longhorn-manager:v1.2.0
imagePullPolicy: Always imagePullPolicy: Always
securityContext: securityContext:
privileged: true privileged: true