当前位置: 首页 > 知识库问答 >
问题:

Kubernetes pod未将卷绑定到容器

章阳波
2023-03-14

我已经定义了以下复制控制器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 internal user/PHP 53”运行时,容器正确启动。

/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:c 823 da9e-4437-11e 4-a3 B1-0050568421 EB清单:{ Version:v1beta 1 ID:c 823 da9e-4437-11e 4-a3 B1-0050568421 EB UUID:c 823 da9e-4437-11e 4-a3 B1-0050568421 EB卷

有没有人有过这种事情的经验?我一直在疯狂地解决这个问题。谢谢!

共有1个答案

巫马修然
2023-03-14

解决了。卷语法不正确。https://github . com/Google cloud platform/kubernetes/issues/1446

 类似资料:
  • 本文向大家介绍Laravel 将单例绑定到服务容器,包括了Laravel 将单例绑定到服务容器的使用技巧和注意事项,需要的朋友参考一下 示例 我们可以将一个类绑定为Singleton: 这样,第一次将实例  'my-database'请求到服务容器时,将创建一个新实例。该类的所有后续请求都将返回第一个创建的实例:            

  • 问题内容: 我想将绑定安装添加到docker文件中,就像在Dockefile中初始化一个卷一样。有什么办法吗? 问题答案: Dockerfile定义映像的构建方式,而不是其使用方式-因此您无法在Dockerfile中指定绑定安装。尝试改用docker- compose 。一个为您安装目录的简单示例如下所示: 的,如果你通过其他方式构建图像是可选的,但有时也很方便做这一切的一个。 与运行

  • 有没有一种方法可以直接将memcached绑定到它下面的本地存储?将用一个例子来解释。假设hbase被用作分布式的后端。memcached的一层被用作缓存层,它可以被认为是hbase的一个完全副本(在某种意义上)。假设系统中有4个节点,其中3个用于hbase并在其顶部有一个memcached层,1个节点用于计算。通常的规范是查找memcached是否有某个键。如果有,取出来并用于计算。如果没有,则

  • 我在JavaFX的小游戏中工作。我有一个管理音乐的实用类:

  • 假设我有一个名为“mynet”的网络,我想启动一个IP地址绑定到192.168.23.2的容器。 我开始使用的代码是: 我从这里做什么?我正在有效地从中寻找与选项等效的选项。

  • 前一段时间我面临这样的问题: 我还应该说,我尝试了另一种形式的命令: 但结果是一样的。接下来应该做什么来克服这个问题并成功地启动容器?谢谢你的回答!!!