【问题标题】:Kubernetes pod not binding volumes to containerKubernetes pod 未将卷绑定到容器
【发布时间】:2014-11-20 07:44:13
【问题描述】:

我定义了以下 ReplicationController JSON:

{
  "id": "PHPController",
  "kind": "ReplicationController",
  "apiVersion": "v1beta1",
  "desiredState": {
    "replicas": 2,
    "replicaSelector": {"name": "php"},
    "podTemplate": {
      "desiredState": {
         "manifest": {
           "version": "v1beta1",
           "id": "PHPController",
           "volumes": [{ "name": "wordpress", "path": "/mnt/nfs/wordpress_a", "hostDir": "/mnt/nfs/wordpress_a"}],
           "containers": [{
             "name": "php",
             "image": "internaluser/php53",
             "ports": [{"containerPort": 80, "hostPort": 9021}],
             "volumeMounts": [{"name": "wordpress", "mountPath": "/mnt/nfs/wordpress_a"}]
           }]
         }
       },
       "labels": {"name": "php"}
      }},
  "labels": {"name": "php"} 

}

容器在使用“docker run -t -i -p 0.0.0.0:9021:80 -v /mnt/nfs/wordpress_a:/mnt/nfs/wordpress_a:rw internaluser/php53”运行时正确启动。

/mnt/nfs/wordpress_a 是一个 NFS 共享,安装在所有的 minions 上。每个 minion 都具有完全的 RW 访问权限,并且我已验证该共享存在。

在使用复制控制器创建 pod 容器后,我可以看到该卷从未真正绑定过,和/或未正确安装:

    "Volumes": {
        "/mnt/nfs/wordpress_a": "/var/lib/docker/vfs/dir/8b5dc8477958f5c1b894e68ab9412b41e81a34ef16dac81f0f9d4884352a90b7"
    },
    "VolumesRW": {
        "/mnt/nfs/wordpress_a": true
    }

    "HostConfig": {
        "Binds": null,
        "ContainerIDFile": "",
        "LxcConf": null,
        "Privileged": false,
        "PortBindings": {
            "80/tcp": [
                {
                    "HostIp": "",
                    "HostPort": "9021"
                }
            ]
        },

我觉得奇怪的是容器认为 /mnt/nfs/wordpress_a 被映射到“/var/lib/docker/vfs/dir/8b5dc8477958f5c1b894e68ab9412b41e81a34ef16dac81f0f9d4884352a90b7”。

来自 kubelet 日志:

所需 [10.101.4.15]: [{Namespace:etcd Name:c823da9e-4437-11e4-a3b1-0050568421eb Manifest:{Version:v1beta1 ID:c823da9e-4437-11e4-a3b1-0050568421eb UUID:1123da9e-4473 -a3b1-0050568421eb 卷:[{名称:wordpress 源:}] 容器:[{名称:php 图像:internaluser/php53 命令:[] WorkingDir:端口:[{名称:HostPort:9021 ContainerPort:80 协议:TCP HostIP: }] Env:[{Name:SERVICE_HOST Value:10.1.1.1}] Memory:0 CPU:0 VolumeMounts:[{Name:wordpress ReadOnly:false MountPath:/mnt/nfs/wordpress_a}] LivenessProbe: Lifecycle: Privileged:false} ] RestartPolicy:{Always:0xa99a20 OnFailure: Never:}}}]

有没有人遇到过这种情况?我一直在让自己疯狂地解决这个问题。谢谢!

【问题讨论】:

    标签: docker kubernetes


    【解决方案1】:

    【讨论】:

    • 很高兴听到您解决了问题。能否请accept your own answer 将此问题标记为已关闭?谢谢。
    猜你喜欢
    • 2019-12-07
    • 1970-01-01
    • 1970-01-01
    • 2019-12-21
    • 2021-10-30
    • 2020-01-31
    • 2021-11-22
    • 1970-01-01
    • 2016-07-27
    相关资源
    最近更新 更多