Obtain the oc client tool from OKD github releases and install the appropriate binary for your platform. Also, install Docker and configure it to have an insecure registry CIDR of
172.30.0.0/16
.
Do a basic localhost install of OKD
oc cluster up
If desired, fix the config for exposing the console and routes outside localhost (127.0.0.1)
oc cluster down
fgrep -RIl 127.0.0.1:8443 ~/openshift.local.clusterup/ | xargs sed -i 's/127.0.0.1:8443/<host IP address>:8443/g'
oc cluster up --public-hostname=<host IP address> --routing-suffix=<host IP address>.nip.io
Create a ServiceAccount and ClusterRoleBinding for Tiller, in advance of the Helm install
oc login -u system:admin
oc create serviceaccount --namespace kube-system tiller
oc create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
Install Helm while allowing time for the deployment to complete
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get | bash
helm init --history-max 200 && sleep 30
helm version
helm update repo
Patch the Tiller deployment
oc patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
Install an operator from a Helm chart, in this example the Strimzi Kafka Operator
helm repo add strimzi http://strimzi.io/charts/
helm install strimzi/strimzi-kafka-operator
Confirm that the operator install is healthy
# oc get all
NAME READY STATUS RESTARTS AGE
pod/strimzi-cluster-operator-c8d786dcb-ljt4x 1/1 Running 0 7m
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deployment.apps/strimzi-cluster-operator 1 1 1 1 7m
NAME DESIRED CURRENT READY AGE
replicaset.apps/strimzi-cluster-operator-c8d786dcb 1 1 1 7m