开发者社区> 问答> 正文

k8s集群通过ceph-helm安装ceph集群以后,可以创建pv以及pvc,但是在pod中使用pvc是提示无法mount,failed to lock image

苏进 2018-05-24 11:10:41 1612

在k8s集群中,通过ceph-helm创建一个ceph集群,集群创建成功,并且可以正常的创建pv和pvc,但是无法将pvc应用到pod,提示错误:
MountVolume.SetUp failed for volume "ceph-pv" : rbd: failed to lock image sujin-image-01 (maybe locked by other nodes), error exit status 1

k8s node使用centos7,内核是Linux bootstrap 3.10.0-693.el7.x86_64,modprobe rbd支持。

分享到
取消 提交回答
全部回答(1)
  • xuning715
    2019-07-17 22:27:12

    非常详细的描述了ceph环境搭建

    到使用kubernetes创建pv、pvc,并挂载到一个pod的过程。

    k8sCeph卷的例子(k8s官网中有样例)

    [html] view plain copy
    {

    ... ...  
        "volumes": [  
            {  
                "name": "rbdpd",  
                "rbd": {  
                    "monitors": [  
                           "10.16.154.78:6789",  
                           "10.16.154.82:6789",  
                           "10.16.154.83:6789"  
                                 ],  
                    "pool": "kube",  
                    "image": "foo",  
                    "user": "admin",  
                    "secretRef": {  
                           "name": "ceph-secret"  
                                         },  
                    "fsType": "ext4",  
                    "readOnly": true  
                }  
            }  
        ]  
    }  

    }
    各个字段的大致含义如下:

    name:volume名字,这个没什么可说的,顾名思义即可。
    rbd.monitors:前面提到过ceph集群的monitor组件,这里填写monitor组件的通信信息,集群里有几个monitor就填几个;
    rbd.pool:Ceph中的pool记号,它用来给ceph中存储的对象进行逻辑分区用的。默认的pool是”rbd”;
    rbd.image:Ceph磁盘块设备映像文件;
    rbd.user:ceph client访问ceph storage cluster所使用的用户名。ceph有自己的一套user管理系统,user的写法通常是TYPE.ID,比如client.admin(是不是想到对应的文件:ceph.client.admin.keyring)。client是一种type,而admin则是user。一般来说,Type基本都是client。
    secret.Ref:引用的k8s secret对象名称

    0 0

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程