【发布时间】:2019-06-10 06:57:14
【问题描述】:
我正在尝试通过以下步骤使用 circleCI 工作流程部署我的一个应用程序:
- 设置环境
- 构建
- 单元测试
- 集成测试
- 部署
每当我的集成测试需要大约 7-8 分钟时,我就会在 circleCI 控制台上收到超时错误。
deployment.extensions/demo-app created
Waiting for deployment "demo-app" rollout to finish: 0 out of 1 new replicas have been updated...
Waiting for deployment "demo-app" rollout to finish: 0 of 1 updated replicas are available...
Too long with no output (exceeded 10m0s)
rollout status 命令似乎有问题,或者它无法检测到我的测试已经完成并且 pod 处于就绪状态。
我也检查了kubectl describe pod 命令的输出,它显示 pod 状态已准备就绪。
我已经尝试在 circleCI 配置中增加 no_output_timeout 但没有奏效。
我还尝试根据集成测试所用的时间更改就绪探针参数的值,但它仍然以超时结束。 就绪探针的当前值:
readinessProbe:
exec:
command:
- cat
- /test/result
initialDelaySeconds: 10
periodSeconds: 10
failureThreshold: 60
当我在减少集成测试次数后重新运行 circleCI 构建时,它工作正常。
请让我知道这可能的原因,因为我对部署和 kubernetes 完全是新手。
我正在使用Kubernetes v1.5.2
【问题讨论】:
-
你能检查你的 pod 是否有很多重启吗?运行
kubectl get pods应该会显示一个包含重启次数的字段 -
@Blokje5 感谢您的输入,但 pod 没有重启,重启次数为 0。
标签: docker kubernetes kubernetes-helm kubectl circleci