]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Patrick Seidensal [Wed, 5 Aug 2020 14:47:13 +0000 (16:47 +0200)]
mgr/cephadm: use fixed config file path as argument
Fixes other alertmanager containers which do not default to look for a
configuration file in `/etc/alertmanager/alertmanager.yml`.
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
(cherry picked from commit
cdd0ba13a5109e4319ffdaff8e8a17212e78dd15 )
Patrick Seidensal [Thu, 30 Jul 2020 09:37:46 +0000 (11:37 +0200)]
cephadm: fix custom alertmanager
When alertmanager image has been customized and does not have a
/etc/alertmanager directory, the uid/gid extraction fails. This change
assumes that instead the /etc/prometheus directory exists and can be
used to extract the uid and gid.
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
(cherry picked from commit
d218de4cde8d37f7f69a2a2a9474c0ac9afca41d )
Juan Miguel Olmo Martínez [Wed, 19 Aug 2020 10:11:28 +0000 (12:11 +0200)]
cephadm: Allow users to use a custom dashboard ssl port
This modification allows the user to create a new bootstrap cluster using a predefined SSl port for the dashboard.
If firewall is enabled, any new manager daemon deployed in new hosts will take care of open the required ports for all the services enabled in the manager.
Two new parameters for cephadm tool (aka binary or standalone):
Command bootstrap:
--ssl-dashboard-port SSL_DASHBOARD_PORT
Port number used to connect with dashboard using SSL
Command deploy:
--tcp-ports TCP_PORTS
List of tcp ports to open in the host firewall
Signed-off-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
(cherry picked from commit
08c4a53e79a7ed63912f765fbbf86e3364d8f9be )
Adam King [Wed, 5 Aug 2020 21:04:46 +0000 (17:04 -0400)]
mgr/cephadm: mgr or mds scale-down should prefer non-active daemons
When removing daemons during a mgr/mds scale-down, prefer to remove
standby daemons so the active daemon is not killed
Fixes: https://tracker.ceph.com/issues/44252
Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit
0fbf12c9d17a98bf4315b0bff81c0aeb38458e0f )
Daniel-Pivonka [Tue, 18 Aug 2020 20:46:35 +0000 (16:46 -0400)]
doc/cephadm: remove ssh user limitation troubleshooting
Signed-off-by: Daniel-Pivonka <dpivonka@redhat.com>
(cherry picked from commit
b59b480c3d6f0bcceff155c02770acb2ea842561 )
Joshua Schmid [Mon, 10 Aug 2020 11:09:25 +0000 (13:09 +0200)]
python-common: ban paths from non-data-devices
Signed-off-by: Joshua Schmid <jschmid@suse.de>
(cherry picked from commit
ac5839b9f5d4ff2c4269b9da0314837cdafa5360 )
Joshua Schmid [Tue, 11 Aug 2020 14:47:36 +0000 (16:47 +0200)]
docs/mgr: remove traces of ceph orch osd spec
Signed-off-by: Joshua Schmid <jschmid@suse.de>
(cherry picked from commit
f8b8e6f22900848ed12d166592f504e2d6b70554 )
Joshua Schmid [Tue, 11 Aug 2020 14:47:15 +0000 (16:47 +0200)]
mgr/orchestrator: remove traces of ceph orch osd spec
Signed-off-by: Joshua Schmid <jschmid@suse.de>
(cherry picked from commit
4109e981d969c5c61f6dbf66e1e8c3c17724f5f8 )
Joshua Schmid [Tue, 11 Aug 2020 07:53:23 +0000 (09:53 +0200)]
mgr/cephadm: add default osdspec_affinity to module fixture
Signed-off-by: Joshua Schmid <jschmid@suse.de>
(cherry picked from commit
eb1b37cfc34db90db86ef8449f645d5a192656b9 )
Joshua Schmid [Mon, 10 Aug 2020 10:38:00 +0000 (12:38 +0200)]
mgr/cephadm: save osdspec_affinity to dd store
Signed-off-by: Joshua Schmid <jschmid@suse.de>
(cherry picked from commit
0feae8893364729f2e9b9ee9bc53b6eba66cbc10 )
Joshua Schmid [Wed, 12 Aug 2020 10:23:59 +0000 (12:23 +0200)]
mgr/cephadm: add by_type daemon retrieval method
Signed-off-by: Joshua Schmid <jschmid@suse.de>
(cherry picked from commit
1f8965f8cc48c9e901f3531259d446e3d9211135 )
Sebastian Wagner [Mon, 17 Aug 2020 11:07:03 +0000 (13:07 +0200)]
mgr/cephadm: also mock `ceph vesions`
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
1c8cb204ffdb654a2b954a3d39a1c1712c151684 )
Sebastian Wagner [Mon, 17 Aug 2020 10:34:02 +0000 (12:34 +0200)]
mgr/cephadm: add test_upgrade.py
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
d71f3b42738eef2d234ec752bc27d3e8e53e744c )
Sebastian Wagner [Mon, 17 Aug 2020 09:11:21 +0000 (11:11 +0200)]
mgr/cephadm/tests: move with_service to fixtures.py
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
50ecd89d790fb33a7dc297ae1eeb7751dd58cba2 )
Sebastian Wagner [Fri, 7 Aug 2020 14:21:18 +0000 (16:21 +0200)]
pybind/mgr: Also mock the config store in pytest
This will be used to dry-run mgr/cephadm/upgrade.py
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
f44c1e71033f8f62e3bca17d274049b858e7b015 )
Michael Fritch [Thu, 6 Aug 2020 21:39:05 +0000 (15:39 -0600)]
mgr/cephadm: check existance of the RADOS pool
Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit
4419c18f9fb961b54715c355194b85e57804adec )
Michael Fritch [Fri, 7 Aug 2020 00:24:56 +0000 (18:24 -0600)]
mgr/cephadm: convert py2 -> py3 type checking
Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit
e05bf091724e318b547967c6ec81ed5cf5807b16 )
Michael Fritch [Fri, 7 Aug 2020 00:30:24 +0000 (18:30 -0600)]
mgr/cephadm: clean-up nfs service module imports
Signed-off-by: Michael Fritch <mfritch@suse.com>
(cherry picked from commit
4ad0636e81d1005c116ef6aae211e6fcead23ed4 )
Varsha Rao [Fri, 31 Jul 2020 10:27:28 +0000 (15:57 +0530)]
qa/tasks/cephfs/nfs: Add tests for cluster config set and reset
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
bba2d66176fa30b934aaa6fb7670cd0fecc0af78 )
Varsha Rao [Wed, 29 Jul 2020 13:48:06 +0000 (19:18 +0530)]
doc/cephfs/nfs: Update the doc about 'reset' and 'set' config interfaces
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
287da119215671fe24b371f9df01059569db4b3e )
Varsha Rao [Mon, 27 Jul 2020 12:56:45 +0000 (18:26 +0530)]
mgr/volumes/nfs: Add interface for adding user defined configuration
Code related to creating and removing rados object has been rearranged abd
modified. This patch introduces interface to set and reset user config.
nfs cluster config set <clusterid> -i <config_file>
nfs cluster config reset <clusterid>
Fixes: https://tracker.ceph.com/issues/45747
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
9535154794c1d6d116b81c1317c48ba1aecd7581 )
Sebastian Wagner [Tue, 4 Aug 2020 15:49:01 +0000 (17:49 +0200)]
mgr/orch: _interface.py: PEP8tify
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
b7caeed9b694a3191f06d96339a81f5d99b0ab88 )
Sebastian Wagner [Tue, 4 Aug 2020 15:47:05 +0000 (17:47 +0200)]
mgr/orch: _interface.py: Convert type annotations to py3
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
0bb09324e7b4cffc957a89c3c5188bdb823176aa )
Sebastian Wagner [Mon, 27 Jul 2020 14:44:33 +0000 (16:44 +0200)]
doc/cephadm: Remove shell alias
Turns out, the alias doesn't work for files.
Fixes: https://tracker.ceph.com/issues/46701
Fixes:
```
$ ceph orch apply -i myfile.yaml
ERROR: no such file or directory: myfile.yaml
```
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
Signed-off-by: Zac Dover <zac.dover@gmail.com>
(cherry picked from commit
75baae35288cca79a6e958c3370dba3caab813f8 )
Sebastian Wagner [Fri, 7 Aug 2020 09:24:52 +0000 (11:24 +0200)]
mgr/cephadm: _get_config_and_keyring: `host` is required now
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
6105d1ba4c94e1278bf38896ad467a5cf7e5b92b )
Sebastian Wagner [Thu, 6 Aug 2020 15:44:00 +0000 (17:44 +0200)]
mgr/cephadm: Some more typing
Make sure we don't mix daemon names, config entities and
auth entities. Cause all of them don't mix well together.
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
01e2dafb6e5b7cf3f26a63c2c66d346a1ab0bffa )
Ricardo Marques [Thu, 6 Aug 2020 09:47:29 +0000 (10:47 +0100)]
mgr/cephadm: Prevent unnecessary SSH reconfiguration
When 'set-user', 'set-pub-key' or 'set-priv-key' are called two
times with the same value, we can ignore the second call.
Signed-off-by: Ricardo Marques <rimarques@suse.com>
(cherry picked from commit
4cbf587b686d3b539f98b5c4cab1f0320efbe68c )
Varsha Rao [Thu, 30 Jul 2020 08:27:26 +0000 (13:57 +0530)]
mgr/orchestrator: Update service_action() docstring
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
4d6365b6a9a9bda4375b84ad3661e43e5de9abf8 )
Sebastian Wagner [Wed, 5 Aug 2020 10:50:01 +0000 (12:50 +0200)]
mgr/cephadm: module.py: PEP8tify `ceph orch * ls`
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
be3f513239d45feb8557f30e05fc562ce9594f51 )
Sebastian Wagner [Tue, 4 Aug 2020 12:01:49 +0000 (14:01 +0200)]
mgr/cephadm: Make `ceph orch * --refresh` asynchronous
There is just no way we can allow those calls to be synchornous:
* All CLI commands are blocked, till the refresh completes.
* ^C doesn't help at all, as it just kills the client
Therefore they have to be scheduled in the bg.
Fixes: https://tracker.ceph.com/issues/46813
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
7189575404262c0fbb4717f824c022d48ab58fcd )
Sebastian Wagner [Mon, 3 Aug 2020 09:35:41 +0000 (11:35 +0200)]
mgr/cephadm: Refactor upgrade to call _daemon_action with new image
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
289f37d29674b9a26415147a964b1fcb26a7eaf7 )
Sebastian Wagner [Fri, 31 Jul 2020 16:02:34 +0000 (18:02 +0200)]
mgr/cephadm, Add --image to `ceph orch daemon redeploy <what>`
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
9d0480d18b6f30f929e8599ee8b32fdc6f91aa27 )
Daniel-Pivonka [Wed, 5 Aug 2020 21:50:12 +0000 (17:50 -0400)]
mgr/cephadm: rgw update period after realm, zone creation
Signed-off-by: Daniel-Pivonka <dpivonka@redhat.com>
(cherry picked from commit
70b11a1a83d2d03062d7a2db81de8675b2f0b0f4 )
Sebastian Wagner [Tue, 4 Aug 2020 09:13:49 +0000 (11:13 +0200)]
mgr/cephadm: PEP8tify upgrade.py
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
ffc1fd65c6b82a5565953f0da184a0b218d7ca24 )
Sebastian Wagner [Mon, 3 Aug 2020 13:51:53 +0000 (15:51 +0200)]
mgr/cephadm: Add UpgradeState class
My resons are:
* This increase mypy coverage
* Makes the code more discoverable.
* Allowes us to have intelligent UpgradeState properties
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
3072b1d8cbc8b5ac83697007767e12ff805a693d )
Tim Serong [Wed, 5 Aug 2020 06:34:20 +0000 (16:34 +1000)]
cephadm: don't add `ceph-volume lvm activate` for adopted simple OSDs
This changes the logic in deploy_daemon_units() to add either `chown` calls
for simple (ceph-disk style) OSDs, or to add `ceph-volume lvm activate` calls
for LVM OSDs, rather than always adding both. When I was working on
https://github.com/ceph/ceph/pull/34703, I'd originally added an "osd_simple"
flag to figure out what type of OSD was being adopted/deployed, but passing
that around was kinda ugly, so was removed from that PR. This time around
I'm checking if /etc/ceph/osd/$OSD_ID-$OSD_FSID.json.adopted-by-cephadm
exists, which seems pretty safe IMO. My only concern with this method is:
what happens if someone adopts a simple OSD, then later wants to migrate it
to LVM. Presumably that's a destroy and recreate, keeping the same OSD ID?
If that's true, then the JSON file probably still exists, so the subsequent
create will do the wrong thing, i.e. will add `chown` calls, not `ceph-volume
lvm activate` calls. Any/all feedback appreciated...
Fixes: https://tracker.ceph.com/issues/46833
Signed-off-by: Tim Serong <tserong@suse.com>
(cherry picked from commit
8112949851eb4849f0d559a118739d92051dcf8e )
Sebastian Wagner [Thu, 30 Jul 2020 11:47:26 +0000 (13:47 +0200)]
mgr/caphadm/tests: Add `test_daemon_check_post`
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
7d3deb2e23266ee5e206d76bb4ce33b436ac5ec2 )
Sebastian Wagner [Thu, 30 Jul 2020 11:38:45 +0000 (13:38 +0200)]
mgr/cephadm: Don't run `daemons_post` if _create_daemon fail
We can't run daemon_check_post for the type, if a single daemon failed.
Mainly cause `daemon_check_post` is run by service type.
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
fdaa00977e3d9ee3bd1c6f5be69a0e93d6825136 )
Sebastian Wagner [Wed, 29 Jul 2020 12:23:06 +0000 (14:23 +0200)]
mgr/cephadm: Add test_daemon_action_fail
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
f500b8fc747f1767a31e54e6fb4a9a596889d1a1 )
Sebastian Wagner [Wed, 29 Jul 2020 12:09:00 +0000 (14:09 +0200)]
mgr/cephadm/tests: Split `test_daemon_action`
Into:
* `test_list_daemons`
* `test_daemon_action` (now without listing daemons)
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
6fd599bd4d66c290ba94accd76c869a50a9dd5ce )
Sebastian Wagner [Wed, 29 Jul 2020 10:55:04 +0000 (12:55 +0200)]
mgr/cephadm: guard _check_daemons
Continue with other daemons, if one fails
Fixes: https://tracker.ceph.com/issues/46748
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
313e091fee6b3399852683575f7431c1ba235133 )
Sebastian Wagner [Tue, 4 Aug 2020 10:25:33 +0000 (12:25 +0200)]
mgr/cephadm: PEP8tify
Those files should generate fewer conflicts for now.
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
(cherry picked from commit
17db7ba7dfb5ad617ec2b3f81a37c6fdc69f9222 )
Volker Theile [Thu, 30 Jul 2020 12:24:34 +0000 (14:24 +0200)]
mgr/cephadm: Enhance AlertManagerSpec to allow adding additional webhook receiver URLs
Fixes: https://tracker.ceph.com/issues/46775
Signed-off-by: Volker Theile <vtheile@suse.com>
(cherry picked from commit
4b87eeb97861929130c4aa7e2c99e29d2a1652ac )
Lenz Grimmer [Fri, 21 Aug 2020 09:13:32 +0000 (11:13 +0200)]
Merge pull request #36260 from rhcs-dashboard/wip-46672-octopus
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:42:51 +0000 (14:42 -0700)]
Merge pull request #36655 from smithfarm/wip-46968-octopus
octopus: rgw: introduce safe user-reset-stats
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:42:17 +0000 (14:42 -0700)]
Merge pull request #36654 from smithfarm/wip-46966-octopus
octopus: rgw: fix double slash (//) killing the gateway
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:41:43 +0000 (14:41 -0700)]
Merge pull request #36653 from smithfarm/wip-46955-octopus
octopus: rgw: fix shutdown crash in RGWAsyncReadMDLogEntries
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:40:48 +0000 (14:40 -0700)]
Merge pull request #36652 from smithfarm/wip-46949-octopus
octopus: cls/rgw: preserve olh entry's name on last unlink
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:39:54 +0000 (14:39 -0700)]
Merge pull request #36651 from smithfarm/wip-46938-octopus
octopus: qa/tasks/ragweed: always set ragweed_repo
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:38:45 +0000 (14:38 -0700)]
Merge pull request #36650 from smithfarm/wip-46929-octopus
octopus: rgw: Empty reqs_change_state queue before unregistered_reqs
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:37:58 +0000 (14:37 -0700)]
Merge pull request #36649 from smithfarm/wip-46640-octopus
octopus: rgw: add abort multipart date and rule-id header to init multipart upload response
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:37:14 +0000 (14:37 -0700)]
Merge pull request #36648 from smithfarm/wip-46593-octopus
octopus: rgw: add negative cache to the system object
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:36:31 +0000 (14:36 -0700)]
Merge pull request #36647 from smithfarm/wip-46518-octopus
octopus: rgw: fix boost::asio::async_write() does not return error...
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:35:31 +0000 (14:35 -0700)]
Merge pull request #36646 from smithfarm/wip-46510-octopus
octopus: rgw: Adding data cache and CDN capabilities
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:34:41 +0000 (14:34 -0700)]
Merge pull request #36645 from smithfarm/wip-46475-octopus
octopus: rgw/iam: correcting the result of get role policy.
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:32:10 +0000 (14:32 -0700)]
Merge pull request #36636 from smithfarm/wip-46953-octopus
octopus: rgw: policy: reuse eval_principal to evaluate the policy principal
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:31:34 +0000 (14:31 -0700)]
Merge pull request #36026 from smithfarm/wip-46457-octopus
octopus: selinux: allow ceph_t amqp_port_t:tcp_socket
Reviewed-by: Kefu Chai <kchai@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:29:57 +0000 (14:29 -0700)]
Merge pull request #36018 from smithfarm/wip-45922-octopus
octopus: rgw: lc: add lifecycle perf counters
Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 21:26:51 +0000 (14:26 -0700)]
Merge pull request #35929 from smithfarm/wip-46343-octopus
octopus: rgw: orphan-list timestamp fix
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 14:05:40 +0000 (07:05 -0700)]
Merge pull request #36638 from smithfarm/wip-46945-octopus
octopus: librbd: global and pool-level config overrides require image refresh to apply
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
Yuri Weinstein [Tue, 18 Aug 2020 14:04:56 +0000 (07:04 -0700)]
Merge pull request #36414 from shyukri/wip-46322-octopus
octopus: osd/OSDCap: rbd profile permits use of "rbd_info"
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 14:04:25 +0000 (07:04 -0700)]
Merge pull request #36411 from shyukri/wip-46087-octopus
octopus: mgr/prometheus: automatically discover RBD pools for stats gathering
Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 14:03:50 +0000 (07:03 -0700)]
Merge pull request #36331 from dillaman/wip-librbd-aio-completion-octopus
octopus: librbd: potential race conditions handling API IO completions
Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
Yuri Weinstein [Tue, 18 Aug 2020 13:58:32 +0000 (06:58 -0700)]
Merge pull request #36660 from smithfarm/wip-46721-octopus
octopus: rbd: immutable-object-cache: fixed crashes on start up
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 13:58:08 +0000 (06:58 -0700)]
Merge pull request #36659 from smithfarm/wip-46719-octopus
octopus: rbd: librbd: don't resend async_complete if watcher is unregistered
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 13:57:38 +0000 (06:57 -0700)]
Merge pull request #36658 from smithfarm/wip-46711-octopus
octopus: rbd: librbd: flush all queued object IO from simple scheduler
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Mykola Golub <mgolub@mirantis.com>/
Yuri Weinstein [Tue, 18 Aug 2020 13:56:56 +0000 (06:56 -0700)]
Merge pull request #36657 from smithfarm/wip-46309-octopus
octopus: tests/rbd_mirror: fix race on test shut down
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 13:56:07 +0000 (06:56 -0700)]
Merge pull request #36656 from smithfarm/wip-46150-octopus
octopus: rbd: librbd: race when disabling object map with overlapping in-flight writes
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Yuri Weinstein [Tue, 18 Aug 2020 13:55:35 +0000 (06:55 -0700)]
Merge pull request #36662 from smithfarm/wip-46595-octopus
octopus: crush/CrushWrapper: rebuild reverse maps after rebuilding crush map
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Lenz Grimmer [Mon, 17 Aug 2020 15:00:26 +0000 (17:00 +0200)]
Merge pull request #35772 from s0nea/wip-46205-octopus
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Lenz Grimmer [Mon, 17 Aug 2020 13:32:27 +0000 (15:32 +0200)]
Merge pull request #36350 from s0nea/wip-46751-octopus
octopus: mgr/dashboard: Add hosts page unit tests
Reviewed-by: Kiefer Chang <kiefer.chang@suse.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Jason Dillaman [Thu, 7 May 2020 20:25:50 +0000 (16:25 -0400)]
librbd: generic helper for tracking in-flight IO and managing flush requests
Layers that potentially queue IOs but not all IOs will need to track all
in-flight IOs to properly ensure that a flush cannot complete while
older IO is still stuck in a queue.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
728057e492a697191d72049ce64b337fa4c80078 )
Conflicts:
src/librbd/CMakeLists.txt
- no "io/ImageDispatch.cc" in octopus
Nathan Cutler [Sat, 15 Aug 2020 13:41:31 +0000 (15:41 +0200)]
Merge pull request #36416 from shyukri/wip-46639-octopus
octopus: doc/rbd: add rbd-target-gw enable and start
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Jason Dillaman [Tue, 14 Jul 2020 22:49:30 +0000 (18:49 -0400)]
crush/CrushWrapper: rebuild reverse maps after rebuilding crush map
The Objecter will crash when localized reads are enabled and two threads
attempt to rebuild the (invalidated) reverse maps concurrently. This
should address the issue for the Objecter use-case without the need to
add additional locking.
Fixes: https://tracker.ceph.com/issues/44311
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
8b866794f5b3674c5e3ad9adceb5e3230d55a0e0 )
Jason Dillaman [Fri, 17 Jul 2020 14:27:14 +0000 (10:27 -0400)]
doc/rbd: add note for the immutable-object-cache domain socket
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
d44cb50670c20613c63c249595e43650ec29b13a )
Jason Dillaman [Mon, 20 Jul 2020 16:57:57 +0000 (12:57 -0400)]
common/options: changed default immutable object cache path
Switch the default path for the immutable object cache from "/tmp" to
"/tmp/ceph_immutable_object_cache" to prevent the deletion of all
files in the "/tmp" directory and sub-directories for unconfigured
daemons.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
eeecc1860f81129347c648a6cbd4a8a78ff4c636 )
Jason Dillaman [Fri, 17 Jul 2020 14:25:20 +0000 (10:25 -0400)]
immutable-object-cache: fix error handling during start up
Previously the daemon would crash if it couldn't remove all the
files from the specified cache directory. It would also crash if
it could not access its specified domain socket file.
Fixes: https://tracker.ceph.com/issues/45169
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
f6dcb6c3dbd45574e1a7ca3f5e8f1f52a0d7ae1e )
Mykola Golub [Thu, 9 Jul 2020 13:36:39 +0000 (14:36 +0100)]
librbd: properly unregister failed async_complete request
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit
143179ffa92ce64d89fc98d6d6c9e7a3722a12f2 )
Mykola Golub [Wed, 8 Jul 2020 15:04:12 +0000 (16:04 +0100)]
librbd: don't resend async_complete if watcher is unregistered
Also wait for pending async_complete after unregistering the
watcher.
Fixes: https://tracker.ceph.com/issues/45268
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit
5b6804e19a8f524ab1528a638eb286482e12fe48 )
Jason Dillaman [Wed, 22 Jul 2020 15:25:56 +0000 (11:25 -0400)]
librbd: flush all queued object IO from simple scheduler
Normally IO is tracked via the AioCompletion's async_op but the
scheduler will "complete" writes while the IO might be still
executing. Therefore, prior to shutting down this dispatch layer
we need to wait for all IO to complete.
Fixes: https://tracker.ceph.com/issues/46668
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
75ff8fd14dccaa7d2f11ba8a561ad3c0f410585c )
Mykola Golub [Thu, 18 Jun 2020 13:47:59 +0000 (14:47 +0100)]
test/rbd_mirror: fix race on test shut down
in TestMockImageReplayerSnapshotReplayer.UnlinkRemoteSnapshot
Fixes: https://tracker.ceph.com/issues/46076
Signed-off-by: Mykola Golub <mgolub@suse.com>
(cherry picked from commit
c214785fa59ace2eb68a54b4354864ff707335ca )
Jason Dillaman [Thu, 18 Jun 2020 19:20:40 +0000 (15:20 -0400)]
librbd: race when disabling object map with overlapping in-flight writes
The block guard that protects against overlapping updates to the object
map needs to be flushed prior to closing the object map instance.
Fixes: https://tracker.ceph.com/issues/46083
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit
ee69323cd27263cb7f9dd97dcbfb1c36f1cc0837 )
Matt Benjamin [Thu, 30 Apr 2020 22:59:11 +0000 (18:59 -0400)]
rgw: introduce safe user-reset-stats
Defines cls_user_reset_stats2, a value-returning cls operation
that sets new stats via progressive calls with an accumulator,
avoiding risk of excessive call runtime.
Fixes: https://tracker.ceph.com/issues/41080
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit
25a82ed3795ecf6395e3d16fcbb4c29e478aa065 )
Yuval Lifshitz [Thu, 21 May 2020 09:52:44 +0000 (12:52 +0300)]
rgw/tools: add flags to rgw_rados_operate api
currently flags are hardcoded to zero. this prevents some usecases, e.g.
passing OPERATION_RETURNVEC flag
Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
(cherry picked from commit
6474b77e37fd4da69b4bb5b2f171f3afa16898eb )
root [Fri, 26 Jun 2020 10:44:45 +0000 (12:44 +0200)]
rgw: fix double slash (//) killing the gateway
When a bucket is inialized as a static website, a curl request on the bucket with double slash kills the gateway.
The problem is on the URL handling of the subdirectory, which tries to remove the last slash of any URL, so when only / is given as a sub-directory, this results to an empty string.
Fixes: https://tracker.ceph.com/issues/41225
Signed-off-by: Theofilos Mouratidis <t.mour@cern.ch>
(cherry picked from commit
626330c504b1af8393986bd0553786c3031422cd )
Casey Bodley [Fri, 29 May 2020 16:31:16 +0000 (12:31 -0400)]
rgw: fix shutdown crash in RGWAsyncReadMDLogEntries
RGWAsyncReadMDLogEntries must not store pointers into coroutine memory,
because it's not guaranteed to outlive our call. store these by-value
instead, and have RGWReadMDLogEntriesCR::request_complete() copy/move
them back on completion
Fixes: https://tracker.ceph.com/issues/45771
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit
13bf06dbe961132ca99f470ac026674e45fecc38 )
Casey Bodley [Fri, 10 Jul 2020 16:38:06 +0000 (12:38 -0400)]
cls/rgw: preserve olh entry's name on last unlink
When rgw_bucket_unlink_instance removes the last instance of a name, it
also clears the value of rgw_bucket_olh_entry.key. However, bucket index
resharding uses this key when choosing its shard placement, so an empty
key causes all of these olh entries to be misplaced in shard 0. After
reshard, all of the olh recovery/cleanup logic would be sent to the
correct shard, and these misplaced olh entries would never be cleaned
up.
Preserving the key's name on last unlink allows the olh entry to be
resharded correctly and cleaned up normally.
Fixes: https://tracker.ceph.com/issues/46456
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit
acf8f3cad9f55e34c703fdaef684853a3fb3b369 )
Kefu Chai [Thu, 30 Jul 2020 08:45:40 +0000 (16:45 +0800)]
qa/tasks/ragweed: always set ragweed_repo
* extract get_ragweed_branch() out of download() task, for better
readablity.
* use a loop for retry when the first clone fails
* drop the `raise ValueError()` clause as it never happens. we could use
an assert() here, but i don't think it is necessary anyway.
* use sh() instead of run() for better readablity.
* always set ragweed_repo. before this change this variable is
unbounded if `force-branch` is set.
Fixes: https://tracker.ceph.com/issues/46771
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit
87e61e1d6ece9874cd8776dde92ca815e8002166 )
Soumya Koduri [Tue, 16 Jun 2020 12:40:08 +0000 (18:10 +0530)]
rgw: Empty reqs_change_state queue before unregistered_reqs
In RGWHTTPManager::manage_pending_request(), before unregistering
or unlinking the http requests, empty the reqs_change_state list
to avoid use after free.
Signed-off-by: Soumya Koduri <skoduri@redhat.com>
(cherry picked from commit
b210437e5f28d53e770dd6938ce3c4be443da055 )
zhangshaowen [Thu, 7 May 2020 11:18:14 +0000 (19:18 +0800)]
rgw: abort multipart date should be round up to midnight next day like expiration one
Signed-off-by: zhangshaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit
c314d322f8a0fc628f9d19b69491b54a82c069f0 )
zhang Shaowen [Fri, 18 Oct 2019 06:25:19 +0000 (14:25 +0800)]
rgw: use std::optional instead of boost::optional
Signed-off-by: zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit
7c85903cbe4321a6a8dff5254225b33e05e3bbd5 )
zhang Shaowen [Tue, 8 Oct 2019 06:15:56 +0000 (14:15 +0800)]
rgw: add abort multipart date and rule-id header to init multipart upload response.
Signed-off-by: zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit
4bb2a0164be3dd69e28972bcb39f0892a4360bba )
Or Friedmann [Wed, 24 Jun 2020 12:55:20 +0000 (15:55 +0300)]
rgw: add negative cache to the system object
add negative cache to the system object
Signed-off-by: Or Friedmann <ofriedma@redhat.com>
Fixes: https://tracker.ceph.com/issues/45816
(cherry picked from commit
0900bd8cf90babd6fafcb398854a4ddb071a27ee )
Mark Kogan [Thu, 2 Jul 2020 16:37:43 +0000 (19:37 +0300)]
rgw: fix boost::asio::async_write() does not return error...
although remote has closed the connection
Fixes: https://tracker.ceph.com/issues/46332
Signed-off-by: Mark Kogan <mkogan@redhat.com>
(cherry picked from commit
c997eb6ad77deebd8e903fe84da7af6fcf50d528 )
ofriedma [Wed, 20 May 2020 16:07:03 +0000 (19:07 +0300)]
rgw: fix nginx-rgw docs
Signed-off-by: Or Friedmann <ofriedma@redhat.com>
Signed-off-by: Mark Kogan <mkogan@redhat.com>
(cherry picked from commit
d73b879ac169c46f2dfeba0f4ca7f3a8af272a53 )
Or Friedmann [Mon, 18 May 2020 15:15:25 +0000 (18:15 +0300)]
rgw: create rgw-cache example directory
Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit
94c81f3094222d49a9c12d088667f58926b1cbf5 )
Or Friedmann [Sun, 17 May 2020 13:46:12 +0000 (16:46 +0300)]
rgw: fix nginx cache docs
Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit
892e9fa5fe2a8759da50e62d48632dff6ad81c30 )
Or Friedmann [Wed, 13 May 2020 10:04:41 +0000 (13:04 +0300)]
use ceph::split
Signed-off-by: Or Friedmann <orfriedma@redhat.com>
(cherry picked from commit
737e1aa95686d8c4a429cac9ea5f388bcda04bac )
Or Friedmann [Tue, 12 May 2020 15:20:34 +0000 (18:20 +0300)]
rgw: fixes to override_range_hdr
Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit
e6e1dd868140e7ed356e007d4bf95a5bd2415035 )
Or Friedmann [Tue, 12 May 2020 08:10:34 +0000 (11:10 +0300)]
fix docs
Signed-off-by: Or Friedmann <ofriedma@redhat.com>
(cherry picked from commit
a4ae27242a2426cefd602ba053ae565e3c96ff0b )