summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt2
-rw-r--r--debian/changelog6
-rw-r--r--doc/cephadm/index.rst20
-rw-r--r--doc/cephadm/operations.rst2
-rw-r--r--doc/cephadm/stability.rst41
-rw-r--r--doc/cephadm/troubleshooting.rst33
-rw-r--r--doc/install/get-packages.rst112
-rw-r--r--doc/releases/general.rst2
-rw-r--r--doc/releases/index.rst1
-rw-r--r--doc/releases/octopus.rst41
-rw-r--r--doc/releases/releases.yml9
-rwxr-xr-xsrc/cephadm/cephadm3
-rw-r--r--src/common/options.cc3
13 files changed, 207 insertions, 68 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d2eb9728887..ec2bd244fe4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -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)
diff --git a/debian/changelog b/debian/changelog
index 62bac97b09f..a2f31037cc9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+ceph (15.2.0-1) stable; urgency=medium
+
+ * New upstream release
+
+ -- Ceph Release Team <ceph-maintainers@ceph.com> Mon, 23 Mar 2020 17:47:44 +0000
+
ceph (15.1.1-1) stable; urgency=medium
* New upstream release
diff --git a/doc/cephadm/index.rst b/doc/cephadm/index.rst
index 4a0a9230fbd..e1be17e8d2f 100644
--- a/doc/cephadm/index.rst
+++ b/doc/cephadm/index.rst
@@ -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
diff --git a/doc/cephadm/operations.rst b/doc/cephadm/operations.rst
index 2e25874aabd..59e2f2965f3 100644
--- a/doc/cephadm/operations.rst
+++ b/doc/cephadm/operations.rst
@@ -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
================
diff --git a/doc/cephadm/stability.rst b/doc/cephadm/stability.rst
new file mode 100644
index 00000000000..7054fea5adb
--- /dev/null
+++ b/doc/cephadm/stability.rst
@@ -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
+
diff --git a/doc/cephadm/troubleshooting.rst b/doc/cephadm/troubleshooting.rst
index 375420ad182..93f42025f7f 100644
--- a/doc/cephadm/troubleshooting.rst
+++ b/doc/cephadm/troubleshooting.rst
@@ -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
-------------------
diff --git a/doc/install/get-packages.rst b/doc/install/get-packages.rst
index 532560d3e36..ab518c033ce 100644
--- a/doc/install/get-packages.rst
+++ b/doc/install/get-packages.rst
@@ -1,52 +1,77 @@
+.. _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
@@ -54,7 +79,7 @@ major releases (e.g., ``luminous``, ``mimic``, ``nautilus``) and development rel
APT
----
+~~~
To install the ``release.asc`` key, execute the following::
@@ -62,14 +87,14 @@ To install the ``release.asc`` key, execute the following::
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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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.
@@ -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::
@@ -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
diff --git a/doc/releases/general.rst b/doc/releases/general.rst
index 2fa172700e6..2d69e2026e2 100644
--- a/doc/releases/general.rst
+++ b/doc/releases/general.rst
@@ -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
diff --git a/doc/releases/index.rst b/doc/releases/index.rst
index b5806a7326f..0d9bd66ad99 100644
--- a/doc/releases/index.rst
+++ b/doc/releases/index.rst
@@ -21,6 +21,7 @@ Active Releases
.. toctree::
:maxdepth: 1
+ Octopus <octopus>
Nautilus <nautilus>
Mimic <mimic>
Luminous <luminous>
diff --git a/doc/releases/octopus.rst b/doc/releases/octopus.rst
index 751ae62b0d4..9cdba8c2891 100644
--- a/doc/releases/octopus.rst
+++ b/doc/releases/octopus.rst
@@ -1,9 +1,7 @@
-v15.1.0 Octopus
+v15.2.0 Octopus
===============
-.. note: This is a release candidate and not (yet) intended for production use.
-
-These are draft notes for the upcoming Octopus release.
+This is the first stable release of Ceph Octopus.
Major Changes from Nautilus
---------------------------
@@ -16,10 +14,20 @@ General
into the orchestration layer. For more information see
:ref:`cephadm`.
* Health alerts can now be muted, either temporarily or permanently.
-* A simple 'alerts' capability has been introduced to send email
+* Health alerts are now raised for recent Ceph daemons crashes.
+* A simple 'alerts' module has been introduced to send email
health alerts for clusters deployed without the benefit of an
existing external monitoring infrastructure.
-* Health alerts are now raised for recent Ceph daemons crashes.
+* :ref:`Packages <packages>` are built for the following distributions:
+
+ - CentOS 8
+ - CentOS 7 (partial--see below)
+ - Ubuntu 18.04 (Bionic)
+ - :ref:`Container image <containers>` (based on CentOS 8)
+
+ Note that the dashboard, prometheus, and restful manager modules
+ will not work on the CentOS 7 build due to Python 3 module
+ dependencies that are missing in CentOS 7.
Dashboard
@@ -112,8 +120,8 @@ RADOS
scalable fashion.
-**RBD** block storage
-~~~~~~~~~~~~~~~~~~~~~
+RBD block storage
+~~~~~~~~~~~~~~~~~
* Mirroring now supports a new snapshot-based mode that no longer requires
the journaling feature and its related impacts in exchange for the loss
@@ -131,8 +139,8 @@ RADOS
* A new persistent read-only caching daemon is available to offload reads from
shared parent images.
-**RGW** object storage
-~~~~~~~~~~~~~~~~~~~~~~
+RGW object storage
+~~~~~~~~~~~~~~~~~~
* New `Multisite Sync Policy`_ primitives for per-bucket replication. (EXPERIMENTAL)
* S3 feature support:
@@ -148,8 +156,8 @@ RADOS
* Added `HashiCorp Vault Integration`_ for SSE-KMS.
* Added Keystone token cache for S3 requests.
-**CephFS** distributed file system
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+CephFS distributed file system
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Inline data support in CephFS has been deprecated and will likely be
removed in a future release.
@@ -354,6 +362,14 @@ upgrading to Octopus.
Upgrade compatibility notes
---------------------------
+* Starting with Octopus, there is now a separate repository directory
+ for each version on `download.ceph.com` (e.g., ``rpm-15.2.0`` and
+ ``debian-15.2.0``). The traditional package directory that is named
+ after the release (e.g., ``rpm-octopus`` and ``debian-octopus``) is
+ now a symlink to the most recently bug fix version for that release.
+ We no longer generate a single repository that combines all bug fix
+ versions for a single named release.
+
* The RGW "num_rados_handles" has been removed.
If you were using a value of "num_rados_handles" greater than 1
multiply your current "objecter_inflight_ops" and
@@ -598,7 +614,6 @@ Upgrade compatibility notes
This change may affect the configuration for clients that include a
``.`` in their name.
- Note that this only applies to configuration options in the
.. _announcement: https://lists.fedoraproject.org/archives/list/epel-announce@lists.fedoraproject.org/message/EGUMKAIMPK2UD5VSHXM53BH2MBDGDWMO/
.. _Bucket Notifications: ../../radosgw/notifications
diff --git a/doc/releases/releases.yml b/doc/releases/releases.yml
index 0472c1cd6ad..c6d823e6f02 100644
--- a/doc/releases/releases.yml
+++ b/doc/releases/releases.yml
@@ -12,6 +12,11 @@
# If a version might represent an actual number (e.g. 0.80) quote it.
#
releases:
+ octopus:
+ releases:
+ - version: 15.2.0
+ released: 2020-03-23
+ target_eol: 2022-06-01
nautilus:
releases:
- version: 14.2.8
@@ -241,8 +246,12 @@ releases:
development:
releases:
+ - version: 15.1.1
+ released: 2020-03-13
+ skip_ref: true
- version: 15.1.0
released: 2020-01-29
+ skip_ref: true
- version: 15.0.0
released: 2019-04-03
skip_ref: true
diff --git a/src/cephadm/cephadm b/src/cephadm/cephadm
index 1650e3227cf..c89ce1dea92 100755
--- a/src/cephadm/cephadm
+++ b/src/cephadm/cephadm
@@ -1,7 +1,6 @@
#!/usr/bin/python3
-#DEFAULT_IMAGE='docker.io/ceph/ceph:v15.2'
-DEFAULT_IMAGE='quay.io/ceph-ci/ceph:octopus'
+DEFAULT_IMAGE='docker.io/ceph/ceph:v15'
DATA_DIR='/var/lib/ceph'
LOG_DIR='/var/log/ceph'
LOCK_DIR='/run/cephadm'
diff --git a/src/common/options.cc b/src/common/options.cc
index d8800409db0..f6ac012c608 100644
--- a/src/common/options.cc
+++ b/src/common/options.cc
@@ -445,8 +445,7 @@ std::vector<Option> get_global_options() {
Option("container_image", Option::TYPE_STR, Option::LEVEL_BASIC)
.set_description("container image (used by cephadm orchestrator)")
.set_flag(Option::FLAG_STARTUP)
- .set_default("quay.io/ceph-ci/ceph:octopus"),
- //.set_default("docker.io/ceph/ceph:v15.2"),
+ .set_default("docker.io/ceph/ceph:v15"),
Option("no_config_file", Option::TYPE_BOOL, Option::LEVEL_ADVANCED)
.set_default(false)