Operator

Container Storage Modules Operator

Docker Hub images are discontinued. All deployments will be using images from quay.io.

The Container Storage Modules Operator is a Kubernetes Operator, which can be used to install and manage the CSI Drivers and CSM Modules provided by Dell for various storage platforms. This operator is available as a community operator for upstream Kubernetes and can be deployed using OperatorHub.io. The operator can be installed using OLM (Operator Lifecycle Manager) or manually.

Supported CSM Components

For the supported version here.

These CR will be used for new deployment or upgrade. In most case, it is recommended to use the latest available version.

Installation

Before installing the driver, you need to install the operator. You can find the installation instructions here.

Manual Installation on a cluster without OLM

NOTE: You can update the resource requests and limits when you are deploying operator using manual installation without OLM

  1. Install volume snapshot CRDs. For detailed snapshot setup procedure, click here.
  2. Clone and checkout the required csm-operator version using
git clone -b v1.9.0 https://github.com/dell/csm-operator.git
  1. cd csm-operator
  2. (Optional) If using a local Docker image, edit the deploy/operator.yaml file and set the image name for the CSM Operator Deployment.
  3. (Optional) The Container Storage Modules Operator might need more resources if users have larger environment (>1000 Pods). You can modify the default resource requests and limits in the files deploy/operator.yaml, config/manager/manager.yaml and increase the values for cpu and memory. More information on setting the resource requests and limits can be found here. Current default values are set as below:
        resources:
          limits:
            cpu: 200m
            memory: 512Mi
          requests:
            cpu: 100m
            memory: 192Mi
    
  4. (Optional) If CSM Replication is planned for use and will be deployed using two clusters in an environment where the DNS is not configured, and cluster API endpoints are FQDNs, in order to resolve queries to remote API endpoints, it is necessary to edit the deploy/operator.yaml file and add the hostAliases field and associated <FQDN>:<IP> mappings to the CSM Operator Controller Manager Deployment under spec.template.spec. More information on host aliases can be found, here.
    # example config
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: dell-csm-operator-controller-manager
    spec:
      template:
        spec:
          hostAliases:
          - hostnames:
            - "remote.FQDN"
            ip: "255.255.255.1"
    
  5. Run bash scripts/install.sh to install the operator.

NOTE: CSM Operator will be installed in the dell-csm-operator namespace.

  1. Run the command to validate the installation.
kubectl get pods -n dell-csm-operator

If installed successfully, you should be able to see the operator pod in the dell-csm-operator namespace.