OpenShift 3.9+

The recommended way to run StorageOS on an OpenShift 3.9+ cluster is to deploy a daemonset with RBAC support.

Prerequisites

You will need an OpenShift cluster with Beta APIs enabled.

  1. Ensure any firewalls permit the appropriate ports
  2. Ensure that your docker installation has mount propagation enabled per our mount propagation prerequisites
  3. Enable the MountPropagation flag by appending feature gates to the api and controller (you can apply these changes using the Ansible Playbooks)

Note: If you are using atomic installation rather than origin, the location of the yaml config files and service names might change.

  • Add to the KubernetesMasterConfig section (/etc/origin/master/master-config.yaml):

    kubernetesMasterConfig:
    apiServerArguments:
        feature-gates:
        - MountPropagation=true
    controllerArguments:
        feature-gates:
        - MountPropagation=true
    
  • Add to the feature-gates to the kubelet arguments (/etc/origin/node/node-config.yaml):

    kubeletArguments:
      feature-gates:
      - MountPropagation=true
    
  • Warning: Restarting OpenShift services can cause downtime in the cluster.
  • Restart services in the MasterNode origin-master-api.service, origin-master-controllers.service and origin-node.service
  • Restart service in all Nodes origin-node.service

Install StorageOS

git clone https://github.com/storageos/deploy.git storageos
cd storageos/openshift/deploy-storageos/standard
./deploy-storageos.sh