Show Table of Contents
8.2. Upgrading your environment
- Execute the following command to update the heketi packages:
# yum update heketi-templates -y # yum update heketi-client -y
Note
When you runyum update heketi-templates -ycommand, theheketi-templatespackage is replaced withcns-deploy. - Execute the following command to delete the old gluster template:
# oc delete templates glusterfs
- Execute the following command to register the new gluster template to OpenShift platform:
# oc create -f /usr/share/heketi/templates/glusterfs-template.yaml
- Execute the following command to deploy the Red Hat Gluster Storage pods:
# oc process glusterfs | oc create -f - daemonset "glusterfs" created
- Execute the following command to delete the glusterfs Deploymentconfing for each gluster node:
# oc delete deploymentconfig glusterfs-dc-<IP_address/Hostname>
For example,# oc delete deploymentconfig glusterfs-dc-node1.example.com deploymentconfig "node1.example.com" deleted
- Execute the following command to label each node that will run Red Hat Gluster Storage pods as
glusterfs:# oc label nodes <nodename> storagenode=glusterfs
For example,# oc label nodes node1.example.com storagenode=glusterfs node "node1.example.com" labeled
- Execute the following command to delete the heketi template
# oc delete templates heketi
- Execute the following command to install the heketi template:
# oc create -f /usr/share/heketi/templates/heketi-template.yaml template "heketi" created
- Execute the following command to create the heketi Service Account:
# oc create -f /usr/share/heketi/templates/heketi-service-account.yaml serviceaccount "heketi-service-account" created
- Execute the following command to grant the heketi Service Account the neccessary privileges:
# oc policy add-role-to-user edit system:serviceaccount:<project_name>:heketi-service-account
For example,# oc policy add-role-to-user edit system:serviceaccount:storage-project:heketi-service-account
- Execute the following command to delete the deployment configuration, service, and route for heketi:
# oc delete deploymentconfig heketi # oc delete route heketi # oc delete service heketi
- Execute the following command to determine the mountable secret you should use for the heketi pods:
# oc describe sa heketi-service-account Name: heketi-service-account Namespace: storage-project Labels: none Image pull secrets: heketi-service-account-dockercfg-jmxyz Mountable secrets: heketi-service-account-dockercfg-jmxyz heketi-service-account-token-fvhmb Tokens: heketi-service-account-token-fvhmb heketi-service-account-token-lzifjYou should select a secret that is mountable, in your project namespace, and of typekubernetes.io/service-account-token. You can use the following command to inspect a given secret:# oc describe secret <secret name>
For example:# oc describe secret heketi-service-account-token-fvhmb Name: heketi-service-account-token-fvhmb Namespace: storage-project Labels: none Annotations: kubernetes.io/service-account.name=heketi-service-account kubernetes.io/service-account.uid=3afe5e84-c863-11e6-8736-525400556335 Type: kubernetes.io/service-account-token Data ==== ca.crt: 1070 bytes namespace: 4 bytes service-ca.crt: 2186 bytes token: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJhcGxvIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6Imhla2V0aS1zZXJ2aWNlLWFjY291bnQtdG9rZW4tZnZobWIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiaGVrZXRpLXNlcnZpY2UtYWNjb3VudCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjNhZmU1ZTg0LWM4NjMtMTFlNi04NzM2LTUyNTQwMDU1NjMzNSIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDphcGxvOmhla2V0aS1zZXJ2aWNlLWFjY291bnQifQ.OesojdalmQ9pAGR6CQ03vJizrVOGTrKYwvzVbEsms422YkJ1vFLI0idlA3Sxw3C_ZXamOEidYfD7n5A8099qjSyfbEhSZDpaYDfpH-o5gnyjNFpuBkZwPGE9KAEmStOGMtNhO-xAEtrD0UkHtDvy8JKnlrzMStP7NCfpGLL36X4qMx9exL3WGlWcth0kV0mGb3m-NWxr2w7twZK8xP-N8sMbdyD4s-N8naEBxBGAbNxufBBj6FXzzQSg5d1vIYls_ZgqbZV9Dn7fz9aB_GD9UfxI42EER8bzpobyNhxmu5GFfhX1TqE0kqfq1GR7P_Y6TuXrP2aYKPcR9ngZ56grLA - Execute the following command to deploy the Heketi service which will be used to create persistent volumes for OpenShift:
# oc process heketi -v \ HEKETI_KUBE_NAMESPACE=<Project name> \ HEKETI_KUBE_APIHOST='<OpenShift master endpoint address>' \ HEKETI_KUBE_INSECURE=y \ HEKETI_KUBE_SECRETNAME=<heketi-service-account secret> | oc create -f -For example:oc process heketi -v \ HEKETI_KUBE_NAMESPACE=storage-project \ HEKETI_KUBE_APIHOST='https://master.example.com:8443' \ HEKETI_KUBE_INSECURE=y \ HEKETI_KUBE_SECRETNAME=<secret from step 12 example> | oc create -f - service "heketi" created route "heketi" created deploymentconfig "heketi" created - Execute the following command to verify that the containers are running:
# oc get pods
For example:# oc get pods NAME READY STATUS RESTARTS AGE storage-project-router-1-pj9ea 1/1 Running 0 1d deploy-heketi-1-m7x8g 1/1 Running 0 1m glusterfs-41lfl 1/1 Running 0 1m glusterfs-dtyr4 1/1 Running 0 1m glusterfs-ral2d 1/1 Running 0 1m

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.