diff --git a/chart/Chart.yaml b/chart/Chart.yaml index 576c889..a79b343 100644 --- a/chart/Chart.yaml +++ b/chart/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: longhorn -version: 1.1.1-preview1 -appVersion: v1.1.1-preview1 +version: 1.1.1-rc1 +appVersion: v1.1.1-rc1 kubeVersion: ">=v1.16.0-r0" description: Longhorn is a distributed block storage system for Kubernetes. keywords: diff --git a/chart/questions.yml b/chart/questions.yml index a0caddc..1d81e27 100644 --- a/chart/questions.yml +++ b/chart/questions.yml @@ -17,7 +17,7 @@ questions: label: Longhorn Manager Image Repository group: "Longhorn Images Settings" - variable: image.longhorn.manager.tag - default: v1.1.1-preview1 + default: v1.1.1-rc1 description: "Specify Longhorn Manager Image Tag" type: string label: Longhorn Manager Image Tag @@ -29,7 +29,7 @@ questions: label: Longhorn Engine Image Repository group: "Longhorn Images Settings" - variable: image.longhorn.engine.tag - default: v1.1.1-preview1 + default: v1.1.1-rc1 description: "Specify Longhorn Engine Image Tag" type: string label: Longhorn Engine Image Tag @@ -41,7 +41,7 @@ questions: label: Longhorn UI Image Repository group: "Longhorn Images Settings" - variable: image.longhorn.ui.tag - default: v1.1.1-preview1 + default: v1.1.1-rc1 description: "Specify Longhorn UI Image Tag" type: string label: Longhorn UI Image Tag diff --git a/chart/values.yaml b/chart/values.yaml index fb380c3..e29c281 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -9,13 +9,13 @@ image: longhorn: engine: repository: longhornio/longhorn-engine - tag: v1.1.1-preview1 + tag: v1.1.1-rc1 manager: repository: longhornio/longhorn-manager - tag: v1.1.1-preview1 + tag: v1.1.1-rc1 ui: repository: longhornio/longhorn-ui - tag: v1.1.1-preview1 + tag: v1.1.1-rc1 instanceManager: repository: longhornio/longhorn-instance-manager tag: v1_20201216 diff --git a/deploy/longhorn-images.txt b/deploy/longhorn-images.txt index 5831fe1..5e2396d 100644 --- a/deploy/longhorn-images.txt +++ b/deploy/longhorn-images.txt @@ -1,10 +1,11 @@ -longhornio/longhorn-engine:v1.1.1-preview1 -longhornio/longhorn-instance-manager:v1_20201216 -longhornio/longhorn-share-manager:v1_20210406 -longhornio/longhorn-manager:v1.1.1-preview1 -longhornio/longhorn-ui:v1.1.1-preview1 longhornio/csi-attacher:v2.2.1-lh1 +longhornio/csi-node-driver-registrar:v1.2.0-lh1 longhornio/csi-provisioner:v1.6.0-lh1 longhornio/csi-resizer:v0.5.1-lh1 longhornio/csi-snapshotter:v2.1.1-lh1 -longhornio/csi-node-driver-registrar:v1.2.0-lh1 +longhornio/backing-image-manager:v1_20210407 +longhornio/longhorn-engine:v1.1.1-rc1 +longhornio/longhorn-instance-manager:v1_20201216 +longhornio/longhorn-manager:v1.1.1-rc1 +longhornio/longhorn-share-manager:v1_20210406 +longhornio/longhorn-ui:v1.1.1-rc1 diff --git a/deploy/longhorn.yaml b/deploy/longhorn.yaml index b51b5ec..3c654ac 100644 --- a/deploy/longhorn.yaml +++ b/deploy/longhorn.yaml @@ -47,7 +47,8 @@ rules: - apiGroups: ["longhorn.io"] resources: ["volumes", "volumes/status", "engines", "engines/status", "replicas", "replicas/status", "settings", "engineimages", "engineimages/status", "nodes", "nodes/status", "instancemanagers", "instancemanagers/status", - "sharemanagers", "sharemanagers/status", "backingimages", "backingimages/status"] + "sharemanagers", "sharemanagers/status", "backingimages", "backingimages/status", + "backingimagemanagers", "backingimagemanagers/status"] verbs: ["*"] - apiGroups: ["coordination.k8s.io"] resources: ["leases"] @@ -463,7 +464,7 @@ spec: listKind: BackingImageList plural: backingimages shortNames: - - lhbm + - lhbi singular: backingimage scope: Namespaced versions: @@ -489,6 +490,61 @@ spec: type: date jsonPath: .metadata.creationTimestamp --- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + labels: + longhorn-manager: BackingImageManager + name: backingimagemanagers.longhorn.io +spec: + group: longhorn.io + names: + kind: BackingImageManager + listKind: BackingImageManagerList + plural: backingimagemanagers + shortNames: + - lhbim + singular: backingimagemanager + scope: Namespaced + versions: + - name: v1beta1 + served: true + storage: true + schema: + openAPIV3Schema: + type: object + properties: + spec: + x-kubernetes-preserve-unknown-fields: true + status: + x-kubernetes-preserve-unknown-fields: true + subresources: + status: {} + additionalPrinterColumns: + - name: State + type: string + description: The current state of the manager + jsonPath: .status.currentState + - name: Image + type: string + description: The image the manager pod will use + jsonPath: .spec.image + - name: Node + type: string + description: The node the manager is on + jsonPath: .spec.nodeID + - name: DiskUUID + type: string + description: The disk the manager is responsible for + jsonPath: .spec.diskUUID + - name: DiskPath + type: string + description: The disk path the manager is using + jsonPath: .spec.diskPath + - name: Age + type: date + jsonPath: .metadata.creationTimestamp +--- apiVersion: v1 kind: ConfigMap metadata: @@ -639,7 +695,7 @@ spec: spec: containers: - name: longhorn-manager - image: longhornio/longhorn-manager:v1.1.1-preview1 + image: longhornio/longhorn-manager:v1.1.1-rc1 imagePullPolicy: IfNotPresent securityContext: privileged: true @@ -648,13 +704,15 @@ spec: - -d - daemon - --engine-image - - longhornio/longhorn-engine:v1.1.1-preview1 + - longhornio/longhorn-engine:v1.1.1-rc1 - --instance-manager-image - longhornio/longhorn-instance-manager:v1_20201216 - --share-manager-image - longhornio/longhorn-share-manager:v1_20210406 + - --backing-image-manager-image + - longhornio/backing-image-manager:v1_20210407 - --manager-image - - longhornio/longhorn-manager:v1.1.1-preview1 + - longhornio/longhorn-manager:v1.1.1-rc1 - --service-account - longhorn-service-account ports: @@ -704,6 +762,12 @@ spec: name: longhorn-default-setting # imagePullSecrets: # - name: "" +# priorityClassName: +# tolerations: +# - key: "key" +# operator: "Equal" +# value: "value" +# effect: "NoSchedule" serviceAccountName: longhorn-service-account updateStrategy: rollingUpdate: @@ -745,7 +809,7 @@ spec: spec: containers: - name: longhorn-ui - image: longhornio/longhorn-ui:v1.1.1-preview1 + image: longhornio/longhorn-ui:v1.1.1-rc1 imagePullPolicy: IfNotPresent securityContext: runAsUser: 0 @@ -756,7 +820,13 @@ spec: - name: LONGHORN_MANAGER_IP value: "http://longhorn-backend:9500" # imagePullSecrets: -# - name: +# - name: "" +# priorityClassName: +# tolerations: +# - key: "key" +# operator: "Equal" +# value: "value" +# effect: "NoSchedule" --- kind: Service apiVersion: v1 @@ -792,18 +862,18 @@ spec: spec: initContainers: - name: wait-longhorn-manager - image: longhornio/longhorn-manager:v1.1.1-preview1 + image: longhornio/longhorn-manager:v1.1.1-rc1 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.1.1-preview1 + image: longhornio/longhorn-manager:v1.1.1-rc1 imagePullPolicy: IfNotPresent command: - longhorn-manager - -d - deploy-driver - --manager-image - - longhornio/longhorn-manager:v1.1.1-preview1 + - longhornio/longhorn-manager:v1.1.1-rc1 - --manager-url - http://longhorn-backend:9500/v1 env: @@ -823,7 +893,7 @@ spec: #- name: KUBELET_ROOT_DIR # value: /var/lib/rancher/k3s/agent/kubelet # For AirGap Installation - # Replace PREFIX with your private registery + # Replace PREFIX with your private registry #- name: CSI_ATTACHER_IMAGE # value: PREFIX/csi-attacher:v2.2.1-lh1 #- name: CSI_PROVISIONER_IMAGE @@ -844,8 +914,14 @@ spec: # value: "3" #- name: CSI_SNAPSHOTTER_REPLICA_COUNT # value: "3" - #imagePullSecrets: - #- name: +# imagePullSecrets: +# - name: "" +# priorityClassName: +# tolerations: +# - key: "key" +# operator: "Equal" +# value: "value" +# effect: "NoSchedule" serviceAccountName: longhorn-service-account securityContext: runAsUser: 0 diff --git a/deploy/release-images.txt b/deploy/release-images.txt index 5831fe1..5e2396d 100644 --- a/deploy/release-images.txt +++ b/deploy/release-images.txt @@ -1,10 +1,11 @@ -longhornio/longhorn-engine:v1.1.1-preview1 -longhornio/longhorn-instance-manager:v1_20201216 -longhornio/longhorn-share-manager:v1_20210406 -longhornio/longhorn-manager:v1.1.1-preview1 -longhornio/longhorn-ui:v1.1.1-preview1 longhornio/csi-attacher:v2.2.1-lh1 +longhornio/csi-node-driver-registrar:v1.2.0-lh1 longhornio/csi-provisioner:v1.6.0-lh1 longhornio/csi-resizer:v0.5.1-lh1 longhornio/csi-snapshotter:v2.1.1-lh1 -longhornio/csi-node-driver-registrar:v1.2.0-lh1 +longhornio/backing-image-manager:v1_20210407 +longhornio/longhorn-engine:v1.1.1-rc1 +longhornio/longhorn-instance-manager:v1_20201216 +longhornio/longhorn-manager:v1.1.1-rc1 +longhornio/longhorn-share-manager:v1_20210406 +longhornio/longhorn-ui:v1.1.1-rc1 diff --git a/uninstall/uninstall.yaml b/uninstall/uninstall.yaml index eb12e74..c75a20d 100644 --- a/uninstall/uninstall.yaml +++ b/uninstall/uninstall.yaml @@ -1,3 +1,33 @@ +apiVersion: policy/v1beta1 +kind: PodSecurityPolicy +metadata: + name: longhorn-uninstall-psp +spec: + privileged: true + allowPrivilegeEscalation: true + requiredDropCapabilities: + - NET_RAW + allowedCapabilities: + - SYS_ADMIN + hostNetwork: false + hostIPC: false + hostPID: true + runAsUser: + rule: RunAsAny + seLinux: + rule: RunAsAny + fsGroup: + rule: RunAsAny + supplementalGroups: + rule: RunAsAny + volumes: + - configMap + - downwardAPI + - emptyDir + - secret + - projected + - hostPath +--- apiVersion: v1 kind: ServiceAccount metadata: @@ -34,11 +64,15 @@ rules: resources: ["csidrivers", "storageclasses"] verbs: ["*"] - apiGroups: ["longhorn.io"] - resources: ["volumes", "engines", "replicas", "settings", "engineimages", "nodes", "instancemanagers", "sharemanagers", "backingimages"] + resources: ["volumes", "engines", "replicas", "settings", "engineimages", "nodes", "instancemanagers", "sharemanagers", "backingimages", "backingimagemanagers"] verbs: ["*"] - apiGroups: ["coordination.k8s.io"] resources: ["leases"] verbs: ["*"] + - apiGroups: ["policy"] + resources: ["podsecuritypolicies"] + verbs: ["use"] + resourceNames: ["longhorn-uninstall-psp"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding @@ -67,8 +101,10 @@ spec: spec: containers: - name: longhorn-uninstall - image: longhornio/longhorn-manager:v1.1.1-preview1 + image: longhornio/longhorn-manager:v1.1.1-rc1 imagePullPolicy: Always + securityContext: + privileged: true command: - longhorn-manager - uninstall