]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
4 years agodoc/rbd: clarify QCOW2 migration support 39811/head
Jason Dillaman [Tue, 2 Mar 2021 22:29:29 +0000 (17:29 -0500)]
doc/rbd: clarify QCOW2 migration support

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit 68fda590cf88e6b232dfb573236fe3ae3949db28)

4 years agoMerge pull request #39568 from tchaikov/pr-39365-pacific
Kefu Chai [Wed, 3 Mar 2021 14:07:08 +0000 (22:07 +0800)]
Merge pull request #39568 from tchaikov/pr-39365-pacific

pacific: mgr/devicehaelth: extract and present SSD wear

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
4 years agoMerge PR #39525 into pacific
Jan Fajerski [Wed, 3 Mar 2021 08:40:13 +0000 (09:40 +0100)]
Merge PR #39525 into pacific

* refs/pull/39525/head:
ceph-volume: pass --filter-for-batch from drive-group subcommand

Reviewed-by: Rishabh Dave <ridave@redhat.com>
4 years agoMerge PR #39468 into pacific
Jan Fajerski [Wed, 3 Mar 2021 08:31:24 +0000 (09:31 +0100)]
Merge PR #39468 into pacific

* refs/pull/39468/head:
Update batch.py

Reviewed-by: Rishabh Dave <ridave@redhat.com>
4 years agoqa/tasks/mgr/dashboard: add wear_level to devices schema 39568/head
Sage Weil [Sun, 21 Feb 2021 16:40:06 +0000 (10:40 -0600)]
qa/tasks/mgr/dashboard: add wear_level to devices schema

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 6f6792cf51f9042452bc79df30b3a4d02dd5ef96)

4 years agomgr/devicehealth: extract+store wear level from metrics scraping
Sage Weil [Thu, 18 Feb 2021 14:27:49 +0000 (08:27 -0600)]
mgr/devicehealth: extract+store wear level from metrics scraping

When we scrape and store health metrics for a device, extract the wear
level from the JSON.  If present, also store it in the config-key
per-device metadata.

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 4840507cfcdd5182003671994d0bc9604d072e3e)

 Conflicts:
src/pybind/mgr/devicehealth/module.py
 - type annotations for _get_device_metrics

4 years agomgr/DaemonServer: show wear level in 'device ls' output
Sage Weil [Mon, 8 Feb 2021 18:54:04 +0000 (12:54 -0600)]
mgr/DaemonServer: show wear level in 'device ls' output

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 8f93e3b55351df0bc8308e0cace482aabb15e8c8)

4 years agomgr/DaemonState: store optional wear_level for devices
Sage Weil [Mon, 8 Feb 2021 18:53:51 +0000 (12:53 -0600)]
mgr/DaemonState: store optional wear_level for devices

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit c52fcb51afb6da2dccd6954a40f0f1c616324855)

4 years agocommon/blkdev: collect non-SMART data too
Sage Weil [Mon, 8 Feb 2021 18:53:24 +0000 (12:53 -0600)]
common/blkdev: collect non-SMART data too

Call smartctl with -x instead of -a:

       -a, --all
              Prints  all SMART information about the disk, or TapeAlert infor‐
              mation about the tape drive or changer.  For ATA devices this  is
              equivalent to
              '-H -i -c -A -l error -l selftest -l selective'
              and for SCSI, this is equivalent to
              '-H -i -A -l error -l selftest'.
              For NVMe, this is equivalent to
              '-H -i -c -A -l error'.
              Note  that  for  ATA  disks  this  does  not enable the non-SMART
              options and the SMART options which require  support  for  48-bit
              ATA commands.

vs

       -x, --xall
              Prints all SMART and non-SMART information about the device.  For
              ATA devices this is equivalent to
              '-H -i -g all -g wcreorder -c -A  -f  brief  -l  xerror,error  -l
              xselftest,selftest -l selective -l directory -l scttemp -l scterc
              -l devstat -l defects -l sataphy'.
              and for SCSI, this is equivalent to
              '-H -i -g all -A -l error -l selftest -l background -l sasphy'.
              For NVMe, this is equivalent to
              '-H -i -c -A -l error'.

Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 176bb54da90e404646c0e80e0c3ea804bb8a58d6)

4 years agomgr/DaemonState: fix serialization/storage of device life expectancy min/max
Sage Weil [Mon, 8 Feb 2021 16:41:48 +0000 (10:41 -0600)]
mgr/DaemonState: fix serialization/storage of device life expectancy min/max

These weren't encoded as strings, which means they were effectively
forgotton on each mgr restart.  Sigh.

Fixes: https://tracker.ceph.com/issues/49215
Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 78b72b0be752fce855203b28b558133a0d47eba8)

4 years agopybind/mgr: silence flake8 warnings
Kefu Chai [Fri, 29 Jan 2021 02:30:19 +0000 (10:30 +0800)]
pybind/mgr: silence flake8 warnings

silence following warnings from flake8

* line too long (107 > 100 characters) [E501]

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 367f264100778717890b7fb69668e44f0a22d8ce)

4 years agopybind/mgr/mgr_module: correct annotation
Kefu Chai [Wed, 27 Jan 2021 04:07:07 +0000 (12:07 +0800)]
pybind/mgr/mgr_module: correct annotation

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 19cdc4325ce47bef951fdab41fa15e6acadea1f7)

4 years agomgr/devicehealth: remove handle_command()
Kefu Chai [Wed, 27 Jan 2021 06:34:35 +0000 (14:34 +0800)]
mgr/devicehealth: remove handle_command()

as commands are collected by COMMANDS already.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 1361b3060e7643a3a0f2f59b72eb5d9201c21bcd)

4 years agomgr/devicehealth: return -1 if prediction plugin is not available
Kefu Chai [Wed, 27 Jan 2021 06:58:01 +0000 (14:58 +0800)]
mgr/devicehealth: return -1 if prediction plugin is not available

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit bb611c64ee5120272215683b4b5ac4397f9c5ea6)

4 years agomgr/devicehealth: add more annotations
Kefu Chai [Wed, 27 Jan 2021 04:08:11 +0000 (12:08 +0800)]
mgr/devicehealth: add more annotations

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 48438cccedb383e19cab743dd0222d6ec6265588)

4 years agoMerge pull request #39769 from ivancich/wip-49185-pacific
J. Eric Ivancich [Tue, 2 Mar 2021 21:07:17 +0000 (16:07 -0500)]
Merge pull request #39769 from ivancich/wip-49185-pacific

pacific: rgw: tooling to locate rgw objects with missing rados components

Reviewed-by: Michael Kidd <linuxkidd@gmail.com>
4 years agoMerge pull request #39764 from ivancich/wip-49194-pacific
J. Eric Ivancich [Tue, 2 Mar 2021 21:06:31 +0000 (16:06 -0500)]
Merge pull request #39764 from ivancich/wip-49194-pacific

pacific: rgw: allow rgw-orphan-list to handle intermediate files w/ binary data

Reviewed-by: Thomas Serlin <tserlin@redhat.com>
4 years agoMerge pull request #39675 from dillaman/wip-librbd-backports-pacific-6
Jason Dillaman [Tue, 2 Mar 2021 20:06:04 +0000 (15:06 -0500)]
Merge pull request #39675 from dillaman/wip-librbd-backports-pacific-6

pacific: librbd: miscellaneous backports

Reviewed-by: Mykola Golub <mgolub@suse.com>
4 years agoMerge pull request #39635 from vshankar/wip-49425
Yuri Weinstein [Tue, 2 Mar 2021 19:32:13 +0000 (11:32 -0800)]
Merge pull request #39635 from vshankar/wip-49425

pacific: cephfs-mirror: run mirror daemon with valgrind

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
4 years agoMerge pull request #39508 from k0ste/wip-49315-pacific
Yuri Weinstein [Tue, 2 Mar 2021 19:01:19 +0000 (11:01 -0800)]
Merge pull request #39508 from k0ste/wip-49315-pacific

pacific: mgr/dashboard: prometheus alerting: add some leeway for package drops and errors

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
4 years agoMerge pull request #39466 from petrutlucian94/wip-49250-pacific
Yuri Weinstein [Tue, 2 Mar 2021 19:00:20 +0000 (11:00 -0800)]
Merge pull request #39466 from petrutlucian94/wip-49250-pacific

pacific: common: Add Windows ETW support

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #39752 from rhcs-dashboard/wip-49546-pacific
Ernesto Puerta [Tue, 2 Mar 2021 10:37:18 +0000 (11:37 +0100)]
Merge pull request #39752 from rhcs-dashboard/wip-49546-pacific

pacific: mgr/dashboard: Splitting tenant$user when creating rgw user

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
4 years agorgw: add rgw-gap-list-comparator tool 39769/head
J. Eric Ivancich [Fri, 29 Jan 2021 17:03:50 +0000 (12:03 -0500)]
rgw: add rgw-gap-list-comparator tool

The rgw-gap-list tool can produce a number of false positives when the
cluster is being used during its run. One technique to minimize the
number of false positives is to run the tool twice and look for the
objects that appear in both lists. The rgw-gap-list-comparator tool is
designed to do this comparison.

Signed-off-by: Michael Kidd <linuxkidd@gmail.com>
(cherry picked from commit 3c5154f010a34f9845b40e49a7870771e7f5372e)

4 years agorgw: add rgw-gap-list tool
J. Eric Ivancich [Thu, 17 Dec 2020 23:21:36 +0000 (18:21 -0500)]
rgw: add rgw-gap-list tool

Due to a prior bug (pr: 38228) tail rados objects of some RGW objects
could have been incorrectly deleted. This tool is designed to look for
such cases. It essentially does the opposite of rgw-orphan-list,
looking for rados objects that RGW expects to be there, but which are
not to be found.

IMPORTANT: This is very experimental at this point in time, and any
"results" produced should be verified by other means.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
Signed-off-by: Michael Kidd <linuxkidd@gmail.com>
(cherry picked from commit 07b42195fbbcd27e330cb1daa35e77e0952f8a3c)

4 years agorgw: add radosgw-admin bucket radoslist bucket/obj mapping
J. Eric Ivancich [Thu, 17 Dec 2020 23:32:20 +0000 (18:32 -0500)]
rgw: add radosgw-admin bucket radoslist bucket/obj mapping

A new command-line option "--rgw-obj-fs" is added to
radosgw-admin. When used with the "bucket radoslist" subcommand, will
output lines with a rados object, bucket name, and object name,
separated by the field separator specified. Without this command-line
option, only the rados object is output, which is the previous
behavior.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
(cherry picked from commit 81d6260c1a42400bfa8c677c419e2c3f76d7a920)

4 years agorgw: allow rgw-orphan-list to handle intermediate files w/ binary data 39764/head
J. Eric Ivancich [Thu, 4 Feb 2021 21:19:17 +0000 (16:19 -0500)]
rgw: allow rgw-orphan-list to handle intermediate files w/ binary data

Updates the grep commands with the --text command-line option since
there are cases where rados object names contain NUL characters.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
(cherry picked from commit b520cc5a910ea4fba0d2023b13e22b4166f767c7)

4 years agotest/librbd: resolve compile error on centos 39675/head
YuanXin [Sat, 27 Feb 2021 04:01:40 +0000 (12:01 +0800)]
test/librbd: resolve compile error on centos

Signed-off-by: YuanXin <yuanxin@didiglobal.com>
(cherry picked from commit 49a63a594038f96db235d20e82bcda9963f8ded8)

4 years agorbd: use portable zero-ing memory function
YuanXin [Sat, 27 Feb 2021 03:37:19 +0000 (11:37 +0800)]
rbd: use portable zero-ing memory function

Signed-off-by: YuanXin <yuanxin@didiglobal.com>
(cherry picked from commit 72c04a9d319520c29dfdf952408beb12ed73a88e)

4 years agoMerge pull request #39188 from liewegas/pr-39173-pacific
Yuri Weinstein [Mon, 1 Mar 2021 18:19:59 +0000 (10:19 -0800)]
Merge pull request #39188 from liewegas/pr-39173-pacific

pacific: mgr/devicehealth: do not create pool until there are enough osds

Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #39189 from liewegas/pr-39172-pacific
Yuri Weinstein [Mon, 1 Mar 2021 17:37:56 +0000 (09:37 -0800)]
Merge pull request #39189 from liewegas/pr-39172-pacific

pacific: mgr/orchestrator: remove 'host' arg for 'orch ls'

Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agoMerge pull request #39236 from k0ste/wip-49108-pacific
Yuri Weinstein [Mon, 1 Mar 2021 17:36:25 +0000 (09:36 -0800)]
Merge pull request #39236 from k0ste/wip-49108-pacific

pacific: mgr/zabbix: format ceph.[{#POOL},percent_used as float

Reviewed-by: Kefu Chai <kchai@redhat.com>
4 years agoMerge pull request #39663 from pponnuvel/wip-49442-pacific
Yuri Weinstein [Mon, 1 Mar 2021 17:21:12 +0000 (09:21 -0800)]
Merge pull request #39663 from pponnuvel/wip-49442-pacific

pacific: rgw: radosgw-admin: clarify error when email address already in use

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoMerge pull request #39048 from smithfarm/wip-48971-pacific
Yuri Weinstein [Mon, 1 Mar 2021 17:20:33 +0000 (09:20 -0800)]
Merge pull request #39048 from smithfarm/wip-48971-pacific

pacific: rgw: Initialize Layout Logs

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agomgr/dashboard: Splitting tenant$user when creating rgw user 39752/head
Nizamudeen A [Sat, 16 Jan 2021 14:40:36 +0000 (20:10 +0530)]
mgr/dashboard: Splitting tenant$user when creating rgw user

Fixes: https://tracker.ceph.com/issues/47378
Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit 7f4387d34fd073a3b0d8c828fecdc5df4b498122)

4 years agoMerge PR #39483 into pacific
Sage Weil [Sun, 28 Feb 2021 16:07:12 +0000 (10:07 -0600)]
Merge PR #39483 into pacific

* refs/pull/39483/head:
mgr/cephadm: based sleep interval on configured intervals/timeouts

Reviewed-by: Juan Miguel Olmo <jolmomar@redhat.com>
4 years agoMerge PR #39595 into pacific
Sage Weil [Sun, 28 Feb 2021 16:06:56 +0000 (10:06 -0600)]
Merge PR #39595 into pacific

* refs/pull/39595/head:
mon/KVMonitor: fix 'osd new' cross-service commit
mgr/ActivePyModules.cc: use wrappers for acquiring/releasing GIL
mgr: rename config_prefix -> mgr_store_prefix
mgr: fix config option prefix
mgr/MgrStandby: simplify weird code
mgr_module: get_foreign_ceph_option(entity, name)
mgr: maintain a ConfigMap copy
mon/ConfigMap: factor out parse_key helper
mon/ConfigMap: fix stray option leak
mgr: use new kv subscription for mgr/, device/, config/
mon: allow subscription to kv/config-key data
mon: convert ConfigKeyService -> KVMonitor

Reviewed-by: Neha Ojha <nojha@redhat.com>
4 years agorbd: fix mingw 5.0.3 compatibility issue
Lucian Petrut [Thu, 25 Feb 2021 20:44:22 +0000 (20:44 +0000)]
rbd: fix mingw 5.0.3 compatibility issue

GetOverlappedResultEx isn't avaialable when using mingw 5.0.3
(default on Ubuntu Bionic).

Since we don't really need the extra parameters, we'll switch
to GetOverlappedResult.

We're doing this mostly for testing purposes as the mingw 5.0.3
runtime is known to be broken.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
(cherry picked from commit 7eae54cb4c4ee26fdaff9599a627edd2d281de8a)

4 years agomon/KVMonitor: fix 'osd new' cross-service commit 39595/head
Sage Weil [Wed, 24 Feb 2021 21:20:18 +0000 (16:20 -0500)]
mon/KVMonitor: fix 'osd new' cross-service commit

When we converted ConfigKeyService to KVMonitor, we didn't correctly
change this to propose_pending(), which mean that the kv change wasn't
captured in the paxos transaction.

Fixes: bb7ebc41532aeb23cff2241ab07b3f01c2f57ddd
Fixes: https://tracker.ceph.com/issues/49460
Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 66891b4845fbf119cacb2c77d39180e28c6626d5)

4 years agoMerge pull request #39401 from cbodley/wip-48948
Casey Bodley [Thu, 25 Feb 2021 16:06:07 +0000 (11:06 -0500)]
Merge pull request #39401 from cbodley/wip-48948

pacific: rgw: avoid (rgw_file) illegal access to stack memory

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #39443 from cbodley/wip-qa-rgw-pacific
Casey Bodley [Thu, 25 Feb 2021 16:05:58 +0000 (11:05 -0500)]
Merge pull request #39443 from cbodley/wip-qa-rgw-pacific

pacific: qa/rgw: fixes for keystone, vault, barbican tests

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
4 years agoMerge pull request #39444 from cbodley/wip-49060
Casey Bodley [Thu, 25 Feb 2021 16:05:47 +0000 (11:05 -0500)]
Merge pull request #39444 from cbodley/wip-49060

pacific: rgw: fix valgrind errors when protected_fixedsize_stack is used

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
4 years agoMerge pull request #39445 from cbodley/wip-49129
Casey Bodley [Thu, 25 Feb 2021 16:05:36 +0000 (11:05 -0500)]
Merge pull request #39445 from cbodley/wip-49129

pacific: rgw: fix trailing null in object names of multipart reuploads

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #39446 from cbodley/wip-49172
Casey Bodley [Thu, 25 Feb 2021 16:05:28 +0000 (11:05 -0500)]
Merge pull request #39446 from cbodley/wip-49172

pacific: rgw multisite: fix RGWCoroutine error handling

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #39447 from cbodley/wip-49251
Casey Bodley [Thu, 25 Feb 2021 16:04:35 +0000 (11:04 -0500)]
Merge pull request #39447 from cbodley/wip-49251

pacific: rgw: fix snprintf() truncate warning in ETagVerifier

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #39448 from cbodley/wip-49030
Casey Bodley [Thu, 25 Feb 2021 16:04:12 +0000 (11:04 -0500)]
Merge pull request #39448 from cbodley/wip-49030

pacific: cmake: boost>=1.74 adds BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT to radosgw

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #39449 from cbodley/wip-49071
Casey Bodley [Thu, 25 Feb 2021 16:04:01 +0000 (11:04 -0500)]
Merge pull request #39449 from cbodley/wip-49071

pacific: rgw : add MD5 in forward_request

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
4 years agoMerge pull request #39553 from cbodley/wip-49358
Casey Bodley [Thu, 25 Feb 2021 16:03:36 +0000 (11:03 -0500)]
Merge pull request #39553 from cbodley/wip-49358

pacific: rgw: fix buffer overflow in s3 select op

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
4 years agoMerge pull request #39623 from sebastian-philipp/pacific-backport-39259-39238-39261...
Sebastian Wagner [Thu, 25 Feb 2021 11:11:43 +0000 (12:11 +0100)]
Merge pull request #39623 from sebastian-philipp/pacific-backport-39259-39238-39261-38897-39193-38695-39266-39350-39153-37729-

pacific: cephadm Batch backport Febrary (2)

Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
4 years agoMerge pull request #39636 from ceph/backport_39398_39424_39490
Sebastian Wagner [Thu, 25 Feb 2021 09:59:40 +0000 (10:59 +0100)]
Merge pull request #39636 from ceph/backport_39398_39424_39490

pacific: cephadm: Fix selinux

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
4 years agoMerge pull request #39557 from liewegas/pr-39304-pacific
Yuri Weinstein [Thu, 25 Feb 2021 00:01:39 +0000 (16:01 -0800)]
Merge pull request #39557 from liewegas/pr-39304-pacific

pacific: qa/suites/upgrade/octopus-x: fix rgw ragweed test

Reviewed-by: Casey Bodley <cbodley@redhat.com>
4 years agoqa: add tests for persistent writeback cache
lixiaoy1 [Fri, 15 Jan 2021 11:17:04 +0000 (06:17 -0500)]
qa: add tests for persistent writeback cache

Signed-off-by: Li, Xiaoyan <xiaoyan.li@intel.com>
(cherry picked from commit 86ae486cb1654ebbfdb853fe1f9497ac6629d1a8)

4 years agoqa: fix issues in exec_on_cleanup
lisali [Tue, 9 Feb 2021 15:38:16 +0000 (23:38 +0800)]
qa: fix issues in exec_on_cleanup

Signed-off-by: Li, Xiaoyan <xiaoyan.li@intel.com>
(cherry picked from commit 898f9d69793fd0a6a779f2e4a32ad8ce5748951a)

4 years agolibrbd: permit disabling QCOW migration format support
Jason Dillaman [Mon, 22 Feb 2021 15:23:01 +0000 (10:23 -0500)]
librbd: permit disabling QCOW migration format support

Downstream Red Hat products do not support the older QCOW format. This
will allow the support for the legacy QCOW format to be disabled for the
new RBD import-only migration support.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit bc0b9f52ad71ae0e2dbc9a6e3e884a8a7cd02e9b)

4 years agoMerge pull request #39641 from dillaman/wip-librbd-backports-pacific-5
Jason Dillaman [Wed, 24 Feb 2021 18:04:59 +0000 (13:04 -0500)]
Merge pull request #39641 from dillaman/wip-librbd-backports-pacific-5

pacific: rbd: miscellaneous backports

Reviewed-by: Mykola Golub <mgolub@suse.com>
4 years agotest/librbd: TestLibRBD.RenameViaLockOwner doesn't require journaling now 39641/head
Mykola Golub [Tue, 23 Feb 2021 04:46:00 +0000 (04:46 +0000)]
test/librbd: TestLibRBD.RenameViaLockOwner doesn't require journaling now

Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 3042eec0d8aa7e28a8b0452c11a6dc6528fe4992)

4 years agolibrbd: use on-disk image name when storing mirror snapshot state
Mykola Golub [Mon, 22 Feb 2021 12:54:43 +0000 (12:54 +0000)]
librbd: use on-disk image name when storing mirror snapshot state

Fixes: https://tracker.ceph.com/issues/49115
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 813728ae2036231a269be86bcb3dc48951a20f21)

4 years agotest/librbd: extend TestLibRBD.RenameViaLockOwner
Mykola Golub [Mon, 22 Feb 2021 12:53:38 +0000 (12:53 +0000)]
test/librbd: extend TestLibRBD.RenameViaLockOwner

To cover the following case:

- Client A has image opened but does not owns the lock.
- Client B renames the image (client A is not aware of it).
- Client A becomes the lock owner.
- Client B requests rename, which is proxied to the client A.

Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 2d2e04e86bcc666e3abaceeeef7e1598dcc9fb94)

4 years agolibrbd: make rename be always executed by lock owner
Mykola Golub [Sun, 14 Feb 2021 11:50:32 +0000 (11:50 +0000)]
librbd: make rename be always executed by lock owner

Fixes: https://tracker.ceph.com/issues/49115
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 2a9fac2cc4b10af04c52e12f34932e6d2d91441f)

4 years agolibrbd: always check on-disk image name when renaming
Mykola Golub [Sun, 14 Feb 2021 11:48:35 +0000 (11:48 +0000)]
librbd: always check on-disk image name when renaming

Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 950a7b5cfc66bdfea35304e6cb06e74c92dcaf5c)

4 years agorbd-mirror: reset update_status_task pointer in timer thread
Mykola Golub [Mon, 22 Feb 2021 16:22:54 +0000 (16:22 +0000)]
rbd-mirror: reset update_status_task pointer in timer thread

To avoid a time window when m_update_status_task is invalid. If
during this time the cancel_update_mirror_image_replay_status is
called, it may cancel some other's ImageReplayer task, if it
happened to add the task with the same address.

Fixes: https://tracker.ceph.com/issues/49418
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit 3a289d43f6ab010bcadb80888fb73763f4f55ed0)

4 years agoMerge pull request #39642 from idryomov/wip-rbd-map-sanity-check-pacific
Ilya Dryomov [Wed, 24 Feb 2021 13:03:49 +0000 (14:03 +0100)]
Merge pull request #39642 from idryomov/wip-rbd-map-sanity-check-pacific

pacific: krbd: make sure the device node is accessible after the mapping

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
4 years agorgw/radosgw-admin clarify error when email address already in use 39663/head
Matthew Vernon [Thu, 4 Feb 2021 11:41:14 +0000 (11:41 +0000)]
rgw/radosgw-admin clarify error when email address already in use

The error message if you try and create an S3 user with an email
address that is already associated with another S3 account is very
confusing; this patch makes it much clearer

To reproduce:

radosgw-admin user create --uid=foo --display-name="Foo test" --email=bar@domain.invalid
radosgw-admin user create --uid=test --display-name="AN test" --email=bar@domain.invalid
could not create user: unable to parse parameters, user id mismatch, operation id: foo does not match: test

With this patch:

radosgw-admin user create --uid=test --display-name="AN test" --email=bar@domain.invalid
could not create user: unable to create user test because user id foo already exists with email bar@domain.invalid

Fixes: https://tracker.ceph.com/issues/49137
Fixes: https://tracker.ceph.com/issues/19411
Signed-off-by: Matthew Vernon <mv3@sanger.ac.uk>
(cherry picked from commit 05318d6f71e45a42a46518a0ef17047dfab83990)

4 years agoMerge pull request #39480 from kotreshhr/ceph-vol-client-update-fix-volumes-key-pacific
Ramana Raja [Wed, 24 Feb 2021 03:58:13 +0000 (22:58 -0500)]
Merge pull request #39480 from kotreshhr/ceph-vol-client-update-fix-volumes-key-pacific

pacific: pybind/ceph_volume_client: Update the 'volumes' key to 'subvolumes' in auth-metadata file

Reviewed-by: Ramana Raja <rraja@redhat.com>
4 years agoMerge pull request #39637 from kamoltat/wip-ksirivad-pacific-backports-39422
Josh Durgin [Tue, 23 Feb 2021 19:27:12 +0000 (11:27 -0800)]
Merge pull request #39637 from kamoltat/wip-ksirivad-pacific-backports-39422

pacific: PendingReleaseNotes: mgr/pg_autoscaler

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
4 years agokrbd: make sure the device node is accessible after the mapping 39642/head
Ilya Dryomov [Fri, 19 Feb 2021 15:47:17 +0000 (16:47 +0100)]
krbd: make sure the device node is accessible after the mapping

We have always assumed this to be the case and users' scripts and
orchestration tools have grown to depend on this.  Let's add some
enforcement, prompted by [1]:

  "I am running my Kubernetes worker node inside of an LXC container
   which doesn't benefit from the device node created by the kernel, so
   I'm using udev to create the /dev/rbd* device nodes inside of the LXC
   container."

which, through the unfortunate interaction with ceph-csi rbd plugin,
results in data loss for "volumeMode: Filesystem" PVs because it ends
up recreating the filesystem every time the PV is attached to the pod:

  "When deleting the pod and re-creating it, I can see that the RBD
   image is indeed being reformatted. This seems to be because when
   blkid is being run to check if the image is formatted, the /dev/rbd*
   device has not yet been created by udev. By the time the code gets
   down to running mkfs, the device is there and the damage is done."

[1] https://github.com/ceph/ceph-csi/issues/1820

Fixes: https://tracker.ceph.com/issues/49410
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit f6854ac65d2a838e2f523979e341136e5f201b5c)

4 years agomgr/volumes: Bump up AuthMetadataManager's version 39480/head
Kotresh HR [Fri, 19 Feb 2021 11:27:23 +0000 (16:57 +0530)]
mgr/volumes: Bump up AuthMetadataManager's version

With ceph_volume_client and mgr-volumes co-existing
for sometime, the version of both needs to be same.
The ceph_volume_client version <=5 can't decode
'subvolumes' key in auth-metadata file. Hence to
handle version in-compatibility, the version of
ceph_volume_client is bumped up to 6 and the same
needs to be done in mgr-volume's AuthMetadataManager

Fixes: https://tracker.ceph.com/issues/49374
Signed-off-by: Kotresh HR <khiremat@redhat.com>
(cherry picked from commit 818c7781ff0467c6521bf2b3002b094fb8a71257)

4 years agopybind/ceph_volume_client: Bump up the version and compat_version to 6
Kotresh HR [Fri, 19 Feb 2021 11:12:33 +0000 (16:42 +0530)]
pybind/ceph_volume_client: Bump up the version and compat_version to 6

With 'volumes' key updated to 'subvolumes', the version of
ceph_volume_client <= 5 can't decode auth-metadata file. Hence
bumping up ceph_volume_client version and compat_version to 6.

Fixes: https://tracker.ceph.com/issues/49294
Signed-off-by: Kotresh HR <khiremat@redhat.com>
4 years agorbd: fix rbd-wnbd log messages
Lucian Petrut [Tue, 23 Feb 2021 12:37:59 +0000 (12:37 +0000)]
rbd: fix rbd-wnbd log messages

Previously, rbd-wnbd was called "rbd-nbd" as it was using NBD
to communicate with the driver.

The tool was then renamed to "rbd-wnbd" but some messages were
not updated.

This patch will simply replace "rbd-nbd" with "rbd-wnbd" in some
log messages.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
(cherry picked from commit 108f4363ae31e94928792e7ab3ae1a2cbd5e3c41)

4 years agorbd: fix rbd-wnbd device status
Lucian Petrut [Wed, 17 Feb 2021 13:27:11 +0000 (13:27 +0000)]
rbd: fix rbd-wnbd device status

The "rbd-wnbd show" command will always report the device status
as "inactive". This patch adds the missing check, similar to the
one used by the "list" command.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
(cherry picked from commit 94cf22e35217e33a48ab73a018c8b1015b887ca4)

4 years agocommon: fix win32 event log source
Lucian Petrut [Wed, 17 Feb 2021 12:49:02 +0000 (12:49 +0000)]
common: fix win32 event log source

The Windows "get_process_name" function uses the input buffer
to store the entire executable path, while the caller only
expects the filename.

The "get_process_name_cpp" function is using an insufficient
buffer, for which reason it will return "(unknown)" when the
executable path exceeds 32 characters.

Windows event log entries have the wrong source because of this.

We'll update "get_process_name" to use a separate buffer for the
full executable path and avoid requesting a larger buffer than
actually needed.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
(cherry picked from commit 86c7c2f5be96e80d492447d6582131f1b2d3438d)

4 years agodoc/orch: Host labels 39623/head
Sebastian Wagner [Mon, 15 Feb 2021 12:34:47 +0000 (13:34 +0100)]
doc/orch: Host labels

Fixes: https://tracker.ceph.com/issues/45833
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 4cb501416da0f89648f4f075b447a35f45feed7f)

4 years agodoc/cephadm: Disable automatic deployment of daemons
Sebastian Wagner [Mon, 15 Feb 2021 10:39:33 +0000 (11:39 +0100)]
doc/cephadm: Disable automatic deployment of daemons

Fixes: https://tracker.ceph.com/issues/45767
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 5c872ace45d2a2f4cb6e42802c1a658fe334461b)

4 years agodoc/cephadm: Per-service and per-daemon events
Sebastian Wagner [Mon, 15 Feb 2021 13:20:13 +0000 (14:20 +0100)]
doc/cephadm: Per-service and per-daemon events

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit a9b947b51e773e09e05feb7fa718ad247ec4ec8c)

4 years agodoc/cephadm: Restoring the MON quorum
Sebastian Wagner [Mon, 15 Feb 2021 12:01:01 +0000 (13:01 +0100)]
doc/cephadm: Restoring the MON quorum

Fixes: https://tracker.ceph.com/issues/49214
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 02584d3ee772e4d5d8d7b4858dff192cd49c5281)

4 years agomgr/cephadm: _add_daemon: remove config_func
Sebastian Wagner [Fri, 5 Feb 2021 13:14:25 +0000 (14:14 +0100)]
mgr/cephadm: _add_daemon: remove config_func

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 1e3d98ee1e15744c1eb57bba578765bbaeb1096d)

4 years agomgr/cephadm: Add config() to CephadmService
Sebastian Wagner [Mon, 1 Feb 2021 17:13:59 +0000 (18:13 +0100)]
mgr/cephadm: Add config() to CephadmService

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 1b4e9e68d449ba58f1d0169c733124879173cf76)

4 years agomgr/orch: remove a bunch of duplicated code
Sebastian Wagner [Sat, 6 Feb 2021 00:05:03 +0000 (01:05 +0100)]
mgr/orch: remove a bunch of duplicated code

`ceph daemon add [..]` are all the same thing

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 7f51e3ae975c7c84281696051d4e10e5a88316c2)

4 years agomgr/orch: remove a bunch of duplicated code
Sebastian Wagner [Fri, 5 Feb 2021 23:57:24 +0000 (00:57 +0100)]
mgr/orch: remove a bunch of duplicated code

We only need to call self.apply()

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 5a49f253e11d7a907ebc48202173f60da42f3c9c)

4 years agomgr/cephadm: SpecStore: use d-under accessor methods
Sebastian Wagner [Sat, 13 Feb 2021 12:56:34 +0000 (13:56 +0100)]
mgr/cephadm: SpecStore: use d-under accessor methods

This fixes a conflict between:

1fcdad17685a8884135a2cda0cdfe3525e325474
2c7f899124207d0d4866e16d9eb5609777ea22e8

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit b126628460ff46fc802e648c570a001695e30042)

4 years agocephadm: allow redeploy of daemons in error state if container running
Adam King [Mon, 8 Feb 2021 19:55:45 +0000 (14:55 -0500)]
cephadm: allow redeploy of daemons in error state if container running

Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit 71613e61fa66e3479693f61ce63732550f756e17)

4 years agomgr/cephadm: make generate_config internal
Adam King [Mon, 8 Feb 2021 13:43:59 +0000 (08:43 -0500)]
mgr/cephadm: make generate_config internal

makes generate_config into an internal function for prepare_create

Fixes: https://tracker.ceph.com/issues/48373
Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit 2c7f899124207d0d4866e16d9eb5609777ea22e8)

4 years agomgr/cephadm: call prepare_create before redeploy
Adam King [Thu, 28 Jan 2021 18:32:01 +0000 (13:32 -0500)]
mgr/cephadm: call prepare_create before redeploy

some services (notably iscsi and ha-rgw currently) rely
on actions in prepare_create to setup their configuration
even when being redeployed. This change makes sure prepare_create
is called before redeploys and reconfigurations the same way it is
done during initial deployment to avoid disrepencies. OSDs are
skipped as they do not have a normal prepare_create

Fixes: https://tracker.ceph.com/issues/48373
Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit 6fc6db23bf72d5d488fa983a7fd2491c5a9805d3)

4 years agomgr/cephadm: Put together default container images references
Juan Miguel Olmo Martínez [Fri, 12 Feb 2021 13:09:17 +0000 (14:09 +0100)]
mgr/cephadm: Put together default container images references

Placed all in the same location in order to make easy downstream modifications
and future changes

Signed-off-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
(cherry picked from commit ce246479443a64b292c7cff2a662161c8a598e09)

Conflicts:
src/cephadm/cephadm

4 years agocephadm: --orphan-initial-daemons now applies services unmanaged
Sebastian Wagner [Fri, 5 Feb 2021 12:19:21 +0000 (13:19 +0100)]
cephadm: --orphan-initial-daemons now applies services unmanaged

We do not want to have orphaned daemons at all. Thus apply
services as unmanaged in order to run `ceph orch daemon add ...`
later.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit db5d3d4bd38d5f6fcbb95538c024899174cbc54f)

4 years agomgr/cephadm: purge service: remove `mds_join_fs`
Sebastian Wagner [Fri, 29 Jan 2021 17:49:25 +0000 (18:49 +0100)]
mgr/cephadm: purge service: remove `mds_join_fs`

Also add a unit test

Fixes: https://tracker.ceph.com/issues/48597
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 30d03ee07c75da87496eae34e2186b5531b4101c)

4 years agomgr/cephadm: Add service deletion timestamp to `orch ls`
Sebastian Wagner [Fri, 29 Jan 2021 17:27:52 +0000 (18:27 +0100)]
mgr/cephadm: Add service deletion timestamp to `orch ls`

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 84ac0d3de167e5edfc36912420da102bd74279c6)

4 years agomgr/cephadm: mandate the existence of Services for Daemons
Sebastian Wagner [Fri, 29 Jan 2021 16:18:50 +0000 (17:18 +0100)]
mgr/cephadm: mandate the existence of Services for Daemons

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 745aa00909fe072f127ede7a5da77a489dc067ae)

4 years agomgr/cephadm: Add pytest to verify delayed service deletion
Sebastian Wagner [Fri, 29 Jan 2021 16:16:55 +0000 (17:16 +0100)]
mgr/cephadm: Add pytest to verify delayed service deletion

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 62267d2d3ca6a7626479947c061dcb0d168c12e5)

4 years agomgr/cephadm: Purge deleted services
Sebastian Wagner [Wed, 13 Jan 2021 13:12:24 +0000 (14:12 +0100)]
mgr/cephadm: Purge deleted services

If no daemon is deployed for a deleted service,
purge it.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit f73fdee1b081928051a5f52d510458f3b81525bd)

4 years agomgr/cephadm: add spec_deleted datetime to spec store
Sebastian Wagner [Wed, 13 Jan 2021 12:40:16 +0000 (13:40 +0100)]
mgr/cephadm: add spec_deleted datetime to spec store

We'd like to keep the spec in the store, while we're cleaning
up all the daemons. Reason is to clean up the
config and config-key store when the last daemon of a
service is deleted.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 1fcdad17685a8884135a2cda0cdfe3525e325474)

4 years agomgr/cephadm: remove dead code
Sebastian Wagner [Wed, 13 Jan 2021 12:43:21 +0000 (13:43 +0100)]
mgr/cephadm: remove dead code

SpecStore.find is no longer used

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 9869b61e309034544b9e2ea92610840bdf34a875)

4 years agomgr/cephadm: enable use_repo_digest by default for pacific
Sebastian Wagner [Mon, 25 Jan 2021 10:54:49 +0000 (11:54 +0100)]
mgr/cephadm: enable use_repo_digest by default for pacific

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit 54ac36e15d899c84324fb93b46ef99fd85cd91dd)

4 years agocephadm: add error messages to log file
Michael Fritch [Tue, 9 Feb 2021 18:12:37 +0000 (11:12 -0700)]
cephadm: add error messages to log file

Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit 3e503d148749fb78ccbf4adc1ecdfff6b8524df2)

4 years agoqa/suites/rados/cephadm/upgrade: change starting version by distro
Sage Weil [Thu, 11 Feb 2021 19:08:19 +0000 (14:08 -0500)]
qa/suites/rados/cephadm/upgrade: change starting version by distro

centos/rhel have podman 2, which does not like conflicting --cap-add and
--privileged arguments.  cephadm versions prior to 15.2.5 use both args,
however, which means the rhel/centos upgrade test has to start at 15.2.5
to work at all on those distros (with the updated podman).

Fixes: https://tracker.ceph.com/issues/48142
Signed-off-by: Sage Weil <sage@newdream.net>
(cherry picked from commit 38e14f923508efc4a18e942869065771598ef915)

4 years agodoc/dev/cephadm: scalability notes
Sebastian Wagner [Wed, 9 Dec 2020 10:59:59 +0000 (11:59 +0100)]
doc/dev/cephadm: scalability notes

Add a few notes about possible future scalability improvements

Co-authored-by: Joshua Schmid <jschmid@suse.de>
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit f82e37434188550d9aadccab872d1356997cf661)

Conflicts:
doc/dev/cephadm/index.rst

4 years agomgr/orch: Fix flake8 error
Sebastian Wagner [Mon, 8 Feb 2021 16:37:52 +0000 (17:37 +0100)]
mgr/orch: Fix flake8 error

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit be9b98a4a38bb9aebaf010247d7915f77218d912)

4 years agocephadm: configure journald as the logdriver
Michael Fritch [Fri, 5 Feb 2021 01:19:25 +0000 (18:19 -0700)]
cephadm: configure journald as the logdriver

Introduced by e6792f306ab4d07251588fdca6ed3876ae3a092a

podman containers running in a detached `-d` state need to have a
configured logdriver for `cephadm logs` to be able to gather the daemon
output from journald

Fixes: https://tracker.ceph.com/issues/47916
Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit 7c44f21bbbb0426fc2f83cfff7966c8bb9a71641)

4 years agomgr/cephadm: Redefinition of unused name from line n (F811)
Michael Fritch [Wed, 3 Feb 2021 14:06:16 +0000 (07:06 -0700)]
mgr/cephadm: Redefinition of unused name from line n (F811)

Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit 80990f5bdc8eebeffa0cbb8e2c525ad268ed5cea)

4 years agomgr/cephadm: Module imported but unused (F401)
Michael Fritch [Wed, 3 Feb 2021 14:06:06 +0000 (07:06 -0700)]
mgr/cephadm: Module imported but unused (F401)

Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit 2e2b419dafd4738553e85a905151ba1e6ffce13d)

4 years agomgr/cephadm: Local variable name is assigned to but never used (F841)
Michael Fritch [Tue, 2 Feb 2021 17:42:44 +0000 (10:42 -0700)]
mgr/cephadm: Local variable name is assigned to but never used (F841)

add error handling when `CompletedProcess` fails during rgw relam,
zongroup create et al.

Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit 6658c53d6f651373f0d9c2559b3524815604d30a)