From 047dc04f0fd501f0a39d5ea87eee645a4ec890bb Mon Sep 17 00:00:00 2001 From: John Mulligan Date: Mon, 19 Sep 2022 13:46:48 -0400 Subject: [PATCH] doc: update the cephadm download instructions Starting with reef, cephadm is a compiled (zipapp) python application. The cephadm script has been renamed and thus the old curl-based download instructions will no longer work. While cephadm still has no dependencies outside the Python stdlib, this will be changed in future versions so it is no longer appropriate to just download the source file of cephadm and run it either. This change updates the `Install cephadm` section of the doc to explain how to acquire a "compiled" version of cephadm as well as: * moving and tweaking the note that the two installation methods are distinct * adding a new note linking to instructions on building cephadm * moving the distribution-specific installations before the curl-based installation to subtly hint that we prefer you to get it using packages if you can * Noting cephadm's minimal required python verision and how to run it with a particular python version. Signed-off-by: John Mulligan (cherry picked from commit d11cf0e82aab8d4cef9d423e5d463a373eaf383a) doc: make instructions to get an updated cephadm common As discussed in person and over the ceph orch weekly, we want all users to use a recent supported version of cephadm. Previously, the instructions only had those downloading cephadm with curl using the "add-repo" and "install" commands to get a up-to-date cephadm build. According to ADK we've seen cases of users get "old" distro packages in the past. Change the instructions so that the "update cephadm" steps are common after acquiring a "bootstrap copy" of cephadm. Signed-off-by: John Mulligan (cherry picked from commit d7921e88d69b4bc355da9c0327cc33e59e7d7abb) (cherry picked from commit 8a835f1a91cfc07e39f68cf3b1b56251e6e85941) --- doc/cephadm/install.rst | 117 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 114 insertions(+), 3 deletions(-) diff --git a/doc/cephadm/install.rst b/doc/cephadm/install.rst index ddae5865ac3f5..3075e68cc116c 100644 --- a/doc/cephadm/install.rst +++ b/doc/cephadm/install.rst @@ -41,9 +41,6 @@ There are two ways to install ``cephadm``: #. a :ref:`curl-based installation` method #. :ref:`distribution-specific installation methods` - -.. _cephadm_install_curl: - curl-based installation ----------------------- @@ -127,7 +124,121 @@ that case, you can install cephadm directly. For example: zypper install -y cephadm +.. _cephadm_install_curl: + +curl-based installation +----------------------- + +* First, determine what version of Ceph you will need. You can use the releases + page to find the `latest active releases `_. + For example, we might look at that page and find that ``17.2.6`` is the latest + active release. + +* Use ``curl`` to fetch a build of cephadm for that release. + + .. prompt:: bash # + :substitutions: + + CEPH_RELEASE=17.2.6 # replace this with the active release + curl --silent --remote-name --location https://download.ceph.com/rpm-${CEPH_RELEASE}/el9/noarch/cephadm + + Ensure the ``cephadm`` file is executable: + + .. prompt:: bash # + + chmod +x cephadm + + This file can be run directly from the current directory: + + .. prompt:: bash # + + ./cephadm + +* If you encounter any issues with running cephadm due to errors including + the message ``bad interpreter``, then you may not have Python or + the correct version of Python installed. The cephadm tool requires Python 3.6 + and above. You can manually run cephadm with a particular version of Python by + prefixing the command with your installed Python version. For example: + + .. prompt:: bash # + :substitutions: + + python3.8 ./cephadm + +.. _cephadm_update: + +update cephadm +-------------- + +The cephadm binary can be used to bootstrap a cluster and for a variety +of other management and debugging tasks. The Ceph team strongly recommends +using an actively supported version of cephadm. Additionally, although +the standalone cephadm is sufficient to get a cluster started, it is +convenient to have the ``cephadm`` command installed on the host. Older or LTS +distros may also have ``cephadm`` packages that are out-of-date and +running the commands below can help install a more recent version +from the Ceph project's repositories. + +To install the packages provided by the Ceph project that provide the +``cephadm`` command, run the following commands: + +.. prompt:: bash # + :substitutions: + + ./cephadm add-repo --release |stable-release| + ./cephadm install + +Confirm that ``cephadm`` is now in your PATH by running ``which`` or +``command -v``: + +.. prompt:: bash # + + which cephadm + +A successful ``which cephadm`` command will return this: + +.. code-block:: bash + + /usr/sbin/cephadm + +* Although the standalone cephadm is sufficient to get a cluster started, it is + convenient to have the ``cephadm`` command installed on the host. To install + the packages that provide the ``cephadm`` command, run the following + commands: + +update cephadm +-------------- + +The cephadm binary can be used to bootstrap a cluster and for a variety +of other management and debugging tasks. The Ceph team strongly recommends +using an actively supported version of cephadm. Additionally, although +the standalone cephadm is sufficient to get a cluster started, it is +convenient to have the ``cephadm`` command installed on the host. Older or LTS +distros may also have ``cephadm`` packages that are out-of-date and +running the commands below can help install a more recent version +from the Ceph project's repositories. + +To install the packages provided by the Ceph project that provide the +``cephadm`` command, run the following commands: + +.. prompt:: bash # + :substitutions: + + ./cephadm add-repo --release |stable-release| + ./cephadm install + +Confirm that ``cephadm`` is now in your PATH by running ``which`` or +``command -v``: + +.. prompt:: bash # + + which cephadm + +A successful ``which cephadm`` command will return this: + +.. code-block:: bash + /usr/sbin/cephadm Bootstrap a new cluster ======================= -- 2.39.5