mirror of https://github.com/ceph/ceph
234 lines
5.1 KiB
ReStructuredText
234 lines
5.1 KiB
ReStructuredText
.. _cephfs-administration:
|
|
|
|
CephFS Administrative commands
|
|
==============================
|
|
|
|
Filesystems
|
|
-----------
|
|
|
|
These commands operate on the CephFS filesystems in your Ceph cluster.
|
|
Note that by default only one filesystem is permitted: to enable
|
|
creation of multiple filesystems use ``ceph fs flag set enable_multiple true``.
|
|
|
|
::
|
|
|
|
fs new <filesystem name> <metadata pool name> <data pool name>
|
|
|
|
::
|
|
|
|
fs ls
|
|
|
|
::
|
|
|
|
fs rm <filesystem name> [--yes-i-really-mean-it]
|
|
|
|
::
|
|
|
|
fs reset <filesystem name>
|
|
|
|
::
|
|
|
|
fs get <filesystem name>
|
|
|
|
::
|
|
|
|
fs set <filesystem name> <var> <val>
|
|
|
|
::
|
|
|
|
fs add_data_pool <filesystem name> <pool name/id>
|
|
|
|
::
|
|
|
|
fs rm_data_pool <filesystem name> <pool name/id>
|
|
|
|
|
|
Settings
|
|
--------
|
|
|
|
::
|
|
|
|
fs set <fs name> max_file_size <size in bytes>
|
|
|
|
CephFS has a configurable maximum file size, and it's 1TB by default.
|
|
You may wish to set this limit higher if you expect to store large files
|
|
in CephFS. It is a 64-bit field.
|
|
|
|
Setting ``max_file_size`` to 0 does not disable the limit. It would
|
|
simply limit clients to only creating empty files.
|
|
|
|
|
|
Maximum file sizes and performance
|
|
----------------------------------
|
|
|
|
CephFS enforces the maximum file size limit at the point of appending to
|
|
files or setting their size. It does not affect how anything is stored.
|
|
|
|
When users create a file of an enormous size (without necessarily
|
|
writing any data to it), some operations (such as deletes) cause the MDS
|
|
to have to do a large number of operations to check if any of the RADOS
|
|
objects within the range that could exist (according to the file size)
|
|
really existed.
|
|
|
|
The ``max_file_size`` setting prevents users from creating files that
|
|
appear to be eg. exabytes in size, causing load on the MDS as it tries
|
|
to enumerate the objects during operations like stats or deletes.
|
|
|
|
|
|
Taking the cluster down
|
|
-----------------------
|
|
|
|
Taking a CephFS cluster down is done by setting the down flag:
|
|
|
|
::
|
|
|
|
mds set <fs_name> down true
|
|
|
|
To bring the cluster back online:
|
|
|
|
::
|
|
|
|
mds set <fs_name> down false
|
|
|
|
This will also restore the previous value of max_mds. MDS daemons are brought
|
|
down in a way such that journals are flushed to the metadata pool and all
|
|
client I/O is stopped.
|
|
|
|
|
|
Taking the cluster down rapidly for deletion or disaster recovery
|
|
-----------------------------------------------------------------
|
|
|
|
To allow rapidly deleting a file system (for testing) or to quickly bring MDS
|
|
daemons down, the operator may also set a flag to prevent standbys from
|
|
activating on the file system. This is done using the ``joinable`` flag:
|
|
|
|
::
|
|
|
|
fs set <fs_name> joinable false
|
|
|
|
Then the operator can fail all of the ranks which causes the MDS daemons to
|
|
respawn as standbys. The file system will be left in a degraded state.
|
|
|
|
::
|
|
|
|
# For all ranks, 0-N:
|
|
mds fail <fs_name>:<n>
|
|
|
|
Once all ranks are inactive, the file system may also be deleted or left in
|
|
this state for other purposes (perhaps disaster recovery).
|
|
|
|
|
|
Daemons
|
|
-------
|
|
|
|
Most commands manipulating MDSs take a ``<role>`` argument which can take one
|
|
of three forms:
|
|
|
|
::
|
|
|
|
<fs_name>:<rank>
|
|
<fs_id>:<rank>
|
|
<rank>
|
|
|
|
Comamnds to manipulate MDS daemons:
|
|
|
|
::
|
|
|
|
mds fail <gid/name/role>
|
|
|
|
Mark an MDS daemon as failed. This is equivalent to what the cluster
|
|
would do if an MDS daemon had failed to send a message to the mon
|
|
for ``mds_beacon_grace`` second. If the daemon was active and a suitable
|
|
standby is available, using ``mds fail`` will force a failover to the standby.
|
|
|
|
If the MDS daemon was in reality still running, then using ``mds fail``
|
|
will cause the daemon to restart. If it was active and a standby was
|
|
available, then the "failed" daemon will return as a standby.
|
|
|
|
|
|
::
|
|
|
|
tell mds.<daemon name> command ...
|
|
|
|
Send a command to the MDS daemon(s). Use ``mds.*`` to send a command to all
|
|
daemons. Use ``ceph tell mds.* help`` to learn available commands.
|
|
|
|
::
|
|
|
|
mds metadata <gid/name/role>
|
|
|
|
::
|
|
|
|
mds repaired <role>
|
|
|
|
::
|
|
|
|
mds stat
|
|
|
|
|
|
|
|
Global settings
|
|
---------------
|
|
|
|
::
|
|
|
|
fs dump
|
|
|
|
::
|
|
|
|
fs flag set <flag name> <flag val> [<confirmation string>]
|
|
|
|
"flag name" must be one of ['enable_multiple']
|
|
|
|
Some flags require you to confirm your intentions with "--yes-i-really-mean-it"
|
|
or a similar string they will prompt you with. Consider these actions carefully
|
|
before proceeding; they are placed on especially dangerous activities.
|
|
|
|
|
|
Advanced
|
|
--------
|
|
|
|
These commands are not required in normal operation, and exist
|
|
for use in exceptional circumstances. Incorrect use of these
|
|
commands may cause serious problems, such as an inaccessible
|
|
filesystem.
|
|
|
|
::
|
|
|
|
mds compat rm_compat
|
|
|
|
::
|
|
|
|
mds compat rm_incompat
|
|
|
|
::
|
|
|
|
mds compat show
|
|
|
|
::
|
|
|
|
mds set_state
|
|
|
|
::
|
|
|
|
mds rmfailed
|
|
|
|
Legacy
|
|
------
|
|
|
|
These legacy commands are obsolete and no longer usable post-Luminous.
|
|
|
|
::
|
|
|
|
mds add_data_pool # replaced by "fs add_data_pool"
|
|
mds cluster_down # replaced by "fs set cluster_down"
|
|
mds cluster_up # replaced by "fs set cluster_up"
|
|
mds dump # replaced by "fs get"
|
|
mds getmap # replaced by "fs dump"
|
|
mds newfs # replaced by "fs new"
|
|
mds remove_data_pool # replaced by "fs rm_data_pool"
|
|
mds set # replaced by "fs set"
|
|
mds set_max_mds # replaced by "fs set max_mds"
|
|
mds stop # obsolete
|
|
|