挂载cephfs

作者: Joncc | 来源:发表于2018-12-17 10:46 被阅读1次

    使用内核驱动程序挂载CephFs

    1、在ceph-client1客户端节点上创建挂载点目录

     mkdir /mnt/mycephfs
    

    2、查看管理员秘钥
    因为要挂载启用了 cephx 认证的 Ceph 文件系统,所以必须指定用户名、密钥。

     cd /etc/ceph/
     cat ceph.client.admin.keyring 
    [client.admin]
        key = AQDPdgZcQXRtGBAAfAY5WZwZWdAKoTLqQwwDoA==   #这个就是管理员的秘钥,等会挂载的时候用得上
    
        caps mds = "allow *"
        caps mon = "allow *"
        caps osd = "allow *"
    

    3、使用linux的mount命令挂载cephfs

    mount -t ceph 10.33.1.55:6789:/ /mnt/cephfs -o name=admin,secret=AQDPdgZcQXRtGBAAfAY5WZwZWdAKoTLqQwwDoA==
    

    4、用df -h命令查看挂载情况

     df -h
    Filesystem             Size  Used Avail Use% Mounted on
    devtmpfs               471M     0  471M   0% /dev
    tmpfs                  483M     0  483M   0% /dev/shm
    tmpfs                  483M  6.6M  477M   2% /run
    tmpfs                  483M     0  483M   0% /sys/fs/cgroup
    /dev/mapper/cl-root    8.0G  1.5G  6.5G  19% /
    /dev/sda1             1014M  186M  829M  19% /boot
    /dev/rbd0               10G   33M   10G   1% /mnt/ceph-vol1
    tmpfs                   97M     0   97M   0% /run/user/0
    192.168.89.103:6789:/   45G  436M   45G   1% /mnt/mycephfs #这个就是挂载好的cephfs
    

    5、卸载cephfs

     umount /mnt/mycephfs
     df -h
    Filesystem           Size  Used Avail Use% Mounted on
    devtmpfs             471M     0  471M   0% /dev
    tmpfs                483M     0  483M   0% /dev/shm
    tmpfs                483M  6.6M  477M   2% /run
    tmpfs                483M     0  483M   0% /sys/fs/cgroup
    /dev/mapper/cl-root  8.0G  1.5G  6.5G  19% /
    /dev/sda1           1014M  186M  829M  19% /boot
    /dev/rbd0             10G   33M   10G   1% /mnt/ceph-vol1
    tmpfs                 97M     0   97M   0% /run/user/0
    

    6、以更安全的方式挂载
    用法会把密码遗留在 Bash 历史里,更安全的方法是从文件读密码
    将admin的秘钥保存到文件里

     echo "AQBOp0xaDyeNGBAAqbEktnUq5GFVF5arsWbesA==" > /etc/ceph/admin.secret
     mount -t ceph 192.168.89.103:6789:/ /mnt/mycephfs -o name=admin,secretfile=/etc/ceph/admin.secret
     df -h
    Filesystem             Size  Used Avail Use% Mounted on
    devtmpfs               471M     0  471M   0% /dev
    tmpfs                  483M     0  483M   0% /dev/shm
    tmpfs                  483M  6.6M  477M   2% /run
    tmpfs                  483M     0  483M   0% /sys/fs/cgroup
    /dev/mapper/cl-root    8.0G  1.5G  6.5G  19% /
    /dev/sda1             1014M  186M  829M  19% /boot
    /dev/rbd0               10G   33M   10G   1% /mnt/ceph-vol1
    tmpfs                   97M     0   97M   0% /run/user/0
    192.168.89.103:6789:/   45G  436M   45G   1% /mnt/mycephfs #这个就是挂载好的cephfs
    

    通过FUSE方式挂载CephFS
    如果内核版本低于2.6.34,那么可以使用ceph的FUSE客户端来进行挂载ceph文件系统

    1、在客户端上安装fuse

     apt install ceph-fuse
    

    2、创建挂载点目录

    mkdir /mnt/fuse_cephfs/
    

    3、开始挂载

     ceph-fuse -m 10.33.1.55:6789 /mnt/fuse_cephfs/
    2018-12-17 14:43:31.374161 7f7267886f00 -1 init, newargv = 0x5581daf26fc0 newargc=11ceph-fuse[23983]: starting ceph client
    
    ceph-fuse[23983]: starting fuse
    

    4、查看挂载后的信息

     df -h
    
    Filesystem                   Size  Used Avail Use% Mounted on
    udev                         981M     0  981M   0% /dev
    tmpfs                        201M   16M  185M   8% /run
    /dev/mapper/ubuntu--vg-root   15G  5.2G  8.3G  39% /
    tmpfs                       1001M     0 1001M   0% /dev/shm
    tmpfs                        5.0M     0  5.0M   0% /run/lock
    tmpfs                       1001M     0 1001M   0% /sys/fs/cgroup
    /dev/sda1                    472M   58M  391M  13% /boot
    tmpfs                        201M     0  201M   0% /run/user/0
    /dev/sdb1                     11G  1.6G  9.5G  15% /var/lib/ceph/osd/ceph-0
    ceph-fuse                     33G  4.7G   29G  15% /mnt/fuse_cephfs
    

    5、我把之前通过kernel驱动程序的挂载方式中的挂载点目录更改为了kernel_cephfs
    并再次执行了挂载后

     df -h
    Filesystem             Size  Used Avail Use% Mounted on
    devtmpfs               471M     0  471M   0% /dev
    tmpfs                  483M     0  483M   0% /dev/shm
    tmpfs                  483M  6.6M  477M   2% /run
    tmpfs                  483M     0  483M   0% /sys/fs/cgroup
    /dev/mapper/cl-root    8.0G  1.5G  6.5G  19% /
    /dev/sda1             1014M  186M  829M  19% /boot
    tmpfs                   97M     0   97M   0% /run/user/0
    ceph-fuse               45G  444M   45G   1% /mnt/fuse_cephfs #这是fuse客户端方式挂载
    192.168.89.103:6789:/   45G  444M   45G   1% /mnt/kernel_cephfs #这是kernel的方式挂载
    

    事实证明:这两者可以同时存在,我这里是在同一台机器上,当然更可以在不同的机器上挂载同一个cephfs
    并且,我在/mnt/fuse_cephfs目录下创建了file_fuse_123.txt,然后再到/mnt/kernel_cephfs去查看,也出现了file_fuse_123.txt
    此处证明,cephfs是分布式的且共享型的网络文件系统.
    注意,这两种挂载方式虽然可以在一台机器上同时存在,但是在生产环境中这么做是没有太大意义的。我这里仅仅只是为了测试而已。

    6、开机自动挂载cephfs
    如需要开机时自动挂载cephfs,将下面的信息添加到客户端的/etc/fstab中
    id=admin /mnt/fuse_cephfs fuse.ceph defaults 0 0

    7、重启客户端的注意事项
    1、重启前最好是先umont调挂载后的文件系统
    2、然后再重启

    相关文章

      网友评论

        本文标题:挂载cephfs

        本文链接:https://www.haomeiwen.com/subject/pkiwhqtx.html