You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FROM quay.io/operator-framework/helm-operator:v0.15.1
2
+
LABEL name="csi-driver-operator" \
3
+
maintainer="HPE Storage" \
4
+
vendor="HPE" \
5
+
version="1.0.0" \
6
+
release="1.0" \
7
+
summary="HPE CSI Operator" \
8
+
description="HPE CSI Driver Operator" \
9
+
io.k8s.display-name="HPE CSI Driver Operator for Kubernetes" \
10
+
io.k8s.description="The HPE CSI Driver Operator for Kubernetes enables container orchestrators, such as Kubernetes and OpenShift, to manage the life-cycle of persistent storage." \
Create your own `values.yaml`. The easiest way is to copy the default [./values.yaml](../../helm/charts/hpe-csi-driver/values.yaml) with `wget` and change parameters like `backend` as necessary.
20
+
*** NOTE *** If you are using OpenShift, replace `kubectl` with `oc` below.
22
21
23
-
Run the install script to set up the HPE CSI Operator.
1.``image`` is the HPE CSI Operator image. If unspecified ``image`` resolves to the released version at [hpestorage/hpe-csi-operator](https://hub.docker.com/repository/docker/hpestorage/csi-driver-operator).
28
-
2.``namespace`` is the namespace/project in which the HPE CSI Operator and its entities will be installed. If unspecified, the operator creates and installs in the ``hpe-csi`` namespace.
29
-
**HPE CSI Operator MUST be installed in a new project with no other pods. Otherwise an uninstall may delete pods that are not related to the HPE CSI Operator.**
30
-
3.``flavor`` defaults to ``k8s``. Options are ``k8s``, ``kubernetes``, ``ocp`` or ``openshift``.
31
-
4.``values.yaml`` is the customized helm-chart configuration parameters. This is a **required parameter** and must contain a valid backend HPE storage system. All parameters that need a non-default value must be specified in this file.
32
-
Refer to [Configuration for values.yaml.](https://github.com/hpe-storage/co-deployments/tree/master/helm/charts/hpe-csi-driver#configuration--installation) for details about various parameters.
33
-
34
-
**Note:** HPE CSI Driver for Kubernetes automatically configures Linux iSCSI/Multipath settings based on [config.json](https://raw.githubusercontent.com/hpe-storage/co-deployments/master/helm/charts/hpe-csi-driver/files/config.json). In order to tune these values, edit the config map with `kubectl edit configmap hpe-linux-config -n hpe-csi` and restart node plugin using `kubectl delete pod -l app=hpe-csi-node` to apply.
35
-
36
-
### Install script steps:
37
-
The install script will do the following:
38
-
1. Create New Project.<br/>
39
-
The script creates a new project (if it does not already exist) with the given namespace. If no namespace parameter is specified, the ``hpe-csi`` namespace is used.<br/>
40
-
41
-
2. Create a Custom Resource Definition (CRD) for the HPE CSI Operator. <br/>
42
-
The script waits for the CRD to be published in the cluster. If after 10 seconds the API server has not setup the CRD, the script times out.
| Namespace | Get | HPE CSI Operator needs the ability to get created namespaces |
51
-
| Storageclass | Create/Delete | Create and cleanup storage classes to be used for Provisioning |
52
-
| ClusterRoleBinding | Create/Delete/Get | HPE Operator needs to create and cleanup a ClusterRoleBinding used by the external-provisioner/external-attacher/external-snapshotter/external-resizer sidecars |
53
-
<br/>
39
+
where ``hpe-csi`` is the project/namespace in which the HPE CSI Operator is installed. It is **strongly recommended** to install the HPE CSI Operator in a new project and not add any other pods to this project/namespace. Any pods in this project will be cleaned up on an uninstall.
54
40
55
-
In addition, the operator needs access to multiple resources in the project/namespace that it is deployed in to function correctly. Hence it is recommended to install the HPE CSI Operator in the non-default namespace.
56
-
<br/>
41
+
## Upgrading
57
42
58
-
4. Creates a deployment for the Operator.<br/>
59
-
Finally the script creates and deploys the operator using the customized parameters passed in the ``values.yaml`` file.
43
+
Fetch and update CustomResource of type `HPECSIDriver` with required values
### How to upgrade from helm install to HPE CSI Operator
64
54
This upgrade will not impact the in-use volumes/filesystems from data path perspective. However, it will affect the in-flight volume/filesystem management operations. So, it is recommended to stop all the volume/filesystem management operations before doing this upgrade. Otherwise, these operations may need to be retried after the upgrade.
65
55
66
56
Remove the helm-chart using instructions in https://helm.sh/docs/using_helm/#uninstall-a-release.
67
57
Once the helm chart has been uninstalled, follow the install instructions [above.](#installation)
68
58
69
-
### Apply changes in ``values.yaml``
70
-
The ``update.sh`` script is used to apply changes from ``values.yaml`` as follows.
59
+
## Uninstall
60
+
61
+
*** NOTE *** If you are using OpenShift, replace `kubectl` with `oc`.
62
+
63
+
1. Delete the HPE CSI Driver custom resource, this will cause our CSI plugin resources to be cleaned up.
where ``hpe-csi-operator-installed-namespace`` is the project/namespace in which the HPE CSI Operator is installed. It is **strongly recommended** to install the HPE CSI Operator in a new project and not add any other pods to this project/namespace. Any pods in this project will be cleaned up on an uninstall.
81
74
82
-
If you are using OpenShift, replace `kubectl` with `oc`.
83
-
To completely remove the CustomResourceDefinition used by the Operator run
75
+
2. Delete all cluster level roles and bindings for operator
where ``hpe-csi`` is the project/namespace in which the HPE CSI Operator is installed. It is **strongly recommended** to install the HPE CSI Operator in a new project and not add any other pods to this project/namespace. Any pods in this project will be cleaned up on an uninstall.
92
91
93
92
## License
94
93
This is open source software licensed using the Apache License 2.0. Please see [LICENSE](../../LICENSE) for details.
0 commit comments