36.12.2. 执行 Elasticsearch 完整集群重启
当更改 Elasticsearch 的主要版本或其他更改时,建议您完全重启,这可能会在更改过程中造成数据完整性。
如果 openshift_logging_use_ops 配置为 True,则需要对 ops 集群重复执行 Elasticsearch 集群的所有操作。
对 logging-es-ops 服务进行更改时,使用 "es-ops-blocked" 和 "es-ops" in patch
禁用 Elasticsearch 集群的所有外部通信,同时禁用它。编辑非集群日志记录服务(如
logging-es和logging-ops)不再与运行的 Elasticsearch pod 匹配:oc patch svc/logging-es -p '{"spec":{"selector":{"component":"es-blocked","provider":"openshift"}}}'$ oc patch svc/logging-es -p '{"spec":{"selector":{"component":"es-blocked","provider":"openshift"}}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 执行分片同步刷新,确保在关机之前没有等待写入磁盘的待定操作:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 防止在有意关闭节点时进行分片平衡:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 完成后,对于 Elasticsearch 集群中的每个
dc,请缩减所有节点:oc scale dc <dc_name> --replicas=0
$ oc scale dc <dc_name> --replicas=0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 缩减完成后,对于 Elasticsearch 集群都有的每个
dc,运行oc rollout latest来部署最新版本的dc对象:oc rollout latest <dc_name>
$ oc rollout latest <dc_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您将看到部署了新的 pod。当 pod 有两个就绪的容器后,您可以继续到下一个
dc。部署完成后,对于 Elasticsearch 集群都有每个
dc,扩展节点:oc scale dc <dc_name> --replicas=1
$ oc scale dc <dc_name> --replicas=1Copy to Clipboard Copied! Toggle word wrap Toggle overflow 扩展完成后,启用到 ES 集群的所有外部通信。编辑非集群日志记录服务(如
logging-es和logging-ops)来再次运行 Elasticsearch Pod:oc patch svc/logging-es -p '{"spec":{"selector":{"component":"es","provider":"openshift"}}}'$ oc patch svc/logging-es -p '{"spec":{"selector":{"component":"es","provider":"openshift"}}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow