Skip to content

Commit

Permalink
Merge remote-tracking branch 'gh/octopus'
Browse files Browse the repository at this point in the history
  • Loading branch information
liewegas committed Mar 24, 2020
2 parents 04e0b9c + 5303718 commit 895b856
Show file tree
Hide file tree
Showing 13 changed files with 207 additions and 68 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -670,4 +670,4 @@ add_custom_target(tags DEPENDS ctags)

find_package(CppCheck)
find_package(IWYU)
set(VERSION 15.1.1)
set(VERSION 15.2.0)
6 changes: 6 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
ceph (15.2.0-1) stable; urgency=medium

* New upstream release

-- Ceph Release Team <[email protected]> Mon, 23 Mar 2020 17:47:44 +0000

ceph (15.1.1-1) stable; urgency=medium

* New upstream release
Expand Down
20 changes: 13 additions & 7 deletions doc/cephadm/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,19 +9,25 @@ manager daemon via SSH to add, remove, or update Ceph daemon containers. It
does not rely on external configuration or orchestration tools like Ansible,
Rook, or Salt.

Cephadm starts by bootstrapping a tiny Ceph cluster on a single node
(one monitor and one manager) and then uses the orchestration
interface ("day 2" commands) to expand the cluster to include all
hosts and to provision all Ceph daemons and services. This can be
performed via the Ceph command-line interface (CLI) or dashboard
(GUI).
Cephadm manages the full lifecycle of a Ceph cluster. It starts
by bootstrapping a tiny Ceph cluster on a single node (one monitor and
one manager) and then uses the orchestration interface ("day 2"
commands) to expand the cluster to include all hosts and to provision
all Ceph daemons and services. This can be performed via the Ceph
command-line interface (CLI) or dashboard (GUI).

Cephadm is new in the Octopus v15.2.0 release and does not support older
versions of Ceph.

.. note::

Cephadm is new. Please read about :ref:`cephadm-stability` before
using cephadm to deploy a production system.

.. toctree::
:maxdepth: 2
:maxdepth: 1

stability
install
adoption
upgrade
Expand Down
2 changes: 2 additions & 0 deletions doc/cephadm/operations.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ These events are also logged to the ``ceph.cephadm.log`` file on
monitor hosts and to the monitor daemons' stderr.


.. _cephadm-logs:

Ceph daemon logs
================

Expand Down
41 changes: 41 additions & 0 deletions doc/cephadm/stability.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
.. _cephadm-stability:

Stability
=========

Cephadm is a new feature in the Octopus release and has seen limited
use in production and at scale. We would like users to try cephadm,
especially for new clusters, but please be aware that some
functionality is still rough around the edges. We expect fairly
frequent updates and improvements over the first several bug fix
releases of Octopus.

Cephadm management of the following components are currently well-supported:

- Monitors
- Managers
- OSDs
- CephFS file systems
- rbd-mirror

The following components are working with cephadm, but the
documentation is not as complete as we would like, and there may be some
changes in the near future:

- RGW
- dmcrypt OSDs

Cephadm support for the following features is still under development:

- NFS
- iSCSI

If you run into problems, you can always pause cephadm with::

ceph orch pause

Or turn cephadm off completely with::

ceph orch set backend ''
ceph mgr module disable cephadm

33 changes: 33 additions & 0 deletions doc/cephadm/troubleshooting.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,39 @@ a specific service no longer runs properly.
As cephadm deploys daemons as containers, troubleshooting daemons is slightly
different. Here are a few tools and commands to help investigating issues.

Pausing or disabling cephadm
----------------------------

If something goes wrong and cephadm is doing behaving in a way you do
not like, you can pause most background activity with::

ceph orch pause

This will stop any changes, but cephadm will still periodically check hosts to
refresh its inventory of daemons and devices. You can disable cephadm
completely with::

ceph orch set backend ''
ceph mgr module disable cephadm

This will disable all of the ``ceph orch ...`` CLI commands but the previously
deployed daemon containers will still continue to exist and start as they
did before.

Checking cephadm logs
---------------------

You can monitor the cephadm log in real time with::

ceph -W cephadm

You can see the last few messages with::

ceph log last cephadm

If you have enabled logging to files, you can see a cephadm log file called
``ceph.cephadm.log`` on monitor hosts (see :ref:`cephadm-logs`).

Gathering log files
-------------------

Expand Down
112 changes: 70 additions & 42 deletions doc/install/get-packages.rst
Original file line number Diff line number Diff line change
@@ -1,75 +1,100 @@
.. _packages:

==============
Get Packages
==============

To install Ceph and other enabling software, you need to retrieve packages from
the Ceph repository. Follow this guide to get packages; then, proceed to the
`Install Ceph Object Storage`_.


Getting Packages
================
the Ceph repository.

There are two ways to get packages:
There are three ways to get packages:

- **Add Repositories:** Adding repositories is the easiest way to get packages,
because package management tools will retrieve the packages and all enabling
software for you in most cases. However, to use this approach, each
- **Cephadm:** Cephadm can configure your Ceph repositories for you
based on a release name or a specific Ceph version. Each
:term:`Ceph Node` in your cluster must have internet access.

- **Configure Repositories Manually:** You can manually configure your
package management tool to retrieve Ceph packages and all enabling
software. Each :term:`Ceph Node` in your cluster must have internet
access.

- **Download Packages Manually:** Downloading packages manually is a convenient
way to install Ceph if your environment does not allow a :term:`Ceph Node` to
access the internet.

Install packages with cephadm
=============================

#. Download the cephadm script::

curl --silent --remote-name --location https://github.com/ceph/ceph/raw/octopus/src/cephadm/cephadm
chmod +x cephadm

#. Configure the Ceph repository based on the release name::

./cephadm add-repo --release nautilus

For Octopus (15.2.0) and later releases, you can also specify a specific
version::

./cephadm add-repo --version 15.2.1

Requirements
============
For development packages, you can specify a specific branch name::

./cephadm add-repo --dev my-branch

#. Install the appropriate packages. You can install them using your
package management tool (e.g., APT, Yum) directly, or you can also
use the cephadm wrapper. For example::

./cephadm install ceph-common
Configure Repositories Manually
===============================

All Ceph deployments require Ceph packages (except for development). You should
also add keys and recommended packages.

- **Keys: (Recommended)** Whether you add repositories or download packages
manually, you should download keys to verify the packages. If you do not get
the keys, you may encounter security warnings. See `Add Keys`_ for details.
the keys, you may encounter security warnings.

- **Ceph: (Required)** All Ceph deployments require Ceph release packages,
except for deployments that use development packages (development, QA, and
bleeding edge deployments only). See `Add Ceph`_ for details.
bleeding edge deployments only).

- **Ceph Development: (Optional)** If you are developing for Ceph, testing Ceph
development builds, or if you want features from the bleeding edge of Ceph
development, you may get Ceph development packages. See
`Add Ceph Development`_ for details.
development, you may get Ceph development packages.


If you intend to download packages manually, see Section `Download Packages`_.


Add Keys
========
--------

Add a key to your system's list of trusted keys to avoid a security warning. For
major releases (e.g., ``luminous``, ``mimic``, ``nautilus``) and development releases
(``release-name-rc1``, ``release-name-rc2``), use the ``release.asc`` key.


APT
---
~~~

To install the ``release.asc`` key, execute the following::

wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -


RPM
---
~~~

To install the ``release.asc`` key, execute the following::

sudo rpm --import 'https://download.ceph.com/keys/release.asc'

Add Ceph
========
Ceph Release Packages
---------------------

Release repositories use the ``release.asc`` key to verify packages.
To install Ceph packages with the Advanced Package Tool (APT) or
Expand All @@ -83,18 +108,22 @@ You may find releases for CentOS/RHEL and others (installed with YUM) at::

https://download.ceph.com/rpm-{release-name}

The major releases of Ceph are summarized at: :ref:`ceph-releases-general`
For Octopus and later releases, you can also configure a repository for a
specific version ``x.y.z``. For Debian/Ubuntu packages::

Every second major release is considered Long Term Stable (LTS). Critical
bugfixes are backported to LTS releases until their retirement. Since retired
releases are no longer maintained, we recommend that users upgrade their
clusters regularly - preferably to the latest LTS release.
https://download.ceph.com/debian-{version}

For RPMs::

https://download.ceph.com/rpm-{version}

The major releases of Ceph are summarized at: :ref:`ceph-releases-general`

.. tip:: For non-US users: There might be a mirror close to you where
to download Ceph from. For more information see: `Ceph Mirrors`_.

Debian Packages
---------------
~~~~~~~~~~~~~~~

Add a Ceph package repository to your system's list of APT sources. For newer
versions of Debian/Ubuntu, call ``lsb_release -sc`` on the command line to
Expand Down Expand Up @@ -130,10 +159,10 @@ of Debian and Ubuntu releases supported. ::


RPM Packages
------------
~~~~~~~~~~~~

RHEL
----
^^^^

For major releases, you may add a Ceph entry to the ``/etc/yum.repos.d``
directory. Create a ``ceph.repo`` file. In the example below, replace
Expand Down Expand Up @@ -189,28 +218,28 @@ You can download the RPMs directly from::
to download Ceph from. For more information see: `Ceph Mirrors`_.

openSUSE Leap 15.1
------------------
^^^^^^^^^^^^^^^^^^

You need to add the Ceph package repository to your list of zypper sources. This can be done with the following command ::

zypper ar https://download.opensuse.org/repositories/filesystems:/ceph/openSUSE_Leap_15.1/filesystems:ceph.repo

openSUSE Tumbleweed
-------------------
^^^^^^^^^^^^^^^^^^^

The newest major release of Ceph is already available through the normal Tumbleweed repositories.
There's no need to add another package repository manually.


Add Ceph Development
====================
Ceph Development Packages
-------------------------

If you are developing Ceph and need to deploy and test specific Ceph branches,
ensure that you remove repository entries for major releases first.


DEB Packages
------------
~~~~~~~~~~~~

We automatically build Ubuntu packages for current development branches in the
Ceph source code repository. These packages are intended for developers and QA
Expand All @@ -235,7 +264,7 @@ For Ubuntu Xenial and the master branch of Ceph, it would look like::
.. warning:: Development repositories are no longer available after two weeks.

RPM Packages
------------
~~~~~~~~~~~~

For current development branches, you may add a Ceph entry to the
``/etc/yum.repos.d`` directory. The `the shaman page`_ can be used to retrieve the full details
Expand All @@ -254,15 +283,15 @@ For CentOS 7 and the master branch of Ceph, it would look like::

.. note:: If the repository is not ready an HTTP 504 will be returned

Download Packages
=================
Download Packages Manually
--------------------------

If you are attempting to install behind a firewall in an environment without internet
access, you must retrieve the packages (mirrored with all the necessary dependencies)
before attempting an install.

Debian Packages
---------------
~~~~~~~~~~~~~~~

Ceph requires additional third party libraries.

Expand All @@ -286,7 +315,7 @@ your Linux distribution codename. Replace ``{arch}`` with the CPU architecture.


RPM Packages
------------
~~~~~~~~~~~~

Ceph requires additional additional third party libraries.
To add the EPEL repository, execute the following::
Expand Down Expand Up @@ -325,7 +354,6 @@ line to get the short codename. ::



.. _Install Ceph Object Storage: ../install-storage-cluster
.. _the testing Debian repository: https://download.ceph.com/debian-testing/dists
.. _the shaman page: https://shaman.ceph.com
.. _Ceph Mirrors: ../mirrors
2 changes: 1 addition & 1 deletion doc/releases/general.rst
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ Release timeline
.. ceph_timeline:: releases.yml development nautilus mimic luminous kraken jewel infernalis hammer giant firefly emperor

.. _Octopus: ../octopus
.. _15.1.0: ../octopus#v15-1-0-octopus
.. _15.2.0: ../octopus#v15-2-0-octopus

.. _Nautilus: ../nautilus
.. _14.2.8: ../nautilus#v14-2-8-nautilus
Expand Down
Loading

0 comments on commit 895b856

Please sign in to comment.