Notice
This document is for a development version of Ceph.
Installing Ceph Packages
Install the Ceph packages with APT or DNF, or install a Ceph build. Hosts that cephadm manages do not need these packages; see Using Cephadm to Deploy a New Ceph Cluster. Other deployment tools, such as Juju, install the packages themselves.
Prerequisites
For APT or DNF, the Ceph repository, added as described in Getting Ceph Packages.
For a build, a Ceph build; see Build Ceph.
Root access, or a user with
sudo.
Procedure
Installing with APT
Install the packages:
sudo apt-get install ceph ceph-mdsAPT asks you to confirm, then shows a
Setting upline for each package. Thecephpackage depends onceph-mon,ceph-mgr, andceph-osd, the Monitor, Manager, and OSD daemons. It only recommendsceph-mds, the Metadata Server, so the command namesceph-mdstoo.
Installing with DNF
Check that each section of
ceph.reposetspriority=2:grep priority /etc/yum.repos.d/ceph.repoThe command prints
priority=2once for each section. If it prints nothing, the file came fromcephadm add-repoor from theceph-releasepackage, which set no priority; addpriority=2to each section, as shown in the RHEL section of Getting Ceph Packages.Install the packages:
sudo dnf install cephDNF asks you to confirm. If it asks to import key
0x460F3994, check that the fingerprint is08B7 3419 AC32 B4E9 66C1 A330 E84A C2C0 460F 3994.Complete!is the last line of the output. Thecephpackage requiresceph-mon,ceph-mgr,ceph-osd, andceph-mds.
Installing a Build
Warning
sudo ninja install writes into /usr/local, the CMake
default prefix, as root and replaces any files that are already there. Do
not install a build on a host that has Ceph packages installed: the
packages are under /usr, so the host would have two versions of each
command.
From the build directory, install the build:
sudo ninja installThe output lists each file that it installs; the executables go in
/usr/local/bin.Create the directory for the Ceph configuration file:
sudo mkdir -p /etc/cephThe command prints nothing on success. Put the configuration file in
/etc/ceph/ceph.conf. Ceph also looks in~/.ceph/ceph.confand in the current directory, but not in/usr/local/bin.ls /etc/cephthen listsceph.conf.
Verification
Check the installed version:
ceph --versionThe output starts with
ceph versionand the version number, for example20.2.4, followed by the commit ID and the release name, for exampletentacle.
Troubleshooting
“Unable to locate package ceph” or “No match for argument: ceph”. The Ceph repository is not configured. Add it as described in Getting Ceph Packages.
The installed release is older than the one you added. The packages came from the distribution’s own repository. Check the Ceph repository with the Verification section of Getting Ceph Packages, then install again.
“nothing provides luarocks” or “nothing provides libtcmalloc.so.4()(64bit)”. EPEL is not enabled. See step 2 of the RHEL section of Getting Ceph Packages.
“nothing provides lua-devel” or “nothing provides liblttng-ust.so.1()(64bit)”. The CRB repository is not enabled. See steps 3 and 4 of the RHEL section of Getting Ceph Packages.
“No match for argument: yum-plugin-priorities”. Older guides install this plugin. It does not exist on EL 9 or EL 10, and DNF reads the
prioritysetting of a repository without it, so skip that step.“No match for argument: python-argparse”. Older guides install
snappy,gdisk,python-argparse, andgperftools-libsbefore Ceph. DNF installs the dependencies withceph(gperftools-libsfrom EPEL), andpython-argparsedoes not exist on EL 9 or EL 10, so skip that step.“ninja: error: loading ‘build.ninja’: No such file or directory”. The command did not run in the build directory. Change to the
builddirectory of the source tree, then runsudo ninja installagain.
Next Steps
Deploying a Ceph Cluster Manually: create a cluster on hosts that have the packages.
Additional Resources
Brought to you by the Ceph Foundation
The Ceph Documentation is a community resource funded and hosted by the non-profit Ceph Foundation. If you would like to support this and our other efforts, please consider joining now.