开发者社区 > 云原生 > 容器服务 > 正文

OpenKruise这个参数将pod置为notready的时间和生命周期hook的执行时间有顺序?

OpenKruise中gracePeriodSeconds 这个参数将pod置为notready的时间和生命周期hook的执行时间 有先后顺序不。

展开
收起
十一0204 2023-10-24 20:26:35 64 0
3 条回答
写回答
取消 提交回答
  • OpenKruise中的gracePeriodSeconds参数表示在将Pod置为NotReady状态之前等待的时间,以秒为单位。而生命周期hook的执行时间是在Pod被标记为NotReady之后发生的。因此,它们之间没有先后顺序关系。

    2023-10-26 14:22:20
    赞同 展开评论 打赏
  • gracePeriodSeconds 参数是 OpenKruise 中 Kubernetes 对象创建或删除时的一种超时机制,用来控制对象被完全创建或删除所需要的时间。如果超过这个时间,即使对象还未完全创建或删除,它会被强制删除或替换。
    在 Kruise 中,gracePeriodSeconds 参数会在 Kubernetes 中的对象被标记为 NotReady 之前生效。这意味着生命周期钩子的执行会在 gracePeriodSeconds 过期之前开始。换句话说,生命周期钩子的执行时间在 gracePeriodSeconds 参数的值之后,两者之间不存在先后顺序的关系。
    但是,在 Kruise 中,如果有多个生命周期钩子,它们的执行顺序可能会受到影响。具体而言,如果两个生命周期钩子在 gracePeriodSeconds 参数的值之内执行,那么它们的执行顺序会按照它们在钩子列表中的顺序进行。如果没有满足这个条件,那么它们的执行顺序则不确定,具体取决于 Kruise 的实现方式。
    因此,为了确保在 Kruise 中的生命周期钩子按照预期的顺序执行,建议在编写 Kruise 改造时遵循良好的编码规范,并在必要时添加适当的注释和文档,以使其他人更容易理解和维护您的代码。

    2023-10-25 16:09:00
    赞同 展开评论 打赏
  • 意中人就是我呀!

    hook 在前,先 hook 然后才会到升级的逻辑,gracePeriodSeconds是包含在升级的逻辑里面。此答案整理至钉群“OpenKruise 社区交流群”

    2023-10-24 21:06:12
    赞同 展开评论 打赏
问答分类:

国内唯一 Forrester 公共云容器平台领导者象限。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载