首页 文章

使用kubernetes 1.7.2持续运行在pod中的AWS部署被杀死并重新启动

提问于
浏览
2

我们在使用kubernetes / helm进行AWS部署时遇到了问题,我们看到“Pod沙箱已更改,它将被终止并重新创建” . 这种情况之前没有发生过,但是我们最新的部署开始了,我们删除了以前使用helm delete部署并使用helm install创建了新部署 . 不确定这是否与我们对AWS SQS的新依赖关系或更新kubertetes / helm / kops版本有关 . 在同一个kubernetes节点上还有其他pod,它们工作正常 .

这些pod继续被杀死并重新启动,并重复以下消息:

  • Pod沙箱发生了变化,它将被杀死并重新创建

  • 使用id docker:// xxx杀死容器:需要杀死Pod

  • 退回重启失败的容器

  • 同步窗格时出错

手动杀死pod会像k8s那样启动新的pod,但这并不能解决相关线程中某些人提到的问题 .

cpu和内存的值

资源:限制:cpu:100m内存:128Mi请求:cpu:100m内存:128Mi

版本信息:

- client version 1.9 (also tried 1.6 and 1.7)
- server version 1.7 (git vresion 1.7.2)
- helm vresion 2.7.2
- kops version 1.8.0
- Kernel Version: 4.4.102-k8s
- OS Image: Debian GNU/Linux 8 (jessie)
- Container Runtime Version: docker://1.12.6
- Kubelet Version: v1.7.2
- Kube-Proxy Version: v1.7.2
- Operating system: linux
- Architecture: amd64

已经通过所有相关线程来解决此错误,但此问题似乎针对不同的环境,并且我们未使用这些线程中列出的版本 .

- https://stackoverflow.com/questions/46826164/kubernetes-pods-failing-on-pod-sandbox-changed-it-will-be-killed-and-re-create
- https://stackoverflow.com/questions/46922452/kubernetes-1-7-on-google-cloud-failedsync-error-syncing-pod-sandboxchanged-pod

任何关于找到根本原因或解决问题的指针都会非常有帮助 . 非常感谢 .

1 回答

  • 3

    修复结果证明是增加内存限制 . 我们更改了helm使用的values.yaml文件(以下部分)并提升了限制...

    资源:

    limits:
      cpu: 100m
      memory: 128Mi <--- increased this value...
    requests:
      cpu: 100m
      memory: 128Mi
    

    希望显示的错误消息比“Pod沙箱更改,它将被杀死并重新创建”更具体:-)

相关问题