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

问题描述 投票:2回答:1

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

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

  • Pod沙箱发生了变化,它将被杀死并重新创建
  • 使用id docker杀死容器:// xxx:需要杀死Pod
  • 退回重启失败的容器
  • 同步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

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

amazon-web-services kubernetes kubernetes-helm
1个回答
3
投票

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

资源:

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

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

© www.soinside.com 2019 - 2024. All rights reserved.