Difficulty: beginner
Estimated Time: 5-15 minutes

This is a single node installation of StorageOS with OpenShift 3.7. From here you can see how pods and deployments interact with StorageOS.

Don’t stop now! The next scenario will only take about 10 minutes to complete.

StorageOS and OpenShift 3.7

Step 1 of 4

Install StorageOS

Prepare host

First, ensure all the pre-req kernel modules are enabled by running the following.

./enable-lio.sh

Install StorageOS

(Openshift 3.9 supports feature gates such as mount propagation, but this is not available in Openshift 3.7. As a result, the install of StorageOS in this scenario is done by container install rather than using a DaemonSet)

docker run -d --name storageos \ -e HOSTNAME \ -e ADVERTISE_IP=[[HOST_IP]] \ -e JOIN=[[HOST_IP]] \ --pid=host \ --network=host \ --privileged \ --cap-add SYS_ADMIN \ --device /dev/fuse \ -v /sys:/sys \ -v /var/lib/storageos:/var/lib/storageos:rshared \ -v /run/docker/plugins:/run/docker/plugins \ storageos/node:1.0.0-rc2 server

Create StorageClass

First, create a secret that specifies the StorageOS api endpoint.

APIADDRESS=$(echo -n "tcp://127.0.0.1:5705" | base64); sed -i "s/REPLACE/$APIADDRESS/g" secret.yaml

oc --as system:admin -n default create -f secret.yaml

Create fast StorageClass:

oc --as system:admin create -f storageclass.yaml