Kubernetes确定部署还是扩大规模

时间:2018-08-14 11:03:30

标签: kubernetes google-kubernetes-engine

部署后,我会在Pod的开头进行一些操作。但是不想这样做来扩大规模。如果是新部署或扩展/重新创建事件,是否有办法识别Pod的创建时间

2 个答案:

答案 0 :(得分:0)

因此,您要在部署后的第一个可用pod上运行一些数据库脚本。

如果在创建部署期间执行以下步骤,它将对您有用:

$ kubectl apply -f app-deployment.yml

// This will give some time for the pod to start.
$ WAIT_BEFORE_DATABASE_SETUP="${WAIT_BEFORE_DATABASE_SETUP-120}"
$ sleep $WAIT_BEFORE_DATABASE_SETUP 

// Pick any one pod which is in Running State
$ APP_POD_NAME=$(kubectl get pods --field-selector=status.phase=Running -o=custom-columns=NAME:.metadata.name | grep <deployment-name> | head -1)

$ kubectl exec -it $APP_POD_NAME -- bash -c "/scripts/run_db_updates.sh"

答案 1 :(得分:0)

一种可能的解决方案是更新数据库中的标志,并让脚本检查该标志的值。