Chapter 8. Setting up the Environment
This chapter outlines the details for setting up the environment for Red Hat Gluster Storage Container Converged in OpenShift.
8.1. Preparing the Red Hat OpenShift Container Platform Cluster
Execute the following steps to prepare the Red Hat OpenShift Container Platform cluster:
- On the master or client, execute the following command to login as the cluster admin user:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc login
# oc login
For example:Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc login Authentication required for https://dhcp46-24.lab.eng.blr.redhat.com:8443 (openshift) Username: test Password: Login successful. You have access to the following projects and can switch between them with 'oc project <project_name>': * default kube-system logging management-infra openshift openshift-infra Using project "default".
oc login Authentication required for https://dhcp46-24.lab.eng.blr.redhat.com:8443 (openshift) Username: test Password: Login successful. You have access to the following projects and can switch between them with 'oc project <project_name>': * default kube-system logging management-infra openshift openshift-infra Using project "default".
- On the master or client, execute the following command to create a project, which will contain all the containerized Red Hat Gluster Storage services:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc new-project <project_name>
# oc new-project <project_name>
For example:Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc new-project storage-project
# oc new-project storage-project Now using project "storage-project" on server "https://master.example.com:8443"
- After the project is created, execute the following command on the master node to enable the deployment of the privileged containers as Red Hat Gluster Storage container can only run in the privileged mode.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oadm policy add-scc-to-user privileged -z default
# oadm policy add-scc-to-user privileged -z default
- Execute the following steps on the master to set up the router:
Note
If a router already exists, proceed to Step 5. To verify if the router is already deployed, execute the following command:Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc --all-namespaces
# oc get dc --all-namespaces
- Execute the following command to enable the deployment of the router:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oadm policy add-scc-to-user privileged -z router
# oadm policy add-scc-to-user privileged -z router
- Execute the following command to deploy the router:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oadm router storage-project-router --replicas=1
# oadm router storage-project-router --replicas=1
- Edit the subdomain name in the config.yaml file located at
/etc/origin/master/master-config.yaml
.For example:Copy to Clipboard Copied! Toggle word wrap Toggle overflow subdomain: "cloudapps.mystorage.com"
subdomain: "cloudapps.mystorage.com"
- Restart the master OpenShift services by executing the following command:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl restart atomic-openshift-master
# systemctl restart atomic-openshift-master
For OpenShift Container Platform 3.7 execute the following command to restart the services :Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl restart atomic-openshift-master-api atomic-openshift-master-controllers
# systemctl restart atomic-openshift-master-api atomic-openshift-master-controllers
Note
If the router setup fails, use the port forward method as described in Appendix C, Client Configuration using Port Forwarding .
For more information regarding router setup, see https://access.redhat.com/documentation/en/openshift-container-platform/3.6/paged/installation-and-configuration/chapter-4-setting-up-a-router - Execute the following command to verify if the router is running:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc <router_name>
# oc get dc <router_name>
For example:Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc storage-project-router
# oc get dc storage-project-router NAME REVISION DESIRED CURRENT TRIGGERED BY storage-project-router 1 1 1 config
Note
Ensure you do not edit the/etc/dnsmasq.conf
file until the router has started. - After the router is running, the client has to be setup to access the services in the OpenShift cluster. Execute the following steps on the client to set up the DNS.
- Execute the following command to find the IP address of the router:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods -o wide --all-namespaces | grep router
# oc get pods -o wide --all-namespaces | grep router storage-project storage-project-router-1-cm874 1/1 Running 119d 10.70.43.132 dhcp43-132.lab.eng.blr.redhat.com
- Edit the /etc/dnsmasq.conf file and add the following line to the file:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow address=/.cloudapps.mystorage.com/<Router_IP_Address>
address=/.cloudapps.mystorage.com/<Router_IP_Address>
where, Router_IP_Address is the IP address of the node where the router is running. - Restart the
dnsmasq
service by executing the following command:Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl restart dnsmasq
# systemctl restart dnsmasq
- Edit /etc/resolv.conf and add the following line:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow nameserver 127.0.0.1
nameserver 127.0.0.1
For more information regarding setting up the DNS, see https://access.redhat.com/documentation/en/openshift-container-platform/3.6/single/installation-and-configuration/#envirornment-requirements.