【问题标题】:CephFS: mount fails with "can't read superblock"CephFS:挂载失败并显示“无法读取超级块”
【发布时间】:2018-05-23 14:35:53
【问题描述】:

我已经在配备 Ubuntu Server 14.04 的 3 个节点上设置了 Ceph Jewel。

ceph -v
ceph version 10.2.1 (3a66dd4f30852819c1bdaa8ec23c795d4ad77269)

集群已启动并运行:

ceph -s
cluster cb3537cf-05a0-4411-840d-ab5b8d855579
 health HEALTH_OK
 monmap e3: 3 mons at {ceph-monitor=192.168.0.173:6789/0,ceph-node01=192.168.0.171:6789/0,ceph-node02=192.168.0.172:6789/0}
        election epoch 28, quorum 0,1,2 ceph-node01,ceph-node02,ceph-monitor
  fsmap e25: 1/1/1 up {0=ceph-monitor=up:active}
 osdmap e55: 3 osds: 3 up, 3 in
        flags sortbitwise
  pgmap v302: 368 pgs, 9 pools, 3704 bytes data, 191 objects
        120 MB used, 15206 MB / 15326 MB avail
             368 active+clean

我已经设置了一个单独的客户端节点。当我尝试挂载文件系统时

mount -t ceph 192.168.0.173:6789:/ /mnt/cephfs -o name=admin,secret=AQC3QjdXi1e3LBAAFzrYKXKz6oupPGXaKaW1cQ==

我得到了这个输出(经过长时间的延迟):

mount: 192.168.0.173:6789:/: can't read superblock

所有服务似乎都在运行:

ps -A | grep ceph
1207 ?        00:00:00 ceph-mon
1208 ?        00:00:00 ceph-mds
1375 ?        00:00:00 ceph-osd

有人知道发生了什么吗?

【问题讨论】:

    标签: mount ceph


    【解决方案1】:

    当我在 Ubuntu Server 14.04 上将内核从 3.13 升级到 4.4x 时,问题消失了。

    通过apt-get install linux-generic-lts-xenial 安装最新的内核版本并重启你的机器。

    另一种选择是使用ceph-fuse 代替内核驱动程序。它使用apt-get install ceph-fuse 安装。 ceph-fuse 能够毫无问题地挂载文件系统。看看这里:http://docs.ceph.com/docs/hammer/cephfs/fuse/

    【讨论】:

      【解决方案2】:

      内核客户端挂载失败后,可以查看内核日志来诊断这个问题,可能是协议特性不匹配。

      【讨论】:

        【解决方案3】:

        你的内核版本低两个,我也有这个问题。

        Linux版本3.10.0-862.2.3.el7.x86_64就可以了,可以挂载cephfs。 但是Linux版本3.10.0-327.36.3.el7.x86_64不行。

        【讨论】:

          猜你喜欢
          • 2017-05-18
          • 2016-12-12
          • 2015-03-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-09-25
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多