为 elasticsearch 客户端设置 Kubernetes Readiness

问题描述

我将 kubernetes 中的 elasticsearch chart 从 6.6 升级到了 7.10.2 版本。数据和主 Pod 正在运行并准备就绪,但客户端尚未准备好(2 个客户端、2 个数据、3 个主)。

这是他们的状态:

NAME                                    READY   STATUS    RESTARTS   AGE

    elasticsearch-client-685c875bb5-5mcxg   0/1     Running   0          2m23s
    elasticsearch-client-685c875bb5-cs9lq   0/1     Running     0          24m

当我运行 describe 我看到这个警告:

  Warning  Unhealthy  10s (x10 over 100s)  kubelet,Readiness probe failed: Get http://_cluster/health: net/http: request canceled (Client. Timeout exceeded while awaiting headers)

在 kubectl 日志中,我得到了这个

{"type": "server","timestamp": "2021-01-24T13:43:41,318Z","level": "WARN","component": "r.suppressed","cluster.name": "elasticsearch","node.name": "elasticsearch-client-685c875bb5-5mcxg","message": "path: /_cluster/health,params: {}","stacktrace": ["org.elasticsearch.discovery.MasterNotDiscoveredException: null","at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$2.onTimeout(TransportMasterNodeAction.java:230) [elasticsearch-7.10.2.jar:7.10.2]","at org.elasticsearch.cluster.ClusterStateObserver$ContextPreservingListener.onTimeout(ClusterStateObserver.java:335) [elasticsearch-7.10.2.jar:7.10.2]","at org.elasticsearch.cluster.ClusterStateObserver$ObserverClusterStateListener.onTimeout(ClusterStateObserver.java:252) [elasticsearch-7.10.2.jar:7.10.2]","at org.elasticsearch.cluster.service.ClusterApplierService$NotifyTimeout.run(ClusterApplierService.java:601) [elasticsearch-7.10.2.jar:7.10.2]","at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:684) [elasticsearch-7.10.2.jar:7.10.2]","at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]","at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]","at java.lang.Thread.run(Thread.java:832) [?:?]"] }
{"type": "server","timestamp": "2021-01-24T13:43:51,319Z","at java.lang.Thread.run(Thread.java:832) [?:?]"] }

我将准备和活跃度 initialDelaySeconds 设置为 90 这里可能有什么问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)