所以我有一个部署 pod 的 helm 图表,所以下一个任务是在第一个 pod 运行后创建另一个 pod。
所以我在图表/模板中创建了一个简单的 pod.yaml,它创建了一个简单的 pod-b,所以下一步只在 pod-a 运行后创建 pod-b。
所以只是掌舵钩子,但不认为他们关心吊舱状态。
另一个想法是使用如下所示的 Init 容器,但不确定如何编写命令来查找正在运行的 pod?
spec:
containers:
- name: myapp-container
image: busybox
command: ['sh', '-c', 'echo The app is running! && sleep 3600']
initContainers:
- name: init-myservice
image: busybox
command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
另一个想法是一个简单的脚本来检查 pod 状态,例如:
y=`kubectl get po -l app=am -o 'jsonpath={.items[0].status.phase}'`
while [ $i -le 5 ]
do
if [[ "$y" == "Running" ]]; then
break
fi
sleep 5
done
任何建议都会很棒。