首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何正确设置库伯奈特斯的readinessProbe?

如何正确设置库伯奈特斯的readinessProbe?
EN

Stack Overflow用户
提问于 2021-03-12 14:07:20
回答 1查看 635关注 0票数 1

如何正确设置库伯奈特斯的readinessProbe?

如果在部署类中为Kubernetes的readinessProbe设置此配置。

代码语言:javascript
复制
readinessProbe:
  httpGet:
    path: /healthcheck
    port: 8080
    httpHeaders:
    - name: Authorization
      value: Basic <real base64 encoded data>

将其部署到GKE,GCP的健康检查不能通过使用基本身份验证来访问内部应用程序。

但是从here来看,它似乎应该使用这个语法。为什么不能通过?

服务器端在/healthcheck点使用JSON响应。是否也需要将AcceptContent-Type设置为httpHeaders

而且,将此健康检查设置为livenessProbe或readinessProbe好吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-12 14:43:45

据库伯奈特斯医生说:

如果容器中的进程在遇到问题或变得不健康时能够自行崩溃,则不一定需要活性探测;kubelet将根据Pod的restartPolicy自动执行正确的操作。如果希望容器在探测失败时被杀死并重新启动,那么请指定一个活动探测,并指定一个restartPolicy值为Always或OnFailure。

参考文献:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#when-should-you-use-a-liveness-probe

--如果您只想在探测成功时才开始向Pod发送流量,请指定一个就绪探测。在这种情况下,就绪探测可能与活性探测相同,但是在规范中存在就绪探测意味着Pod将在没有接收到任何通信量的情况下启动,并且只有在探测开始成功后才开始接收流量。如果容器需要在启动期间加载大型数据、配置文件或迁移,请指定准备状态探测。

参考文献:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#when-should-you-use-a-readiness-probe

因此,你可以根据你的需要进行健康检查。但在库伯奈特斯博士,他们给出了一个健康检查的例子,作为一个活泼的探索。

参考文献:https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-liveness-http-request

最好的做法是在发送请求时使用内容类型,然后是浏览器或其他典型客户端。我相信使用Content: application/json可以解决服务器端的其他问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66601436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档