diff --git a/stable/openebs/Chart.yaml b/stable/openebs/Chart.yaml index 4b4ef82b59..783392bc0f 100644 --- a/stable/openebs/Chart.yaml +++ b/stable/openebs/Chart.yaml @@ -1,9 +1,9 @@ apiVersion: v1 -version: 0.9.2 +version: 1.0.0 name: openebs -appVersion: 0.9.0 +appVersion: 1.0.0 description: Containerized Storage for Containers -icon: https://raw.githubusercontent.com/openebs/chitrakala/master/OpenEBS%20logo/logo-square.png +icon: https://raw.githubusercontent.com/cncf/artwork/master/projects/openebs/icon/color/openebs-icon-color.png home: http://www.openebs.io/ keywords: - cloud-native-storage diff --git a/stable/openebs/README.md b/stable/openebs/README.md index e063659275..a478aa83a3 100644 --- a/stable/openebs/README.md +++ b/stable/openebs/README.md @@ -11,7 +11,7 @@ Introduction This chart bootstraps OpenEBS deployment on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. ## Prerequisites -- Kubernetes 1.7.5+ with RBAC enabled +- Kubernetes 1.10+ with RBAC enabled - iSCSI PV support in the underlying infrastructure ## Installing OpenEBS @@ -40,45 +40,47 @@ The following table lists the configurable parameters of the OpenEBS chart and t | `rbac.create` | Enable RBAC Resources | `true` | | `image.pullPolicy` | Container pull policy | `IfNotPresent` | | `apiserver.image` | Image for API Server | `quay.io/openebs/m-apiserver` | -| `apiserver.imageTag` | Image Tag for API Server | `0.9.0` | +| `apiserver.imageTag` | Image Tag for API Server | `1.0.0` | | `apiserver.replicas` | Number of API Server Replicas | `1` | | `apiserver.sparse.enabled` | Create Sparse Pool based on Sparsefile | `false` | | `provisioner.image` | Image for Provisioner | `quay.io/openebs/openebs-k8s-provisioner` | -| `provisioner.imageTag` | Image Tag for Provisioner | `0.9.0` | +| `provisioner.imageTag` | Image Tag for Provisioner | `1.0.0` | | `provisioner.replicas` | Number of Provisioner Replicas | `1` | | `localProvisioner.image` | Image for localProvisioner | `quay.io/openebs/provisioner-localpv` | -| `localProvisioner.imageTag` | Image Tag for localProvisioner | `0.9.0` | +| `localProvisioner.imageTag` | Image Tag for localProvisioner | `1.0.0` | | `localProvisioner.replicas` | Number of localProvisioner Replicas | `1` | -| `localProvisioner.basePath` | BasePath for hostPath volumes on Nodes | `/var/openebs/local` | +| `localProvisioner.basePath` | BasePath for hostPath volumes on Nodes | `/var/openebs/local` | | `webhook.image` | Image for admision server | `quay.io/openebs/admission-server` | -| `webhook.imageTag` | Image Tag for admission server | `0.9.0` | +| `webhook.imageTag` | Image Tag for admission server | `1.0.0` | | `webhook.replicas` | Number of admission server Replicas | `1` | | `snapshotOperator.provisioner.image` | Image for Snapshot Provisioner | `quay.io/openebs/snapshot-provisioner` | -| `snapshotOperator.provisioner.imageTag` | Image Tag for Snapshot Provisioner | `0.9.0` | +| `snapshotOperator.provisioner.imageTag` | Image Tag for Snapshot Provisioner | `1.0.0` | | `snapshotOperator.controller.image` | Image for Snapshot Controller | `quay.io/openebs/snapshot-controller` | -| `snapshotOperator.controller.imageTag` | Image Tag for Snapshot Controller | `0.9.0` | +| `snapshotOperator.controller.imageTag` | Image Tag for Snapshot Controller | `1.0.0` | | `snapshotOperator.replicas` | Number of Snapshot Operator Replicas | `1` | | `ndm.image` | Image for Node Disk Manager | `quay.io/openebs/node-disk-manager-amd64` | -| `ndm.imageTag` | Image Tag for Node Disk Manager | `v0.3.5` | +| `ndm.imageTag` | Image Tag for Node Disk Manager | `v0.4.0` | | `ndm.sparse.path` | Directory where Sparse files are created | `/var/openebs/sparse` | | `ndm.sparse.size` | Size of the sparse file in bytes | `10737418240` | | `ndm.sparse.count` | Number of sparse files to be created | `1` | | `ndm.filters.excludeVendors` | Exclude devices with specified vendor | `CLOUDBYT,OpenEBS` | | `ndm.filters.excludePaths` | Exclude devices with specified path patterns | `loop,fd0,sr0,/dev/ram,/dev/dm-,/dev/md` | | `ndm.filters.includePaths` | Include devices with specified path patterns | `""` | +| `ndmOperator.image` | Image for NDM Operator | `quay.io/openebs/node-disk-operator-amd64`| +| `ndmOperator.imageTag` | Image Tag for NDM Operator | `v0.4.0` | | `jiva.image` | Image for Jiva | `quay.io/openebs/jiva` | -| `jiva.imageTag` | Image Tag for Jiva | `0.9.0` | +| `jiva.imageTag` | Image Tag for Jiva | `1.0.0` | | `jiva.replicas` | Number of Jiva Replicas | `3` | | `cstor.pool.image` | Image for cStor Pool | `quay.io/openebs/cstor-pool` | -| `cstor.pool.imageTag` | Image Tag for cStor Pool | `0.9.0` | +| `cstor.pool.imageTag` | Image Tag for cStor Pool | `1.0.0` | | `cstor.poolMgmt.image` | Image for cStor Pool Management | `quay.io/openebs/cstor-pool-mgmt` | -| `cstor.poolMgmt.imageTag` | Image Tag for cStor Pool Management | `0.9.0` | +| `cstor.poolMgmt.imageTag` | Image Tag for cStor Pool Management | `1.0.0` | | `cstor.target.image` | Image for cStor Target | `quay.io/openebs/cstor-istgt` | -| `cstor.target.imageTag` | Image Tag for cStor Target | `0.9.0` | +| `cstor.target.imageTag` | Image Tag for cStor Target | `1.0.0` | | `cstor.volumeMgmt.image` | Image for cStor Volume Management | `quay.io/openebs/cstor-volume-mgmt` | -| `cstor.volumeMgmt.imageTag` | Image Tag for cStor Volume Management | `0.9.0` | +| `cstor.volumeMgmt.imageTag` | Image Tag for cStor Volume Management | `1.0.0` | | `policies.monitoring.image` | Image for Prometheus Exporter | `quay.io/openebs/m-exporter` | -| `policies.monitoring.imageTag` | Image Tag for Prometheus Exporter | `0.9.0` | +| `policies.monitoring.imageTag` | Image Tag for Prometheus Exporter | `1.0.0` | | `analytics.enabled` | Enable sending stats to Google Analytics | `true` | | `analytics.pingInterval` | Duration(hours) between sending ping stat | `24h` | | `HealthCheck.initialDelaySeconds` | Delay before liveness probe is initiated | `30` | | 30 | diff --git a/stable/openebs/templates/clusterrole.yaml b/stable/openebs/templates/clusterrole.yaml index 6a6fadb340..0a388433ac 100644 --- a/stable/openebs/templates/clusterrole.yaml +++ b/stable/openebs/templates/clusterrole.yaml @@ -25,7 +25,7 @@ rules: resources: ["customresourcedefinitions"] verbs: [ "get", "list", "create", "update", "delete"] - apiGroups: ["*"] - resources: [ "disks"] + resources: [ "disks", "blockdevices", "blockdeviceclaims"] verbs: ["*" ] - apiGroups: ["*"] resources: [ "storagepoolclaims", "storagepoolclaims/finalizers","storagepools"] diff --git a/stable/openebs/templates/daemonset-ndm.yaml b/stable/openebs/templates/daemonset-ndm.yaml index dcc711b7bd..19fc6ae4b4 100644 --- a/stable/openebs/templates/daemonset-ndm.yaml +++ b/stable/openebs/templates/daemonset-ndm.yaml @@ -35,6 +35,10 @@ spec: securityContext: privileged: true env: + - name: NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace # pass hostname as env variable using downward API to the NDM container - name: NODE_NAME valueFrom: diff --git a/stable/openebs/templates/deployment-local-provisioner.yaml b/stable/openebs/templates/deployment-local-provisioner.yaml index 215f037d26..35c72a123b 100644 --- a/stable/openebs/templates/deployment-local-provisioner.yaml +++ b/stable/openebs/templates/deployment-local-provisioner.yaml @@ -8,6 +8,7 @@ metadata: release: {{ .Release.Name }} heritage: {{ .Release.Service }} component: localpv-provisioner + openebs.io/component-name: openebs-localpv-provisioner spec: replicas: {{ .Values.provisioner.replicas }} selector: @@ -21,8 +22,8 @@ spec: release: {{ .Release.Name }} component: localpv-provisioner name: openebs-localpv-provisioner - openebs.io/version: {{ .Values.release.version }} openebs.io/component-name: openebs-localpv-provisioner + openebs.io/version: {{ .Values.release.version }} spec: serviceAccountName: {{ template "openebs.serviceAccountName" . }} containers: @@ -50,8 +51,14 @@ spec: fieldPath: spec.nodeName # OPENEBS_IO_BASE_PATH is the environment variable that provides the # default base path on the node where host-path PVs will be provisioned. + - name: OPENEBS_IO_ENABLE_ANALYTICS + value: "{{ .Values.analytics.enabled }}" - name: OPENEBS_IO_BASE_PATH value: "{{ .Values.localprovisioner.basePath }}" + - name: OPENEBS_IO_HELPER_IMAGE + value: "{{ .Values.localprovisioner.helperImage }}:{{ .Values.localprovisioner.helperImageTag }}" + - name: OPENEBS_IO_INSTALLER_TYPE + value: "charts-helm" livenessProbe: exec: command: diff --git a/stable/openebs/templates/deployment-maya-apiserver.yaml b/stable/openebs/templates/deployment-maya-apiserver.yaml index 3aa622b8e9..05b5f86e5e 100644 --- a/stable/openebs/templates/deployment-maya-apiserver.yaml +++ b/stable/openebs/templates/deployment-maya-apiserver.yaml @@ -9,6 +9,7 @@ metadata: heritage: {{ .Release.Service }} component: apiserver name: maya-apiserver + openebs.io/component-name: maya-apiserver spec: replicas: {{ .Values.apiserver.replicas }} selector: @@ -94,6 +95,8 @@ spec: # for periodic ping events sent to Google Analytics. Default is 24 hours. - name: OPENEBS_IO_ANALYTICS_PING_INTERVAL value: "{{ .Values.analytics.pingInterval }}" + - name: OPENEBS_IO_INSTALLER_TYPE + value: "charts-helm" livenessProbe: exec: command: diff --git a/stable/openebs/templates/deployment-ndm-operator.yaml b/stable/openebs/templates/deployment-ndm-operator.yaml new file mode 100644 index 0000000000..c193dbf400 --- /dev/null +++ b/stable/openebs/templates/deployment-ndm-operator.yaml @@ -0,0 +1,65 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ template "openebs.fullname" . }}-ndm-operator + labels: + app: {{ template "openebs.name" . }} + chart: {{ template "openebs.chart" . }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service }} + component: ndm-operator + openebs.io/component-name: ndm-operator + name: ndm-operator +spec: + replicas: {{ .Values.ndmOperator.replicas }} + strategy: + type: {{ .Values.ndmOperator.upgradeStrategy }} + selector: + matchLabels: + app: {{ template "openebs.name" . }} + release: {{ .Release.Name }} + template: + metadata: + labels: + app: {{ template "openebs.name" . }} + release: {{ .Release.Name }} + component: ndm-operator + name: ndm-operator + openebs.io/component-name: ndm-operator + openebs.io/version: {{ .Values.release.version }} + spec: + serviceAccountName: {{ template "openebs.serviceAccountName" . }} + containers: + - name: {{ template "openebs.fullname" . }}-ndm-operator + image: "{{ .Values.ndmOperator.image }}:{{ .Values.ndmOperator.imageTag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + readinessProbe: + exec: + command: + - stat + - /tmp/operator-sdk-ready + initialDelaySeconds: {{ .Values.ndmOperator.readinessCheck.initialDelaySeconds }} + periodSeconds: {{ .Values.ndmOperator.readinessCheck.periodSeconds }} + failureThreshold: {{ .Values.ndmOperator.readinessCheck.failureThreshold }} + env: + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: OPERATOR_NAME + value: "node-disk-operator" + - name: CLEANUP_JOB_IMAGE + value: "{{ .Values.ndmOperator.cleanupImage }}:{{ .Values.ndmOperator.cleanupImageTag }}" +{{- if .Values.ndmOperator.nodeSelector }} + nodeSelector: +{{ toYaml .Values.ndmOperator.nodeSelector | indent 8 }} +{{- end }} +{{- if .Values.ndmOperator.tolerations }} + tolerations: +{{ toYaml .Values.ndmOperator.tolerations | indent 8 }} +{{- end }} diff --git a/stable/openebs/values.yaml b/stable/openebs/values.yaml index cdf44df238..8cba066a45 100644 --- a/stable/openebs/values.yaml +++ b/stable/openebs/values.yaml @@ -12,14 +12,14 @@ serviceAccount: release: # "openebs.io/version" label for control plane components - version: "0.9.0" + version: "1.0.0" image: pullPolicy: IfNotPresent apiserver: image: "quay.io/openebs/m-apiserver" - imageTag: "0.9.0" + imageTag: "1.0.0" replicas: 1 ports: externalPort: 5656 @@ -35,7 +35,7 @@ apiserver: provisioner: image: "quay.io/openebs/openebs-k8s-provisioner" - imageTag: "0.9.0" + imageTag: "1.0.0" replicas: 1 nodeSelector: {} tolerations: [] @@ -46,8 +46,11 @@ provisioner: localprovisioner: image: "quay.io/openebs/provisioner-localpv" - imageTag: "0.9.0" + imageTag: "1.0.0" + helperImage: "quay.io/openebs/openebs-tools" + helperImageTag: "3.8" replicas: 1 + basePath: "/var/openebs/local" nodeSelector: {} tolerations: [] affinity: {} @@ -58,10 +61,10 @@ localprovisioner: snapshotOperator: controller: image: "quay.io/openebs/snapshot-controller" - imageTag: "0.9.0" + imageTag: "1.0.0" provisioner: image: "quay.io/openebs/snapshot-provisioner" - imageTag: "0.9.0" + imageTag: "1.0.0" replicas: 1 upgradeStrategy: "Recreate" nodeSelector: {} @@ -73,7 +76,7 @@ snapshotOperator: ndm: image: "quay.io/openebs/node-disk-manager-amd64" - imageTag: "v0.3.5" + imageTag: "v0.4.0" sparse: path: "/var/openebs/sparse" size: "10737418240" @@ -87,9 +90,23 @@ ndm: initialDelaySeconds: 30 periodSeconds: 60 +ndmOperator: + image: "quay.io/openebs/node-disk-operator-amd64" + imageTag: "v0.4.0" + replicas: 1 + upgradeStrategy: Recreate + nodeSelector: {} + tolerations: [] + readinessCheck: + initialDelaySeconds: 4 + periodSeconds: 10 + failureThreshold: 1 + cleanupImage: "quay.io/openebs/linux-utils" + cleanupImageTag: "3.9" + webhook: image: "quay.io/openebs/admission-server" - imageTag: "0.9.0" + imageTag: "1.0.0" generateTLS: true replicas: 1 nodeSelector: {} @@ -98,28 +115,28 @@ webhook: jiva: image: "quay.io/openebs/jiva" - imageTag: "0.9.0" + imageTag: "1.0.0" replicas: 3 cstor: pool: image: "quay.io/openebs/cstor-pool" - imageTag: "0.9.0" + imageTag: "1.0.0" poolMgmt: image: "quay.io/openebs/cstor-pool-mgmt" - imageTag: "0.9.0" + imageTag: "1.0.0" target: image: "quay.io/openebs/cstor-istgt" - imageTag: "0.9.0" + imageTag: "1.0.0" volumeMgmt: image: "quay.io/openebs/cstor-volume-mgmt" - imageTag: "0.9.0" + imageTag: "1.0.0" policies: monitoring: enabled: true image: "quay.io/openebs/m-exporter" - imageTag: "0.9.0" + imageTag: "1.0.0" analytics: enabled: true