COSI Driver installation using Operator

The COSI Driver for Dell ObjectScale can be deployed by using the CSM Operator.

  1. Set up an OpenShift cluster following the official documentation.
  2. Proceed to the Prerequisites.
  3. Complete the driver installation.


To use the COSI Driver, you must deploy the following components to your cluster:

  • Kubernetes Container Object Storage Interface CRDs
  • Container Object Storage Interface Controller

Note: The following kubectl patch command is required as the current installation procedure for v0.2.1 will use a previous image version.

oc create -k 'https://github.com/kubernetes-sigs/container-object-storage-interface//?ref=v0.2.1'
oc patch deployment container-object-storage-controller -n container-object-storage-system -p '{"spec":{"template":{"spec":{"containers":[{"name":"objectstorage-controller","image":"gcr.io/k8s-staging-sig-storage/objectstorage-controller:release-0.2"}]}}}}'


Operator Installation


  1. On the OpenShift console, navigate to OperatorHub and use the keyword filter to search for Dell Container Storage Modules.

  2. Click Dell Container Storage Modules tile

  3. Keep all default settings and click Install.


    Verify that the operator is deployed

    oc get operators
    
    NAME                                                          AGE
    dell-csm-operator-certified.openshift-operators               2d21h
    
    oc get pod -n openshift-operators
    
    NAME                                                       READY   STATUS       RESTARTS      AGE
    dell-csm-operator-controller-manager-86dcdc8c48-6dkxm      2/2     Running      21 (19h ago)  2d21h
    

Install COSI Driver

  1. Ensure that you have created the project where you want to install the driver.
oc new-project dell-cosi
  1. Create a new file called secret.yaml with the contents of the configuration file. Edit the file with parameters specific to the ObjectScale instance.
cat <<EOF > secret.yaml
connections:
  - objectscale:
      id: objectscale
      credentials:
        username: namespaceadmin
        password: namespaceadminpassword
      namespace: ns1
      mgmt-endpoint: https://mgmt-endpoint-address:4443
      emptyBucket: true
      protocols:
        s3:
          endpoint: https://s3-endpoint-address:9021
      tls:
        insecure: true
EOF
  1. Create a secret by running
oc create secret generic cosi-config -n dell-cosi --from-file=config.yaml=secret.yaml
  1. Create a Custom Resource (CR) for COSI using either minimal resource file or the more configurable sample. Save one of the following YAML blocks to a file.
Minimal Configuration
Detailed Configuration
  1. Create the COSI CR using the CR.
    oc create -f csm-cosi.yaml
    
    You should see the following output:
    containerstoragemodule.storage.dell.com/cosi created
    
  2. Validate the installation
    # oc get csm -A
    NAMESPACE   NAME   CREATIONTIME   CSIDRIVERTYPE   CONFIGVERSION   STATE
    dell-cosi   cosi   16s            cosi            v1.0.0          Succeeded
    
    # oc -n dell-cosi get pods
    NAME                   READY   STATUS    RESTARTS   AGE
    cosi-59fbff5ff-m2j5x   2/2     Running   0          32s
    cosi-59fbff5ff-w2sxm   2/2     Running   0          32s