zoukankan      html  css  js  c++  java
  • Kubernetes等待部署完成

    在CI/CD的时候,我们有时候需要等待部署完成,pod已经正常运行后,再进入容器执行一些命令,例如laravel环境下,我们需要等pod起来后,再执行migrate。

    正确的方式应该是判断status,而不是使用kubectl wait

    kubectl wait --for=condition=available --timeout=600s deployment/myapp -n namespace

    因为这样只能判断deployment是否OK,并不能判断容器是否OK,正确的应该是以下脚本方式

    ATTEMPTS=0
    ROLLOUT_STATUS_CMD="kubectl rollout status deployment/myapp -n namespace"
    until $ROLLOUT_STATUS_CMD || [ $ATTEMPTS -eq 60 ]; do
      $ROLLOUT_STATUS_CMD
      ATTEMPTS=$((attempts + 1))
      sleep 10
    done
  • 相关阅读:
    VB6SP6极度精简兼容绿色版
    Upnp资料整理
    RevMan简单入门指南
    小程序 --flex
    IV
    2017-10-27错误日志
    170616_2
    170616
    2017-06-07
    111111112222
  • 原文地址:https://www.cnblogs.com/flyingaway/p/13948388.html
Copyright © 2011-2022 走看看