当前位置: 首页 > 知识库问答 >
问题:

Kubernetes的活跃度探测器是谁/在哪里工作的?

满伟彦
2023-03-14
Liveness probe failed: Get http://10.233.90.72:8080/health: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

请给我一些建议。

kubectl version:
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.3", GitCommit:"721bfa751924da8d1680787490c54b9179b1fed0", GitTreeState:"clean", BuildDate:"2019-02-01T20:00:57Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.3", GitCommit:"721bfa751924da8d1680787490c54b9179b1fed0", GitTreeState:"clean", BuildDate:"2019-02-01T20:00:57Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}

version info:
 OS: Ubuntu 18.04
 Kubernetes: 1.13.3
 Docker: 18.09.2

提前致谢

共有1个答案

司徒焕
2023-03-14

你查过DNS了吗?使用BusyBox:1.28,尝试执行对pod的dns查找,看看得到了什么。

nslookup pod-ip-in-dash.pod.cluster.local

另一件你可以做的事情,你可能已经做了,检查kube-system如果coredns pod正在运行。

告诉我进展如何,

 类似资料:
  • 给出一个Python应用程序,它在无限循环中轮询Kafka主题,并在处理接收到的Kafka消息后将结果上传到s3 bucket。 null 并且活性探测只检查轮询循环是否尚未退出。 严格来说,在准备调查中检查这样的事情是不好的做法吗?

  • 我可以找到文件,其中提到我如何添加我的自定义探针和改变探针参数,如初始延迟等,但不能找到默认的探针方法使用的K8S。

  • 为了简单起见,我认为在kubernetes中最好只检查TCP端口的活跃度和就绪度,因为它不需要了解健康检查endpoint(HTTP路径),而只需要端口号。任何关于仅仅依赖TCP端口进行服务健康检查的缺点的指南都非常赞赏,请假设POD不是其他服务的代理,并且所有业务逻辑都在POD本身中。 https://kubernetes.io/docs/tasks/configure-pod-containe

  • 我在我的pod上配置了一个带有二进制执行检查的readinessProbe,它连接到我正在运行的服务器(在同一个容器中),并检索一些健康信息(比如准备好流量)。 配置为readinessProbe,二进制文件无法联系我的服务器并获得所需的信息。它通过TCP套接字连接。但是当我将其配置为livenessProbe时,它可以正常工作。 配置为了让它工作,我只将类型从readinessProbe更改为l

  • 有没有一种方法可以让fluentd船LivenessProbes输出像它对普通容器在吊舱中的输出一样?

  • HTTP-获取http://:8080/acturet/health delay=60s timeout=20s period=10s#success=1#failure=3 如何知道活跃度探测是否实际与默认执行器的健康endpoint一起运行