zhuzhibin

某天项目 k8s 发布,两个副本,开启了就绪以及存活探针,新 pod 就绪且 consul 上线,旧的 pod 也删除了,突然新的 pod 全部 consul 下线且未就绪,请教一下老哥原因

  •  
  •   zhuzhibin · Jul 2, 2024 · 2709 views
    This topic created in 697 days ago, the information mentioned may be changed or developed.
    如提,问了运维,只说是因为我们服务健康检查不通过导致的,但是我的疑问是我开启了存活以及就绪,为什么旧的也杀掉了,新的也检查就绪且 consul 也上线了,为什么突然又全部下线,感觉是流水线盘点就绪以及存活逻辑有问题
    6 replies    2024-07-03 10:00:49 +08:00
    zhuzhibin
        1
    zhuzhibin  
    OP
       Jul 2, 2024
    就是 readinessProbe 检查就绪了,突然又不通过把全部 pod consul 下线了
    FoxRiverMan
        2
    FoxRiverMan  
       Jul 2, 2024   ❤️ 1
    可以看下 POD 日志,应该是服务就绪启动后又 CrashLoopBackOff
    mephisto
        3
    mephisto  
       Jul 2, 2024 via iPad   ❤️ 1
    探针检测就是体检,通过只能表示那一刻正常. 一会后又跑挂了,得去看日志为什么没通过,各种原因都有可能。比如只能硬 50s, 那后面肯定是被咔了啊,为什么只能去查原因。
    morphyhu
        4
    morphyhu  
       Jul 2, 2024
    pod crash 了. 程序运行出错.
    dreamusername
        5
    dreamusername  
       Jul 3, 2024
    https://kubernetes.io/zh-cn/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-readiness-probes 看文档,最合理的推断是服务过了探针后,自己出错了,如果在运维层面加强的话,需要再加一个 livenessProbe 来判断服务的存活,这需要程序提供可用的接口,当程序健康检查异常,则会终止这个 Pod ,然后重新拉起一个,不过这样做没办法保留现场,不利于排查问题,特别是程序代码原因导致 crash ,则会反复终止 Pod 、拉起 Pod 。
    LanLiang
        6
    LanLiang  
       Jul 3, 2024
    你的意思是 pod 服务在 consul 侧下线? 但是在 K8S pod 正常?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2751 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 09:48 · PVG 17:48 · LAX 02:48 · JFK 05:48
    ♥ Do have faith in what you're doing.