2019-10-07 07:27:29 +00:00
|
|
|
========================
|
|
|
|
Mount CephFS using FUSE
|
|
|
|
========================
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
Prerequisite
|
|
|
|
------------
|
|
|
|
Before mounting CephFS, ensure that the client host (where CephFS has to be
|
|
|
|
mounted and used) has a copy of the Ceph configuration file (i.e.
|
|
|
|
``ceph.conf``) and a keyring of the CephX user that has CAPS for the Ceph MDS.
|
|
|
|
Both of these files must be present on the host where the Ceph MON resides.
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
#. Generate a minimal conf for the client host. The conf file should be
|
|
|
|
placed at ``/etc/ceph``::
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
# on client host
|
|
|
|
mkdir /etc/ceph
|
|
|
|
ssh {user}@{mon-host} "sudo ceph config generate-minimal-conf" | sudo tee /etc/ceph/ceph.conf
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
Alternatively, you may copy the conf file. But the method which generates
|
|
|
|
the minimal config is usually sufficient. For more information, see
|
|
|
|
`boostrap options in ceph-conf page`_.
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
#. Ensure that the conf has appropriate permissions::
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
chmod 644 /etc/ceph/ceph.conf
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
#. Create the CephX user and get its secret key::
|
2013-03-04 18:59:18 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
ssh {user}@{mon-host} "sudo ceph fs authorize cephfs client.foo / rw" | sudo tee /etc/ceph/ceph.client.foo.keyring
|
2012-06-06 17:45:26 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
In above command, replace ``cephfs`` with the name of your CephFS, ``foo``
|
|
|
|
by the name you want for your CephX user and ``/`` by the path within your
|
|
|
|
CephFS for which you want to allow access to the client host and ``rw``
|
|
|
|
stands for both read and write permissions. Alternatively, you may copy the
|
|
|
|
Ceph keyring from the MON host to client host at ``/etc/ceph`` but creating
|
|
|
|
a keyring specific to the client host is better. While creating a CephX
|
|
|
|
keyring/client, using same client name across multiple machines is perfectly
|
|
|
|
fine.
|
2012-06-06 17:45:26 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
.. note:: If you get 2 prompts for password while running above any of 2 above
|
|
|
|
command, run ``sudo ls`` (or any other trivial command with sudo)
|
|
|
|
immediately before these commands.
|
2017-03-22 15:03:06 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
#. Ensure that the keyring has appropriate permissions::
|
2012-06-06 17:45:26 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
chmod 600 /etc/ceph/ceph.client.foo.keyring
|
2016-10-19 00:20:34 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
Synopsis
|
|
|
|
--------
|
|
|
|
In general, the command to mount CephFS via FUSE looks like this::
|
2016-10-19 00:20:34 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
ceph-fuse {mountpoint} {options}
|
2016-10-19 00:20:34 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
Mounting CephFS
|
|
|
|
---------------
|
|
|
|
To FUSE-mount the Ceph file system, use the ``ceph-fuse`` command::
|
2016-10-19 00:20:34 +00:00
|
|
|
|
2019-10-07 07:27:29 +00:00
|
|
|
mkdir /mnt/mycephfs
|
|
|
|
ceph-fuse -id foo /mnt/mycephfs
|
|
|
|
|
|
|
|
Option ``-id`` passes the name of the CephX user whose keyring we intend to
|
|
|
|
use for mounting CephFS. In the above command, it's ``foo``. You can also use
|
|
|
|
``-n`` instead, although ``--id`` is evidently easier::
|
|
|
|
|
|
|
|
ceph-fuse -n client.foo /mnt/mycephfs
|
|
|
|
|
|
|
|
In case the keyring is not present in standard locations, you may pass it
|
|
|
|
too::
|
|
|
|
|
|
|
|
ceph-fuse --id foo -k /path/to/keyring /mnt/mycephfs
|
|
|
|
|
|
|
|
You may pass the MON's socket too, although this is not mandatory::
|
|
|
|
|
|
|
|
ceph-fuse --id foo -m 192.168.0.1:6789 /mnt/mycephfs
|
|
|
|
|
|
|
|
You can also mount a specific directory within CephFS instead of mounting
|
|
|
|
root of CephFS on your local FS::
|
|
|
|
|
|
|
|
ceph-fuse --id foo -r /path/to/dir /mnt/mycephfs
|
|
|
|
|
|
|
|
If you have more than one FS on your Ceph cluster, use the option
|
|
|
|
``--client_mds_namespace`` to mount the non-default FS::
|
|
|
|
|
|
|
|
ceph-fuse --id foo --client_mds_namespace mycephfs2 /mnt/mycephfs2
|
|
|
|
|
|
|
|
You may also add a ``client_mds_namespace`` setting to your ``ceph.conf``
|
|
|
|
|
|
|
|
Unmounting CephFS
|
|
|
|
-----------------
|
|
|
|
|
|
|
|
Use ``umount`` to unmount CephFS like any other FS::
|
|
|
|
|
|
|
|
umount /mnt/mycephfs
|
|
|
|
|
|
|
|
.. tip:: Ensure that you are not within the file system directories before
|
|
|
|
executing this command.
|
|
|
|
|
|
|
|
See fstab_ to find out how to make FUSE-mounted CephFS persist across reboots,
|
|
|
|
`User Management`_ for details on CephX user management and mount.ceph_ manual
|
|
|
|
for more options it can take. For troubleshooting, see
|
|
|
|
:ref:`kernel_mount_debugging`.
|
2019-07-10 13:17:06 +00:00
|
|
|
|
2013-03-04 18:59:18 +00:00
|
|
|
.. _ceph-fuse: ../../man/8/ceph-fuse/
|
2018-10-02 05:06:26 +00:00
|
|
|
.. _fstab: ../fstab/#fuse
|
2019-10-07 07:27:29 +00:00
|
|
|
.. _User Management: ../../rados/operations/user-management/
|
|
|
|
.. _mount.ceph: ../../man/8/mount.ceph/
|
|
|
|
.. _boostrap options in ceph-conf page: ../../rados/configuration/ceph-conf/#bootstrap-options
|