Dell Technologies Container Storage Modules (CSM) Operator is an open-source Kubernetes operator which can be used to install and manage various CSI Drivers and CSM Modules.
- Code of Conduct
- Maintainer Guide
- Committer Guide
- Contributing Guide
- List of Adopters
- Support
- Security
- Dell Container Storage Modules Operator
Dell Container Storage Modules Operator is a Kubernetes native application which helps in installing and managing CSI Drivers and CSM Modules provided by Dell Technologies for its various storage platforms. Dell Container Storage Modules Operator uses Kubernetes CRDs (Custom Resource Definitions) to define a manifest that describes the deployment specifications for each driver to be deployed.
Dell Container Storage Modules Operator is built using the operator framework and runs custom Kubernetes controllers to manage the driver installations. These controllers listen for any create/update/delete request for the respective CRDs and try to reconcile the request.
Currently, the Dell Container Storage Modules Operator can be used to deploy the following CSI drivers provided by Dell Technologies
- CSI Driver for Dell Technologies PowerScale
- CSM Authorization
- CSM Replication
- CSM Observability
- CSM Resiliency
NOTE: You can refer to additional information about the Dell Container Storage Modules Operator on the new documentation website here
The Dell Container Storage Modules Operator image is available on Dockerhub and is officially supported by Dell Technologies. For any CSM Operator and driver issues, questions or feedback, join the Dell Technologies Container community or the Slack channel for Dell Container Storage Modules.
Dell Container Storage Modules Operator has been tested and qualified with
* Upstream Kubernetes cluster v1.27, v1.28, v1.29
* OpenShift Clusters 4.13, 4.14, 4.15 with RHEL 8.x & RHCOS worker nodes
- Clone the repo:
git clone https://github.com/dell/csm-operator.git
- Navigate one level inside the cloned repo:
cd csm-operator
- Execute
make install
to install the CRDs - Execute
make run
to have the operator running. - Install any of the operands (CSI Driver) using another session
NOTE: Closing the session where operator is running will stop the operator.
For Non OLM based install of Operator please refer the steps given here at https://dell.github.io/csm-docs/docs/deployment/csmoperator/#operator-installation-on-a-cluster-without-olm
To uninstall the Operator, execute bash scripts/uninstall.sh
NOTE: Index image or Catalog image should be used for OLM based install of Operator. This mode of install is used only for internal testing purposes as the bundle and index/catalog images are not posted in Dockerhub.
- Clone the repo:
git clone https://github.com/dell/csm-operator.git
- Navigate one level inside the cloned repo:
cd csm-operator
- Update the image specified in
deploy/olm/operator_community.yaml
to the required image. - Execute
bash scripts/install_olm.sh
to install the operator.
To uninstall the Operator, execute bash scripts/uninstall_olm.sh
For Non OLM based install of Operator using offline bundle please refer the steps given here at https://dell.github.io/csm-docs/docs/deployment/csmoperator/#offline-bundle-installation-on-a-cluster-without-olm
To install CSI drivers and CSM modules using the operator please refer here at https://dell.github.io/csm-docs/docs/deployment/csmoperator/
To uninstall CSI drivers and CSM modules installed using the operator please refer here at https://dell.github.io/csm-docs/docs/deployment/csmoperator/.
- Ensure that CSM Operator is installed and the operator pods are up and running.
- Edit the images to point to the correct location in
connectivity_client_v100.yaml
sample file located atcsm-operator\samples
folder. - To deploy Apex Connectivity Client, execute
kubectl create -f samples\connectivity_client_v100.yaml
. - Ensure that the Apex Connectivity Client pods are up and running.
- Ensure that CSM Operator is installed and the operator pods are up and running.
- Edit the required images to point to the correct location in
connectivity_client_v100.yaml
sample file located atcsm-operator\samples
folder. - To update Apex Connectivity Client, execute
kubectl apply -f samples\connectivity_client_v100.yaml
. - Ensure that the Apex Connectivity Client pods are up and running.
- Ensure that CSM Operator is installed and the operator pods are up and running.
- To uninstall Apex Connectivity Client, execute
kubectl delete -f samples\connectivity_client_v100.yaml
- Ensure that the Apex Connectivity Client pods are deleted.
This project is adhering to Semantic Versioning.
Dell Technologies Container Storage Modules (CSM) operator is 100% open source and community-driven. All components are available under Apache 2 License on GitHub.