]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 months agomds/quiesce-db: keep the db thread alive until shutdown 54485/head
Leonid Usov [Wed, 6 Mar 2024 16:06:50 +0000 (18:06 +0200)]
mds/quiesce-db: keep the db thread alive until shutdown

With the change we can now avoid having to join it during the membership update, preventing potential deadlocks

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce-db: incorporate review comments
Leonid Usov [Sun, 3 Mar 2024 22:45:07 +0000 (00:45 +0200)]
mds/quiesce-db: incorporate review comments

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce: declare QuiesceDbPeerListing and QuiesceDbPeerAck
Leonid Usov [Thu, 29 Feb 2024 12:08:18 +0000 (14:08 +0200)]
mds/quiesce: declare QuiesceDbPeerListing and QuiesceDbPeerAck

With these dedicated structs we can fully defer to QuiesceDbEncoding
when encoding/decoding quiesce db messages

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce: resolve the quiesce cluster at the mds monitor
Leonid Usov [Wed, 28 Feb 2024 13:11:17 +0000 (15:11 +0200)]
mds/quiesce: resolve the quiesce cluster at the mds monitor

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agoinclude/types: add an I/O helper for std::unordered_map
Leonid Usov [Wed, 28 Feb 2024 12:41:13 +0000 (14:41 +0200)]
include/types: add an I/O helper for std::unordered_map

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomessages: avoid using mutable members in MMDSQuiesce*
Leonid Usov [Tue, 27 Feb 2024 21:25:20 +0000 (23:25 +0200)]
messages: avoid using mutable members in MMDSQuiesce*

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce-db: incorporate review comments
Leonid Usov [Tue, 27 Feb 2024 11:36:16 +0000 (13:36 +0200)]
mds/quiesce-db: incorporate review comments

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agodoc/cephfs/fs-volumes: doc fixes and updates
Leonid Usov [Mon, 26 Feb 2024 11:33:18 +0000 (13:33 +0200)]
doc/cephfs/fs-volumes: doc fixes and updates

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agopybind/mgr: correct type hints for `get_quiesce_leader_info`
Leonid Usov [Thu, 15 Feb 2024 17:16:53 +0000 (19:16 +0200)]
pybind/mgr: correct type hints for `get_quiesce_leader_info`

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce: only use ACTIVE daemons for the quiesce cluster
Leonid Usov [Thu, 15 Feb 2024 13:15:09 +0000 (15:15 +0200)]
mds/quiesce: only use ACTIVE daemons for the quiesce cluster

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds,messages: quiesce db inter-rank messaging
Leonid Usov [Thu, 8 Feb 2024 12:07:28 +0000 (14:07 +0200)]
mds,messages: quiesce db inter-rank messaging

Fixes: https://tracker.ceph.com/issues/63708
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce: MDSRankQuiesce - integration of the quiesce db manager
Leonid Usov [Thu, 30 Nov 2023 14:42:22 +0000 (16:42 +0200)]
mds/quiesce: MDSRankQuiesce - integration of the quiesce db manager

* create an instance of the QuiesceDbManager in the rank
* update membership with a new mdsmap
* add an admin socket command for sending requests to the manager

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agodoc/cephfs/fs-volumes: Add info about the quiesce command
Leonid Usov [Mon, 8 Jan 2024 13:08:26 +0000 (15:08 +0200)]
doc/cephfs/fs-volumes: Add info about the quiesce command

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agodoc: fixes for local dev builds
Leonid Usov [Mon, 8 Jan 2024 15:37:20 +0000 (17:37 +0200)]
doc: fixes for local dev builds

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomgr/volumes: support for `fs subvolume quiesce`
Leonid Usov [Thu, 4 Jan 2024 17:52:44 +0000 (19:52 +0200)]
mgr/volumes: support for `fs subvolume quiesce`

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomgr/volumes: use `volume_exception_to_retval` as a decorator
Leonid Usov [Thu, 4 Jan 2024 17:51:32 +0000 (19:51 +0200)]
mgr/volumes: use `volume_exception_to_retval` as a decorator

When used as a decorator, it saves one indented try-catch block inside the decorated method.
This can be applied to most of the methods in the file, subject to a separate refactoring commit

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agopybind/mgr: add a `one-shot` parameter to send_command
Leonid Usov [Sun, 21 Jan 2024 17:37:52 +0000 (19:37 +0200)]
pybind/mgr: add a `one-shot` parameter to send_command

with the parameter set, the message won't be held on to when the remote end resets
or fails to reconnect.

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce: QuiesceAgent implementation and unit tests
Leonid Usov [Sun, 26 Nov 2023 11:29:11 +0000 (13:29 +0200)]
mds/quiesce: QuiesceAgent implementation and unit tests

QuiesceAgent is the layer that converts updates from the QuiesceDb
into calls to the QuiesceProtocol APIs, and then sends async acks
back to the db manager following the quiesce protocol events.

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds/quiesce: QuiesceDb.h and QuiesceDbManager with tests
Leonid Usov [Tue, 31 Oct 2023 12:46:55 +0000 (14:46 +0200)]
mds/quiesce: QuiesceDb.h and QuiesceDbManager with tests

Quiesce DB is one of the components of the "Consistent Snapshots" epic.
The solution is discussed in a slide deck available for viewing to @redhat users:
https://docs.google.com/presentation/d/1wE3-e9AAme7Q3qmeshUSthJoQGw7-fKTrtS9PsdAIVo/edit?usp=sharing

This commit is focusing on the replicated quiesce database maintained by the MDS rank cluster.
One of the major goals was to design the component in a way that can be easily tested
outside of the MDS infrastructure, which is why the communication layer
has been asbtracted out by introducing just two communication callbacks
that will need to be implemented by the infrastructure.

The most of the component code is delivered in a single coherent commit, along with the uint tests.
Other commits will be dedicated to integration with the MDS infrastructure and other changes
that can't be attributed to the core quiesce db code or its tests.

The quiesce db component is composed of the following major parts/actors:

* QuiesceDbManager is the main actor, implementing both the leader and the replica roles.
  Normally, there will be an instance of the manager per MDS rank, although given the
  decoupling of the infrastructure and the manager, one can run any number of instances
  on a single node, which is how test are working.
* The manager interfaces to the infrastructure via two main APIs with the infrastructure
  that provides communication and cluster configuration (actor 2) and the quiesce db
  client that is responsible for the quiescing of the roots (actor 3)
** ClusterMembership is how manager is configured to be part of a (virtual) cluster.
   This structure will deliver information about other peers, the leader and provide
   two communication APIs: send_listing_to for db replication from the leader to replicas
   and send_ack for reporting quiesce success from the agents.
** Client Interface consists of a QuisceMap notify callback and a dedicated manager
   method to submit asynchronous acks following the agent (rank) quiesce progress.

The API of the quiesce db is described in the slide deck mentioned above. The full scope
of capabilities are encapsulated in a single QuiesceDbRequest structure. This should
simplify the implementation of other components that will have to propagate the functionality
to the administrator user of the volumes plugin.

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agocommon/Timer.cc: improve debug messages from the timer_thread
Leonid Usov [Mon, 22 Jan 2024 12:37:44 +0000 (14:37 +0200)]
common/Timer.cc: improve debug messages from the timer_thread

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agomds: MDSRank.cc: return status from `send_message_mds`
Leonid Usov [Thu, 8 Feb 2024 12:06:30 +0000 (14:06 +0200)]
mds: MDSRank.cc: return status from `send_message_mds`

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agoencoding: add emplace variants for map dencoders
Leonid Usov [Thu, 8 Feb 2024 11:39:31 +0000 (13:39 +0200)]
encoding: add emplace variants for map dencoders

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agocommon/Cond: make C_SaferCond private members protected to facilitate inheritance
Leonid Usov [Sun, 3 Dec 2023 08:49:19 +0000 (10:49 +0200)]
common/Cond: make C_SaferCond private members protected to facilitate inheritance

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agoqa/tasks/cephfs: give the tests more time to run heavy fs workloads
Leonid Usov [Tue, 24 Oct 2023 13:13:43 +0000 (16:13 +0300)]
qa/tasks/cephfs: give the tests more time to run heavy fs workloads

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
16 months agoMerge pull request #55897 from Matan-B/wip-matanb-crimson-seastar-sub-march24
Kefu Chai [Mon, 4 Mar 2024 06:17:16 +0000 (14:17 +0800)]
Merge pull request #55897 from Matan-B/wip-matanb-crimson-seastar-sub-march24

src/seastar: update seastar submodule to fix FTBFS

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
16 months agoMerge pull request #55659 from batrick/i64503
Venky Shankar [Mon, 4 Mar 2024 06:00:22 +0000 (11:30 +0530)]
Merge pull request #55659 from batrick/i64503

client: log debug message when requesting unmount

Reviewed-by: Venky Shankar <vshankar@redhat.com>
16 months agosrc/seastar: update seastar submodule to fix FTBFS 55897/head
Matan Breizman [Sun, 3 Mar 2024 09:45:56 +0000 (09:45 +0000)]
src/seastar: update seastar submodule to fix FTBFS

See: https://github.com/ceph/seastar/commit/d382f247629a7349afc0cea495a1cd0502dc0b22

Signed-off-by: Matan Breizman <mbreizma@redhat.com>
16 months agoMerge pull request #55899 from zdover23/wip-doc-2024-03-02-rados-radosgw-pgcalc
zdover23 [Sun, 3 Mar 2024 10:41:23 +0000 (20:41 +1000)]
Merge pull request #55899 from zdover23/wip-doc-2024-03-02-rados-radosgw-pgcalc

doc/rados: remove PGcalc from docs

Reviewed-by: Ronen Friedman <rfriedman@redhat.com>
16 months agodoc/rados: remove PGcalc from docs 55899/head
Zac Dover [Sun, 3 Mar 2024 10:28:00 +0000 (20:28 +1000)]
doc/rados: remove PGcalc from docs

Remove mention of the "PG calc" tool from the documentation. I have
removed all mention of this in one fell swoop to help posterity restore
mention of this tool if we decide we need to do so.

Signed-off-by: Zac Dover <zac.dover@proton.me>
16 months agoMerge pull request #52540 from petrutlucian94/single_process
Ilya Dryomov [Sat, 2 Mar 2024 18:53:06 +0000 (19:53 +0100)]
Merge pull request #52540 from petrutlucian94/single_process

rbd-wnbd: use a single daemon process per host

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
16 months agoMerge pull request #55787 from tchaikov/wip-cmake-liburing-2.5
Kefu Chai [Sat, 2 Mar 2024 09:58:08 +0000 (17:58 +0800)]
Merge pull request #55787 from tchaikov/wip-cmake-liburing-2.5

cmake: bump liburing from 0.7 to 2.5

Reviewed-by: Casey Bodley <cbodley@redhat.com>
16 months agocmake: bump liburing from 0.7 to 2.5 55787/head
Kefu Chai [Tue, 27 Feb 2024 14:25:32 +0000 (22:25 +0800)]
cmake: bump liburing from 0.7 to 2.5

this allows us to use newer liburing features. Seastar is using
some of them which are not provided by liburing 0.7.

in this change, `--use-libc` is passed to configure. otherwise
it does not link against libc, and the symbles like memset()
won't be available when compiling liburing.so with -fPIC using
clang, which does not pull libc in that case.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
16 months agoMerge pull request #55878 from athanatos/sjust/wip-seastar-module
Samuel Just [Sat, 2 Mar 2024 02:43:02 +0000 (18:43 -0800)]
Merge pull request #55878 from athanatos/sjust/wip-seastar-module

crimson: update seastar submodule to fix prometheus build error

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
16 months agocrimson/.../interruptible_future: remove SEASTAR_CONCEPT guard 55878/head
Samuel Just [Fri, 1 Mar 2024 20:00:32 +0000 (20:00 +0000)]
crimson/.../interruptible_future: remove SEASTAR_CONCEPT guard

Seastar commit 8dc3398a removed this macro, no longer necessary.

Signed-off-by: Samuel Just <sjust@redhat.com>
16 months agosrc/seastar: update seastar submodule to fix prometheus build failure
Samuel Just [Fri, 1 Mar 2024 19:10:00 +0000 (19:10 +0000)]
src/seastar: update seastar submodule to fix prometheus build failure

Fixes: https://tracker.ceph.com/issues/64589
Signed-off-by: Samuel Just <sjust@redhat.com>
16 months agoMerge pull request #55856 from dmick/wip-workflow-update
Dan Mick [Fri, 1 Mar 2024 23:10:48 +0000 (15:10 -0800)]
Merge pull request #55856 from dmick/wip-workflow-update

.github/workflows/create-backport-trackers.yml: update actions

16 months agoMerge pull request #55869 from zdover23/wip-doc-2024-03-01-install-manual-radosgw
zdover23 [Fri, 1 Mar 2024 23:02:35 +0000 (09:02 +1000)]
Merge pull request #55869 from zdover23/wip-doc-2024-03-01-install-manual-radosgw

doc/install: add manual RADOSGW install procedure

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
16 months ago.github/workflows/create-backport-trackers.yml: update versions of actions 55856/head
Dan Mick [Thu, 29 Feb 2024 19:36:51 +0000 (11:36 -0800)]
.github/workflows/create-backport-trackers.yml: update versions of actions

Getting warning about node16 being deprecated.  The workflow doesn't use node
directly, but through the external actions.  Moving to node20 requires
changing setup-python version; Bhacaz/checkout-files is deprecated and
recommends actions/checkout.

Signed-off-by: Dan Mick <dmick@redhat.com>
16 months agodoc/install: add manual RADOSGW install procedure 55869/head
Zac Dover [Fri, 1 Mar 2024 12:11:14 +0000 (22:11 +1000)]
doc/install: add manual RADOSGW install procedure

Add a manual RADOSGW installation procedure to
doc/install/manual-deployment.rst. This procedure was developed by Janne
Johansson and reported to the ceph-users mailing list on 29 Jan 2024
here: https://lists.ceph.io/hyperkitty/list/ceph-users@ceph.io/message/LB3YRIKAPOHXYCW7MKLVUJPYWYRQVARU/

Co-authored-by: Janne Johansson <icepic.dz@gmail.com>
Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Signed-off-by: Zac Dover <zac.dover@proton.me>
16 months agoMerge pull request #55797 from ajarr/wip-64574
Ilya Dryomov [Fri, 1 Mar 2024 17:56:26 +0000 (18:56 +0100)]
Merge pull request #55797 from ajarr/wip-64574

qa: add diff-continuous and compare-mirror-image tests to rbd and krbd suites respectively

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
16 months agorbd-wnbd: use the right AdminSocket instance 52540/head
Lucian Petrut [Tue, 26 Sep 2023 11:52:31 +0000 (11:52 +0000)]
rbd-wnbd: use the right AdminSocket instance

The rbd-wnbd daemon currently caches one rados context per cluster.
However, it's registering hooks against the global context
admin socket, which won't be available. For this reason,
the "rbd-wnbd stats" command no longer works.

To address this issue, we'll ensure that rbd-wnbd sets command hooks
against the right admin socket instance, leveraging the image
context.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
16 months agorbd-wnbd: adjust admin socket hook to accept image path
Lucian Petrut [Tue, 26 Sep 2023 08:00:19 +0000 (08:00 +0000)]
rbd-wnbd: adjust admin socket hook to accept image path

For each rbd-wnbd mapping we set an admin socket hook that can
be used to retrieve IO stats.

Now that the same daemon is reused for multiple mappings, we need
to distinguish the images when receiving a "stats" request.

For this reason, we'll add the image identifier to "wnbd stats"
admin socket commands.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
16 months agoqa: update rbd-wnbd test, retrying image rm operations
Lucian Petrut [Wed, 2 Aug 2023 09:50:37 +0000 (09:50 +0000)]
qa: update rbd-wnbd test, retrying image rm operations

The "rbd-wnbd unmap" command is currently telling the WNBD driver
to remove the mapping without contacting the rbd-wnbd daemon
and waiting for it to perform its cleanup.

For this reason, attempting to delete the image immediately after
unmapping it can fail due to existing watchers.

As a temporary solution, we'll retry the image remove operation.
At a later time, we'll update the "rbd-wnbd unmap" command to go
through the rbd-wnbd daemon, ensuring that all the necessary
cleanup is performed before returning.

While at it, we're dropping a redundant LOG.error call so that we
won't print expected exceptions.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
16 months agorbd-wnbd: update registry settings handling
Lucian Petrut [Wed, 19 Jul 2023 12:32:40 +0000 (12:32 +0000)]
rbd-wnbd: update registry settings handling

This commit will store the mapping config in the Windows registry
only after initializing the mapping. This ensures that we aren't
replacing the registry settings for already mapped images.

We'll also check if the registry setting was added by us before
cleaning it up.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
16 months agorbd-wnbd: use one daemon process per host
Lucian Petrut [Mon, 12 Jun 2023 13:16:39 +0000 (13:16 +0000)]
rbd-wnbd: use one daemon process per host

We're currently using one rbd-wnbd process per image mapping.
Since OSD connections aren't shared across those processes,
we end up with an excessive amount of TCP sessions, potentially
exceeding Windows limits:
https://ask.cloudbase.it/question/3598/ceph-for-windows-tcp-session-count/

In order to improve rbd-wnbd's scalability, we're going to use
a single process per host (unless "-f" is passed when mapping the
image, in which case the daemon will run as part of the same
process). This allows OSD sessions to be shared across image
mappings.

Another advantage is that the "ceph-rbd" service starts faster,
especially when having a large number of image mappings.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
16 months agorbd-wnbd: introduce RbdMapping class
Lucian Petrut [Mon, 12 Jun 2023 08:00:40 +0000 (08:00 +0000)]
rbd-wnbd: introduce RbdMapping class

We're moving most of the WNBD mapping handling to a separate
class called RbdMapping. This simplifies cleanup and makes it
easier to reuse.

The WnbdHandler class covers WNBD specific operations and IO
callbacks while the RbdMapping wrapper will take care of RBD
operations.

A subsequent change will make use of it while switching from
one process per mapping to a single process per host.

While at it, we're also moving the rbd-wnbd config helpers
to separate files.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
16 months agoMerge pull request #54767 from climb-mountain123/worm_multipart
Casey Bodley [Fri, 1 Mar 2024 17:19:58 +0000 (17:19 +0000)]
Merge pull request #54767 from climb-mountain123/worm_multipart

src/rgw: fix for the multipart interface in the WORM function

Reviewed-by: Casey Bodley <cbodley@redhat.com>
16 months agoMerge pull request #55719 from phlogistonjohn/jjm-teuth-tasks-cephadm-jt
Adam King [Fri, 1 Mar 2024 16:54:14 +0000 (11:54 -0500)]
Merge pull request #55719 from phlogistonjohn/jjm-teuth-tasks-cephadm-jt

qa/tasks/cephadm: add generic templating where subst_vip was used

Reviewed-by: Adam King <adking@redhat.com>
16 months agorgw: remove unused object lock stuff from CompleteMultipart 54767/head
Casey Bodley [Fri, 1 Mar 2024 15:15:27 +0000 (10:15 -0500)]
rgw: remove unused object lock stuff from CompleteMultipart

Signed-off-by: Casey Bodley <cbodley@redhat.com>
16 months agoMerge pull request #55817 from rkhudov/src-test-common-test_hobject-remove-constexpr
Ronen Friedman [Fri, 1 Mar 2024 14:54:37 +0000 (16:54 +0200)]
Merge pull request #55817 from rkhudov/src-test-common-test_hobject-remove-constexpr

src/test/common/test_hobject: remove constexpr

Reviewed-by: Matan Breizman <mbreizma@redhat.com>
Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
16 months agoMerge pull request #55727 from cbodley/wip-64549
Casey Bodley [Fri, 1 Mar 2024 13:28:41 +0000 (13:28 +0000)]
Merge pull request #55727 from cbodley/wip-64549

rgw/auth: do_aws4_auth_completion() catches exceptions

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
16 months agoMerge pull request #55855 from xxhdx1985126/wip-seastore-interface
Yingxin [Fri, 1 Mar 2024 05:48:10 +0000 (13:48 +0800)]
Merge pull request #55855 from xxhdx1985126/wip-seastore-interface

crimson/os/seastore: adjust SeaStore::_omap_set_kvs() params

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
16 months agocrimson/os/seastore: adjust SeaStore::_omap_set_kvs() params 55855/head
Xuehan Xu [Fri, 1 Mar 2024 02:32:32 +0000 (10:32 +0800)]
crimson/os/seastore: adjust SeaStore::_omap_set_kvs() params

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
16 months agoMerge pull request #55834 from zdover23/wip-doc-2024-02-29-dev-internals
zdover23 [Fri, 1 Mar 2024 00:13:46 +0000 (10:13 +1000)]
Merge pull request #55834 from zdover23/wip-doc-2024-02-29-dev-internals

doc/dev: edit internals.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
16 months agoMerge pull request #55835 from zdover23/wip-doc-2024-02-29-glossary-mds
zdover23 [Thu, 29 Feb 2024 23:32:07 +0000 (09:32 +1000)]
Merge pull request #55835 from zdover23/wip-doc-2024-02-29-glossary-mds

doc/glossary: improve "MDS" entry

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
16 months agodoc/glossary: improve "MDS" entry 55835/head
Zac Dover [Thu, 29 Feb 2024 08:08:10 +0000 (18:08 +1000)]
doc/glossary: improve "MDS" entry

Improve the entry for "MDS" in doc/glossary.rst by linking to the
"ceph-mds" man page and mentioning the relationship between clients and
MDS (or MDSes).

Signed-off-by: Zac Dover <zac.dover@proton.me>
16 months agoqa/suites: add diff-continuous and compare-mirror-image tests 55797/head
Ramana Raja [Thu, 29 Feb 2024 17:12:19 +0000 (12:12 -0500)]
qa/suites: add diff-continuous and compare-mirror-image tests

... to rbd and krbd suites respectively.

This allows the compare-mirror-image tests introduced in ea3a567
to be run against various kernel branches, e.g., testing branch.
And allows diff_continuous test in rbd_suite to run against distro
kernel.

Fixes: https://tracker.ceph.com/issues/64574
Signed-off-by: Ramana Raja <rraja@redhat.com>
16 months agoqa/suites/rbd: rename nbd folder to device folder
Ramana Raja [Thu, 29 Feb 2024 16:55:08 +0000 (11:55 -0500)]
qa/suites/rbd: rename nbd folder to device folder

Signed-off-by: Ramana Raja <rraja@redhat.com>
16 months agorgw: don't overwrite target attrs checking mpu info
Matt Benjamin [Wed, 13 Dec 2023 18:53:46 +0000 (13:53 -0500)]
rgw: don't overwrite target attrs checking mpu info

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
16 months agosrc/rgw: fix for the multipart interface in the WORM function
daijufang [Mon, 4 Dec 2023 07:46:29 +0000 (07:46 +0000)]
src/rgw: fix for the multipart interface in the WORM function

1. Save the WORM configuration information in the initialization chunk information for use when merging chunks.
2. Support x-amz-bypass-governance-retention when merging chunks.

Fixes: https://tracker.ceph.com/issues/63724
Signed-off-by: daijufang <daijufang_yewu@cmss.chinamobile.com>
16 months agoMerge pull request #55594 from ifed01/wip-ifed-fix-64443
Igor Fedotov [Thu, 29 Feb 2024 16:07:10 +0000 (19:07 +0300)]
Merge pull request #55594 from ifed01/wip-ifed-fix-64443

test/store_test: fix DeferredWrite test when prefer_deferred_size=0

Reviewed-by: Adam Kupczyk <akupczyk@ibm.com>
16 months agoqa/tasks: replace uses of subst_vip with new templating function 55719/head
John Mulligan [Thu, 22 Feb 2024 18:51:16 +0000 (13:51 -0500)]
qa/tasks: replace uses of subst_vip with new templating function

Signed-off-by: John Mulligan <jmulligan@redhat.com>
16 months agoqa/tasks: add templating functions to cephadm module
John Mulligan [Thu, 22 Feb 2024 18:49:10 +0000 (13:49 -0500)]
qa/tasks: add templating functions to cephadm module

Add functions to cephadm.py that will be later used to template
strings within the yaml files in the cephadm suites. This will be used
to replace the specific subst_vip call with generic calls that let
tests access "any" variables stored on the test ctx.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
16 months agoqa/tasks: fix VIPs log line
John Mulligan [Tue, 20 Feb 2024 15:09:50 +0000 (10:09 -0500)]
qa/tasks: fix VIPs log line

While testing my previous patches were correct I noticed that the string
here was logged exactly as written, and was thus pretty useless.  This
was probably meant to be an f-string. So make it one. Also get rid of
the unnecessary map call, the list and IP address type can repr
themselves just fine IMO.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
16 months agoqa/tasks: make _map_vips private
John Mulligan [Tue, 20 Feb 2024 00:18:08 +0000 (19:18 -0500)]
qa/tasks: make _map_vips private

Nothing outside of vip.py called map_vips, so let us make sure this
is considered a private function and prefix it with the underscore.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
16 months agoqa/tasks: change map_vips to raise exceptions instead of returning None
John Mulligan [Tue, 20 Feb 2024 00:14:52 +0000 (19:14 -0500)]
qa/tasks: change map_vips to raise exceptions instead of returning None

None of the callers of map_vips ever checks for a None return. So
instead of handling any error conditions it would always just blow
up with a semi-obscure TypeError. Convert the function to always
raise an exception (one that tries to breifly explain the condition)
when something goes wrong. I also take the opportunity to make
more clearer logging and reduce an indentation level.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
16 months agoMerge pull request #55534 from clwluvw/cephadm-device-class
Guillaume Abrioux [Thu, 29 Feb 2024 12:47:08 +0000 (13:47 +0100)]
Merge pull request #55534 from clwluvw/cephadm-device-class

cephadm: remove restriction for crush device classes

16 months agodoc/dev: edit internals.rst 55834/head
Zac Dover [Thu, 29 Feb 2024 07:40:57 +0000 (17:40 +1000)]
doc/dev: edit internals.rst

Edit doc/dev/internals.rst. Make a few sentences pithier.

Signed-off-by: Zac Dover <zac.dover@proton.me>
16 months agoMerge pull request #55806 from xxhdx1985126/wip-seastore-clone-attrs-omaps
Yingxin [Thu, 29 Feb 2024 05:49:33 +0000 (13:49 +0800)]
Merge pull request #55806 from xxhdx1985126/wip-seastore-clone-attrs-omaps

crimson/os/seastore: copy attrs and omaps when cloning objects

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
16 months agoMerge pull request #55771 from rhcs-dashboard/e2e-fix
Nizamudeen A [Thu, 29 Feb 2024 05:48:24 +0000 (11:18 +0530)]
Merge pull request #55771 from rhcs-dashboard/e2e-fix

mgr/dashboard: fix roles page for roles without policies

Reviewed-by: afreen23 <NOT@FOUND>
16 months agoMerge pull request #55510 from pcuzner/add-nvmeof-alerts
Aashish Sharma [Thu, 29 Feb 2024 05:06:58 +0000 (10:36 +0530)]
Merge pull request #55510 from pcuzner/add-nvmeof-alerts

ceph-mixin: Update mixin to include alerts for the nvmeof gateway(s)

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
16 months agoMerge pull request #55822 from dmick/wip-release-build-prerelease-update
Dan Mick [Thu, 29 Feb 2024 02:31:30 +0000 (18:31 -0800)]
Merge pull request #55822 from dmick/wip-release-build-prerelease-update

doc/dev/release-process.rst: modify for prerelease mechanism

16 months agodoc/dev/release-process.rst: modify for prerelease mechanism 55822/head
Dan Mick [Wed, 28 Feb 2024 02:59:46 +0000 (18:59 -0800)]
doc/dev/release-process.rst: modify for prerelease mechanism

Signed-off-by: Dan Mick <dmick@redhat.com>
16 months agoMerge pull request #55710 from rhcs-dashboard/nvmeof-prometheus-endpoint
Adam King [Wed, 28 Feb 2024 20:10:21 +0000 (15:10 -0500)]
Merge pull request #55710 from rhcs-dashboard/nvmeof-prometheus-endpoint

cephadm/nvmeof: scrape nvmeof prometheus endpoint

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Paul Cuzner <pcuzner@ibm.com>
16 months agoMerge pull request #55600 from adk3798/no-agent-workunits
Adam King [Wed, 28 Feb 2024 19:34:11 +0000 (14:34 -0500)]
Merge pull request #55600 from adk3798/no-agent-workunits

qa/cephadm: don't test certain workunits with agent

Reviewed-by: John Mulligan <jmulligan@redhat.com>
16 months agoMerge pull request #55588 from adk3798/rm-cluster-podman-auth
Adam King [Wed, 28 Feb 2024 19:32:49 +0000 (14:32 -0500)]
Merge pull request #55588 from adk3798/rm-cluster-podman-auth

cephadm: rm podman-auth.json if removing last cluster

Reviewed-by: John Mulligan <jmulligan@redhat.com>
16 months agoMerge pull request #55788 from rkachach/fix_issue_64596
Adam King [Wed, 28 Feb 2024 19:30:10 +0000 (14:30 -0500)]
Merge pull request #55788 from rkachach/fix_issue_64596

doc: adding documentation for secure monitoring stack configuration

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
16 months agoMerge pull request #55620 from adk3798/cephadm-timeout-cancelled-error
Adam King [Wed, 28 Feb 2024 18:43:12 +0000 (13:43 -0500)]
Merge pull request #55620 from adk3798/cephadm-timeout-cancelled-error

mgr/cephadm: catch CancelledError in asyncio timeout handler

Reviewed-by: John Mulligan <jmulligan@redhat.com>
16 months agoMerge pull request #55650 from adk3798/cephadm-ceph-exporter-sock-dir
Adam King [Wed, 28 Feb 2024 18:41:06 +0000 (13:41 -0500)]
Merge pull request #55650 from adk3798/cephadm-ceph-exporter-sock-dir

cephadm: create ceph-exporter sock dir if it's not present

Reviewed-by: John Mulligan <jmulligan@redhat.com>
16 months agoMerge pull request #55531 from roysahar/roys/wip-nvmeof-new-mount-for-logs
Adam King [Wed, 28 Feb 2024 18:26:45 +0000 (13:26 -0500)]
Merge pull request #55531 from roysahar/roys/wip-nvmeof-new-mount-for-logs

nvmeof: Add mount for log location

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Aviv Caro <Aviv.Caro@ibm.com>
16 months agosrc/test/common/test_hobject: remove constexpr 55817/head
rkhudov [Wed, 28 Feb 2024 17:27:39 +0000 (17:27 +0000)]
src/test/common/test_hobject: remove constexpr

Signed-off-by: rkhudov <rhudov@gmail.com>
16 months agoMerge pull request #55273 from pcuzner/add-nvmeof-to-autotune
Adam King [Wed, 28 Feb 2024 16:42:45 +0000 (11:42 -0500)]
Merge pull request #55273 from pcuzner/add-nvmeof-to-autotune

cephadm: Add nvmeof to autotuner calculation

Reviewed-by: Adam King <adking@redhat.com>
16 months agoMerge pull request #53840 from rhcs-dashboard/add-health-check-haproxy
Adam King [Wed, 28 Feb 2024 16:41:22 +0000 (11:41 -0500)]
Merge pull request #53840 from rhcs-dashboard/add-health-check-haproxy

mgr/cephadm is not defining haproxy tcp healthchecks for Ganesha

Reviewed-by: Adam King <adking@redhat.com>
16 months agoMerge pull request #55812 from ivoalmeida/add-snap-schedule-repeat-frequencies
Pedro Gonzalez Gomez [Wed, 28 Feb 2024 16:35:24 +0000 (17:35 +0100)]
Merge pull request #55812 from ivoalmeida/add-snap-schedule-repeat-frequencies

mgr/dashboard: add snap schedule M, Y frequencies

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
16 months agoMerge PR #55207 into main
Venky Shankar [Wed, 28 Feb 2024 15:43:44 +0000 (21:13 +0530)]
Merge PR #55207 into main

* refs/pull/55207/head:
mds: check file layout in mknod

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
16 months agodoc: adding documentation for secure monitoring stack configuration 55788/head
Redouane Kachach [Tue, 27 Feb 2024 14:52:25 +0000 (15:52 +0100)]
doc: adding documentation for secure monitoring stack configuration
Fixes: https://tracker.ceph.com/issues/64596
Signed-off-by: Redouane Kachach <rkachach@redhat.com>
16 months agoMerge pull request #55794 from kamoltat/wip-ksirivad-ceph-backport-script
Kamoltat (Junior) Sirivadhna [Wed, 28 Feb 2024 14:57:05 +0000 (09:57 -0500)]
Merge pull request #55794 from kamoltat/wip-ksirivad-ceph-backport-script

src/scripts/ceph-backport.sh: Add PR checklist
Reviewed by: Laura Flores <lfores@ibm.com>

16 months agoMerge pull request #55809 from ivoalmeida/fix-snap-schedule-month
Pedro Gonzalez Gomez [Wed, 28 Feb 2024 14:37:14 +0000 (15:37 +0100)]
Merge pull request #55809 from ivoalmeida/fix-snap-schedule-month

mgr/dashboard: fix snap schedule date format

Reviewed-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
16 months agomgr/dashboard: add snap schedule M, Y frequencies 55812/head
Ivo Almeida [Mon, 26 Feb 2024 11:56:18 +0000 (11:56 +0000)]
mgr/dashboard: add snap schedule M, Y frequencies

Added M and Y (month and year) repeat frequencies to snap schedule
create form.

Fixes: https://tracker.ceph.com/issues/64614
Signed-off-by: Ivo Almeida <ialmeida@redhat.com>
16 months agomgr/dashboard: fix snap schedule date format 55809/head
Ivo Almeida [Wed, 28 Feb 2024 09:53:57 +0000 (09:53 +0000)]
mgr/dashboard: fix snap schedule date format

Fixes: https://tracker.ceph.com/issues/64613
Signed-off-by: Ivo Almeida <ialmeida@redhat.com>
16 months agocrimson/os/seastore: copy attrs and omaps when cloning objects 55806/head
Xuehan Xu [Wed, 28 Feb 2024 05:42:04 +0000 (13:42 +0800)]
crimson/os/seastore: copy attrs and omaps when cloning objects

At present, we just copy attrs and omaps one by one, which is not
efficient but very important in terms of functionality especially for
the teuthology tests

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
16 months agomgr/dashboard: fix roles page for roles without policies 55771/head
Nizamudeen A [Tue, 27 Feb 2024 07:18:56 +0000 (12:48 +0530)]
mgr/dashboard: fix roles page for roles without policies

If there is no permission policies attached to a role, it fails the
UI with an exception.

Fixes: https://tracker.ceph.com/issues/64588
Signed-off-by: Nizamudeen A <nia@redhat.com>
16 months agoMerge pull request #55757 from rhcs-dashboard/replace-piechart-panel-plugin-grafana
Nizamudeen A [Wed, 28 Feb 2024 05:42:33 +0000 (11:12 +0530)]
Merge pull request #55757 from rhcs-dashboard/replace-piechart-panel-plugin-grafana

mgr/dashboard: replace piechart plugin charts with native pie chart panel

Reviewed-by: Ankush Behl <cloudbehl@gmail.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
16 months agoMerge PR #52258 into main
Venky Shankar [Wed, 28 Feb 2024 04:02:42 +0000 (09:32 +0530)]
Merge PR #52258 into main

* refs/pull/52258/head:
client: check mds down status bofore getting mds_gid_t from mdsmap
mgr/dashboard: allow sending back error status code fetching clients fails

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
16 months agoMerge pull request #55772 from xxhdx1985126/wip-seastore-attr-related-bug-fixes
Yingxin [Wed, 28 Feb 2024 03:38:16 +0000 (11:38 +0800)]
Merge pull request #55772 from xxhdx1985126/wip-seastore-attr-related-bug-fixes

crimson/os/seastore: two attrs related bug fixes

Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
16 months agoMerge pull request #55782 from zdover23/wip-doc-2024-02-27-rados-operations-add-or...
zdover23 [Tue, 27 Feb 2024 23:42:10 +0000 (09:42 +1000)]
Merge pull request #55782 from zdover23/wip-doc-2024-02-27-rados-operations-add-or-rm-mons

doc/rados: add "change public network" procedure

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
16 months agoMerge pull request #53222 from myoungwon/wip-62167
Kamoltat (Junior) Sirivadhna [Tue, 27 Feb 2024 20:55:12 +0000 (15:55 -0500)]
Merge pull request #53222 from myoungwon/wip-62167

osd: check if adjacent clones are unreadable when rollback is called.
Reviewed-by: athanatos
16 months agoMerge pull request #55147 from Matan-B/wip-matanb-skip-past-interval-cheeck
Kamoltat (Junior) Sirivadhna [Tue, 27 Feb 2024 20:54:45 +0000 (15:54 -0500)]
Merge pull request #55147 from Matan-B/wip-matanb-skip-past-interval-cheeck

osd/PeeringState: introduce osd_skip_check_past_interval_bounds
Reviewed-by athanatos

16 months agoMerge pull request #55227 from Svelar/wip-ci-clang
Kamoltat (Junior) Sirivadhna [Tue, 27 Feb 2024 20:54:01 +0000 (15:54 -0500)]
Merge pull request #55227 from Svelar/wip-ci-clang

ARM CI: clang should >= 12 for supporting C++20
Reviewed by: Laura Flores <lajefl@gmail.com>

16 months agosrc/scripts/ceph-backport.sh: Add PR checklist 55794/head
Kamoltat [Tue, 27 Feb 2024 19:21:57 +0000 (19:21 +0000)]
src/scripts/ceph-backport.sh: Add PR checklist

Signed-off-by: Kamoltat <ksirivad@redhat.com>