8.2.3.2. 升级 Gluster 块
执行以下步骤升级 gluster 块。
推荐的用于块存储的 Red Hat Enterprise Linux(RHEL)版本是 RHEL-7.5.4。请确定您的内核版本与 3.10.0-862.14.4.el7.x86_64 匹配。验证执行:
# uname -r
重启节点以使最新的内核更新生效。
要使用 gluster 块,请在 /etc/heketi/heketi.JSON 的 heketi 配置文件中添加以下两个参数到
glusterfs部分:auto_create_block_hosting_volume block_hosting_volume_size其中:
auto_create_block_hosting_volume:如果未找到或现有卷是否已耗尽,则自动创建块主机卷。若要启用此功能,请将值设为true。block_hosting_volume_size:将按上述大小创建新的块托管卷。只有 auto_create_block_hosting_volume 设为 true 时才会考虑这一点。推荐的大小为 500G。例如:
..... ..... "glusterfs" : { "executor" : "ssh", "db" : "/var/lib/heketi/heketi.db", "sshexec" : { "rebalance_on_expansion": true, "keyfile" : "/etc/heketi/private_key" }, "auto_create_block_hosting_volume": true, "block_hosting_volume_size": 500G }, ..... .....重启 Heketi 服务:
# systemctl restart heketi注意如果 heketi 作为 Openshift 集群中的 pod 运行,则此步骤不适用。
如果 gluster-block-provisoner-pod 已经存在,则执行以下命令来删除它:
# oc delete dc <gluster-block-dc>例如:
# oc delete dc glusterblock-provisioner-dc从旧 pod 中删除以下资源
如果您有 glusterfs pod:
# oc delete clusterroles.authorization.openshift.io glusterblock-provisioner-runner# oc delete serviceaccounts glusterblock-provisioner serviceaccount "glusterblock-provisioner" deleted # oc delete clusterrolebindings.authorization.openshift.io glusterblock-provisioner如果您有 registry pod:
# oc delete clusterroles.authorization.openshift.io glusterblock-provisioner-runner# oc delete serviceaccounts glusterblock-provisioner serviceaccount "glusterblock-provisioner" deleted # oc delete clusterrolebindings.authorization.openshift.io glusterblock-provisioner执行以下命令来部署 gluster-block 置备程序:
# sed -e 's/\\\${NAMESPACE}/<NAMESPACE>/' /usr/share/heketi/templates/glusterblock-provisioner.yaml | oc create -f -# oc adm policy add-cluster-role-to-user glusterblock-provisioner-runner system:serviceaccount:<NAMESPACE>:glusterblock-provisioner例如:
# sed -e 's/\\\${NAMESPACE}/storage-project/' /usr/share/heketi/templates/glusterblock-provisioner.yaml | oc create -f -# oc adm policy add-cluster-role-to-user glusterblock-provisioner-runner system:serviceaccount:storage-project:glusterblock-provisioner