【问题标题】:kubelet FailedSync Error syncing pod, skipping: API error 400kubelet FailedSync 同步 pod 时出错,正在跳过:API 错误 400
【发布时间】:2016-09-15 17:19:01
【问题描述】:

我在创建容器时遇到了问题,我使用的是 ubuntu 16.04 OS、docker 1.12.1、flannel 0.5.5 和 etcd 数据存储。

sudo systemctl status kubelet.service
● kubelet.service - Kubernetes Kubelet Server
Loaded: loaded (/lib/systemd/system/kubelet.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2016-09-12 14:23:02 EDT; 3h 6min ago
Docs: https://github.com/GoogleCloudPlatform/kubernetes
Main PID: 15788 (kubelet)
Tasks: 9
Memory: 848.0K
CPU: 815ms
CGroup: /system.slice/kubelet.service
Sep 12 17:19:40 vm3-VirtualBox kubelet[15788]: W0912 17:19:40.585677 15788 container_manager_linux.go:278] [ContainerManager] Failed to ensure state of "/docke
Sep 12 17:20:40 vm3-VirtualBox kubelet[15788]: W0912 17:20:40.615756 15788 container_manager_linux.go:278] [ContainerManager] Failed to ensure state of "/docke
Sep 12 17:21:40 vm3-VirtualBox kubelet[15788]: W0912 17:21:40.624172 15788 
Sep 12 17:23:40 vm3-VirtualBox kubelet[15788]: W0912 17:23:40.657396 15788 container_manager_linux.go:278] [ContainerManager] Failed to ensure state of "/docker
belet[15788]: W0912 16:47:40.051784 15788 container_manager_linux.go:278] [ContainerManager] Failed to ensure state of "/docke
Sep 12 16:48:06 vm3-VirtualBox sudo[19448]: pam_unix(sudo:session): session closed for user root
Sep 12 16:48:40 vm3-VirtualBox kubelet[15788]: W0912 16:48:40.073855 15788 container_manager_linux.go:278] [ContainerManager] Failed to ensure state of "/docke

主节点

kubectl describe pods my-first-nginx-a9bgy

Replication Controllers:    my-first-nginx (1/1 replicas created)
Containers:
  my-first-nginx:
    Container ID:    
    Image:        nginx
    Image ID:        
    State:        Waiting
      Reason:        ContainerCreating

  1m        1m        1    {kubelet    implicitly required container POD    Created        Created with docker id 9fc5d67d3921
  1m        1m        1    {kubelet    implicitly required container POD    Failed        Failed to start with docker id 9fc5d67d3921 with error: API error (400): {"message":"starting container with HostConfig was deprecated since v1.10 and removed in v1.12"}
{kubelet }    implicitly required container POD    Created        Created with docker id f55e2b6538b5
  1m    6s    10    {kubelet                         FailedSync    Error syncing pod, skipping: API error (400): {"messag
 "starting container with HostConfig was deprecated since v1.10 and removed in v1.12"}

我是否需要在 /lib/systemd/system/docker.service 或 /etc/default/docker.有什么解决方法吗,我在几篇文章中读到 kubernetes 对最新的 docker 版本有一些问题。

对此的任何帮助和建议将不胜感激。

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    HostConfig 在 docker v1.12 中已弃用。 Kubernetes made a corresponding switch 在 v1.2 中弃用 HostConfig,因此您需要更新版本 (v1.2+) 的 kubernetes 才能与 docker v1.12 一起使用。

    另一个需要注意的是,只有即将发布的 Kubernetes 1.4 版本声称与 docker v1.12 兼容。所有旧版本的 kubernetes 都没有针对 docker v1.12 进行测试。您最好使用旧版本的 docker,或者直接切换到 kubernetes v1.4 beta。

    【讨论】:

    • 谢谢哥们。让我试试看。我正在使用 Kubernetes 1.1.2。我的旧机器仍然有 docker 1.11.2,它会与我当前使用的 kubernetes 版本兼容吗?。
    • 不幸的是,没有。 Kubernetes 1.3+ 支持 docker 1.11。 Kubernetes 1.1.2 已经很老了,所以我建议你使用更新的 kubernetes 版本。更多信息可以在release notes 中找到,是的,搜索兼容的 docker 版本并不容易(抱歉)。
    • 再次感谢。看起来我必须重新做所有事情:),一旦它启动并运行,就会通知你。
    • 太棒了!非常感谢朋友。根据您的建议,它与 docker 1.12.1 完美配合,下载了 kubernetes v1.4.0-beta.3
    猜你喜欢
    • 2019-07-05
    • 2016-12-06
    • 2016-09-20
    • 2020-04-24
    • 2016-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多