]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
3 years agoRevert "Revert "pacific: mgr, mgr/prometheus: Fix regression with prometheus metrics"" revert-46921-revert-46429-wip-55309-pacific
Prashant D [Fri, 19 Aug 2022 04:18:17 +0000 (14:18 +1000)]
Revert "Revert "pacific: mgr, mgr/prometheus: Fix regression with prometheus metrics""

3 years agoMerge pull request #46901 from dparmar18/wip-56112-pacific
Yuri Weinstein [Tue, 16 Aug 2022 14:32:13 +0000 (07:32 -0700)]
Merge pull request #46901 from dparmar18/wip-56112-pacific

pacific: qa/cephfs: fallback to older way of get_op_read_count

Reviewed-by: Kotresh HR <khiremat@redhat.com>
3 years agoMerge pull request #47321 from adk3798/wip-56504-pacific
zdover23 [Mon, 15 Aug 2022 15:31:49 +0000 (01:31 +1000)]
Merge pull request #47321 from adk3798/wip-56504-pacific

pacific: doc/cephadm/services: the config section of service specs

Reviewed-by: Zac Dover <zac.dover@gmail.com>
3 years agoMerge pull request #47369 from kotreshhr/wip-56978-pacific
Yuri Weinstein [Mon, 15 Aug 2022 15:21:51 +0000 (08:21 -0700)]
Merge pull request #47369 from kotreshhr/wip-56978-pacific

pacific: mgr/volumes: Fix subvolume creation in FIPS enabled system.

Reviewed-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #47587 from zdover23/wip-doc-2022-08-15-backport-47580-to-pacific
zdover23 [Mon, 15 Aug 2022 15:18:44 +0000 (01:18 +1000)]
Merge pull request #47587 from zdover23/wip-doc-2022-08-15-backport-47580-to-pacific

pacific: doc/rados/operations: add prompts to operating.rst

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agodoc/rados/operations: add prompts to operating.rst 47587/head
Zac Dover [Sat, 13 Aug 2022 23:14:56 +0000 (09:14 +1000)]
doc/rados/operations: add prompts to operating.rst

This commit adds ".. prompt:: bash $"-style prompts to operating.rst.
This brings this file up to the standard established in 2020 when
Kefu added support for the ".. prompt::" directive.

This commit is a part of an initiative to modernize the presentation
of all BASH commands in the RADOS documentation.

The progress of this project can be tracked here:
https://tracker.ceph.com/issues/57108

Signed-off-by: Zac Dover <zac.dover@gmail.com>
(cherry picked from commit 69d62c05ef0ac8b903944d9e8c8fe4fbb3f73275)

3 years agoMerge pull request #47578 from idryomov/wip-alloc-size-doc-fixup-pacific
Ilya Dryomov [Sun, 14 Aug 2022 06:52:58 +0000 (08:52 +0200)]
Merge pull request #47578 from idryomov/wip-alloc-size-doc-fixup-pacific

pacific: doc/man/rbd: Mention changed `bluestore_min_alloc_size`

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
3 years agodoc/man/rbd: Mention changed `bluestore_min_alloc_size` 47578/head
Niklas Hambüchen [Sun, 2 Jan 2022 22:27:55 +0000 (23:27 +0100)]
doc/man/rbd: Mention changed `bluestore_min_alloc_size`

This change was done in: https://github.com/ceph/ceph/pull/34588

Signed-off-by: Niklas Hambüchen <mail@nh2.me>
(cherry picked from commit 254025343b1c49e1d0aa72fdea0cbe0483704245)

3 years agoMerge pull request #47307 from yaarith/wip-56486-pacific
Laura Flores [Thu, 11 Aug 2022 23:57:25 +0000 (18:57 -0500)]
Merge pull request #47307 from yaarith/wip-56486-pacific

pacific: mgr/telemetry: reset health warning after re-opting-in

3 years agoMerge pull request #47337 from ifed01/wip-ifed-fix-mempool-cache-other-pac
Igor Fedotov [Thu, 11 Aug 2022 11:22:46 +0000 (14:22 +0300)]
Merge pull request #47337 from ifed01/wip-ifed-fix-mempool-cache-other-pac

pacific: os/bluestore: fix AU accounting in bluestore_cache_other mempool

Reviewed-by: akuczyk@redhat.com
3 years agoMerge pull request #47357 from rhcs-dashboard/wip-56966-pacific
Pere Diaz Bou [Wed, 10 Aug 2022 08:40:51 +0000 (10:40 +0200)]
Merge pull request #47357 from rhcs-dashboard/wip-56966-pacific

pacific: mgr/dashboard: add required validation for frontend and monitor port

3 years agoMerge pull request #47454 from rhcs-dashboard/wip-57038-pacific
Pere Diaz Bou [Wed, 10 Aug 2022 08:26:34 +0000 (10:26 +0200)]
Merge pull request #47454 from rhcs-dashboard/wip-57038-pacific

pacific: mgr/dashboard: host list tables doesn't show all services deployed

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
3 years agoMerge pull request #47497 from tchaikov/pacific-pr-47486
Kefu Chai [Wed, 10 Aug 2022 05:51:10 +0000 (13:51 +0800)]
Merge pull request #47497 from tchaikov/pacific-pr-47486

pacific: mgr/dashboard: bump up teuthology

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
3 years agoMerge pull request #47211 from kamoltat/wip-ksirivad-backport-pacific-fix-56151
Yuri Weinstein [Tue, 9 Aug 2022 16:52:13 +0000 (09:52 -0700)]
Merge pull request #47211 from kamoltat/wip-ksirivad-backport-pacific-fix-56151

pacific:src/mgr/DaemonServer.cc: fix typo in output gap >= max_pg_num_change

Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #46748 from myoungwon/pacific-53855
Yuri Weinstein [Tue, 9 Aug 2022 16:50:56 +0000 (09:50 -0700)]
Merge pull request #46748 from myoungwon/pacific-53855

pacific: test: fix TierFlushDuringFlush to wait until dedup_tier is set on bas…

Reviewed-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #47111 from kotreshhr/wip-56527-pacific
Yuri Weinstein [Tue, 9 Aug 2022 16:13:05 +0000 (09:13 -0700)]
Merge pull request #47111 from kotreshhr/wip-56527-pacific

pacific: mds: Don't blocklist clients in any replay state

Reviewed-by: Xiubo Li <xiubli@redhat.com>
3 years agoMerge pull request #46797 from mchangir/pacific-mgr-snap_schedule-persist-all-changes...
Yuri Weinstein [Tue, 9 Aug 2022 16:11:50 +0000 (09:11 -0700)]
Merge pull request #46797 from mchangir/pacific-mgr-snap_schedule-persist-all-changes-to-rados

pacific: mgr/snap_schedule: persist all updates to RADOS

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #47372 from adk3798/wip-56743-pacific
Adam King [Mon, 8 Aug 2022 20:00:53 +0000 (16:00 -0400)]
Merge pull request #47372 from adk3798/wip-56743-pacific

pacific: mgr/cephadm: Add disk rescan feature to the orchestrator

Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agoMerge pull request #47484 from tchaikov/pacific-pr-47478
Kefu Chai [Mon, 8 Aug 2022 13:21:34 +0000 (21:21 +0800)]
Merge pull request #47484 from tchaikov/pacific-pr-47478

pacific: cmake: remove spaces in macro used for compiling cython code

Reviewed-by: Tim Serong <tserong@suse.com>
3 years agomgr/dashboard: bump up teuthology 47497/head
Kefu Chai [Sat, 6 Aug 2022 00:24:12 +0000 (08:24 +0800)]
mgr/dashboard: bump up teuthology

to include the fix of e7c5d67e10fe29da22180f9e09b8973ae166c8fc,
see https://github.com/ceph/teuthology/pull/1746.
to address the test failure on ubuntu jammy. where we have python3.10

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 0aa1fa68d354badd3363a4ea6cacbce373c3316e)

3 years agoMerge pull request #47413 from guits/pacific-cv-backports
Guillaume Abrioux [Mon, 8 Aug 2022 12:55:40 +0000 (14:55 +0200)]
Merge pull request #47413 from guits/pacific-cv-backports

ceph-volume: Pacific backports

3 years agocmake: remove spaces in macro used for compiling cython code 47484/head
Kefu Chai [Fri, 5 Aug 2022 08:40:41 +0000 (16:40 +0800)]
cmake: remove spaces in macro used for compiling cython code

we are facing following FTBFS on jammy + GCC-11.2 + Cython 0.29 +
CMake 3.22:

creating /home/jenkins-build/build/workspace/ceph-api/build/lib/cython_modules/temp.linux-x86_64-3.10/home/jenkins-build/build/workspace/ceph-api/build/src/pybind/cephfs
compile options: '-I/usr/include/python3.10 -I/usr/include/python3.10 -c'
extra options: '-Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -iquote/home/jenkins-build/build/workspace/ceph-api/src/include -w -Dvoid0=dead_function(void) -D__Pyx_check_single_interpreter(ARG)=ARG ## 0 -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2'
cc: /home/jenkins-build/build/workspace/ceph-api/build/src/pybind/cephfs/cephfs.c
cc: warning: ##: linker input file unused because linking not done
cc: error: ##: linker input file not found: No such file or directory
cc: warning: 0: linker input file unused because linking not done
cc: error: 0: linker input file not found: No such file or directory

it seems cython is not able to escape the space in the "extra options"
anymore, so the "##" and "0" are considered as object files passed to
compiler in addition to cephfs.c.

in this change the spaces are removed to help cython to make the right
decision.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 5824fed5b427f1d055fb7104fea2e68cd36e6844)

Conflicts:
cmake/modules/Distutils.cmake: trivial resolution

3 years agoMerge pull request #47266 from cfsnyder/wip-56646-pacific
Yuri Weinstein [Fri, 5 Aug 2022 21:53:24 +0000 (14:53 -0700)]
Merge pull request #47266 from cfsnyder/wip-56646-pacific

pacific: rgw: maintain object instance within RGWRadosObject::get_obj_state method

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agoceph-volume: filter out non-existing devices 47413/head
Guillaume Abrioux [Mon, 25 Jul 2022 15:19:01 +0000 (17:19 +0200)]
ceph-volume: filter out non-existing devices

[1] has broken teuthology tests.

```
[root@smithi097 /]# ls -l /sys/block/
total 0
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-0 -> ../devices/virtual/block/dm-0
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-1 -> ../devices/virtual/block/dm-1
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-2 -> ../devices/virtual/block/dm-2
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-3 -> ../devices/virtual/block/dm-3
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-4 -> ../devices/virtual/block/dm-4
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop0 -> ../devices/virtual/block/loop0
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop1 -> ../devices/virtual/block/loop1
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop2 -> ../devices/virtual/block/loop2
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop3 -> ../devices/virtual/block/loop3
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop4 -> ../devices/virtual/block/loop4
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop5 -> ../devices/virtual/block/loop5
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop6 -> ../devices/virtual/block/loop6
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop7 -> ../devices/virtual/block/loop7
lrwxrwxrwx 1 root root 0 Jul 25 14:12 nvme0n1 -> ../devices/pci0000:00/0000:00:02.0/0000:02:00.0/nvme/nvme0/nvme0n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme1c1n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme1/nvme1c1n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme1n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys1/nvme1n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme2c2n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme2/nvme2c2n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme2n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys2/nvme2n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme3c3n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme3/nvme3c3n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme3n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys3/nvme3n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme4c4n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme4/nvme4c4n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme4n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys4/nvme4n1
lrwxrwxrwx 1 root root 0 Jul 25 14:12 sda -> ../devices/pci0000:00/0000:00:1f.2/ata5/host4/target4:0:0/4:0:0:0/block/sda
[root@smithi097 /]#
```

devices like `nvme1c1n1` exist in `/sys/block` but aren't present in `/dev`

```
[root@smithi097 /]# ls -l /dev/nvme*
crw------- 1 root root  10, 122 Jul 25 14:16 /dev/nvme-fabrics
crw------- 1 root root 240,   0 Jul 25 14:12 /dev/nvme0
brw-rw---- 1 root disk 259,   0 Jul 25 14:15 /dev/nvme0n1
crw------- 1 root root 240,   1 Jul 25 14:16 /dev/nvme1
brw-rw---- 1 root disk 259,   2 Jul 25 15:24 /dev/nvme1n1
crw------- 1 root root 240,   2 Jul 25 14:16 /dev/nvme2
brw-rw---- 1 root disk 259,   4 Jul 25 15:24 /dev/nvme2n1
crw------- 1 root root 240,   3 Jul 25 14:16 /dev/nvme3
brw-rw---- 1 root disk 259,   6 Jul 25 15:24 /dev/nvme3n1
crw------- 1 root root 240,   4 Jul 25 14:16 /dev/nvme4
brw-rw---- 1 root disk 259,   8 Jul 25 15:24 /dev/nvme4n1
[root@smithi097 /]#
```

If a device isn't actually present in `/dev`, `get_block_devs_sysfs()` shouldn't return it.

[1] https://github.com/ceph/ceph/commit/c7f017b21ade3762ba5b7b9688bed72c6b6

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 0ee8351e4d564724aa68a2b8d03bc53e281e7fc9)

3 years agoceph-volume/tests: fix test_exception_returns_default
Guillaume Abrioux [Wed, 3 Aug 2022 09:16:36 +0000 (11:16 +0200)]
ceph-volume/tests: fix test_exception_returns_default

There are cases, like running tests as root user, where this test fails
because root user can always read the file content.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 47aec3b86bcc850292f66d24670c5d8dc0a33c85)

3 years agoceph-volume: drop `ceph-bluestore-tool` call in Device._parse()
Guillaume Abrioux [Mon, 18 Jul 2022 14:54:17 +0000 (14:54 +0000)]
ceph-volume: drop `ceph-bluestore-tool` call in Device._parse()

disk.has_bluestore_label() does the same thing without a subprocess call.

Fixes: https://tracker.ceph.com/issues/56622
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit f5f3117510c287d817534c9f7c25af5f208c2f56)

3 years agoceph-volume: fix is_ceph_disk_member()
Guillaume Abrioux [Tue, 26 Jul 2022 14:24:31 +0000 (16:24 +0200)]
ceph-volume: fix is_ceph_disk_member()

`dev['NAME']` can't match `part` given that it's the name of the
parent device being compared to the partition name.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 24899a1f8d77bc3c10ef158bb463349d615f7c57)
(cherry picked from commit 66d0a07b34faa4514b1b7cb2d46ed90d83b91963)

3 years agoceph-volume/tests: migrate to pyfakefs
Guillaume Abrioux [Wed, 27 Jul 2022 11:41:41 +0000 (13:41 +0200)]
ceph-volume/tests: migrate to pyfakefs

ceph-volume unit tests shouldn't actually create contents on the
filesystem from where it runs (even though they are written in a tmp
dir), let's use pyfakefs.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 1274ba34b4d21c5abf2cd2da035d6d25ae8d03da)

3 years agoceph-volume/tests: fix test_path_is_valid()
Guillaume Abrioux [Wed, 27 Jul 2022 12:28:10 +0000 (14:28 +0200)]
ceph-volume/tests: fix test_path_is_valid()

When ceph-volume tests are run from a host where there's no `/dev/sda`
device, this test fails.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 7ab9d99420db2995542dfab7c416021dcc1c4a47)

3 years agoceph-volume: report slave devices in inventory
Guillaume Abrioux [Tue, 19 Jul 2022 12:06:10 +0000 (12:06 +0000)]
ceph-volume: report slave devices in inventory

`ceph-volume inventory` currently reports the following:

```

Device Path               Size        rotates available Model name
/dev/mapper/mpatha        50.00 GB    True    True
/dev/mapper/mpathaa       6.00 GB     True    True
/dev/mapper/mpathab       6.00 GB     True    True
/dev/mapper/mpathac       6.00 GB     True    True
/dev/mapper/mpathad       6.00 GB     True    True
/dev/mapper/mpathae       6.00 GB     True    True
```

whereas something like following would be useful:

```

Device Path               Size         Device nodes    rotates available Model name
/dev/mapper/mpatha        50.00 GB     sdf,sde         True    True
/dev/mapper/mpathaa       6.00 GB      sdbe,sdat       True    True
/dev/mapper/mpathab       6.00 GB      sdav,sdbf       True    True
/dev/mapper/mpathac       6.00 GB      sdbb,sdbl       True    True
/dev/mapper/mpathad       6.00 GB      sdas,sdbc       True    True
/dev/mapper/mpathae       6.00 GB      sdax,sdbh       True    True
```

Fixes: https://tracker.ceph.com/issues/56624
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 1ac2a8270cf4aece58ae3f952cc4d1ef978384ed)

3 years agoceph-volume: support symlinks as devices
Jan Sobczak [Fri, 20 Nov 2020 13:33:13 +0000 (14:33 +0100)]
ceph-volume: support symlinks as devices

This makes ceph-volume support passing symlinks as devices.

Fixes: https://tracker.ceph.com/issues/49103
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 9ddc5b77372cd2e0d5badd433c93d147cb25c6ee)

3 years agoceph-volume: improve mpath devices reporting
Guillaume Abrioux [Tue, 19 Jul 2022 11:13:31 +0000 (11:13 +0000)]
ceph-volume: improve mpath devices reporting

An environment with mpath devices looks like following:

`lsblk` output:

```
sdy        65:128  0    6G  0 disk
`-mpathm  252:8    0    6G  0 mpath
sdz        65:144  0    6G  0 disk
`-mpathm  252:8    0    6G  0 mpath
```

`multipath -ll` output:

```
mpathm (3600140575bbe2d3c0c6493fb6e6ed84c) dm-8 LIO-ORG,TCMU device
size=6.0G features='0' hwhandler='1 alua' wp=rw
|-+- policy='service-time 0' prio=50 status=active
| `- 2:0:0:30 sdz  65:144 active ready running
`-+- policy='service-time 0' prio=10 status=enabled
  `- 3:0:0:30 sdy  65:128 active ready running
```

`ceph-volume inventory` output:
```
Device Path               Size         rotates available Model name
/dev/mapper/mpathm        6.00 GB      True    True
/dev/sdy                  6.00 GB      True    False     TCMU device
/dev/sdz                  6.00 GB      True    False     TCMU device
```

ceph-volume shouldn't report devices `/dev/sdy` and `/dev/sdz`, they will never be
available in such a scenario. Considering this, in a host with a bunch of mpath devices
it will pollute the inventory output.

Fixes: https://tracker.ceph.com/issues/56621
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit e892f02a1a9126cbb520c90aeef0afb3590ddbbb)

3 years agoceph-volume: fix simple scan
Guillaume Abrioux [Fri, 29 Jul 2022 13:58:05 +0000 (15:58 +0200)]
ceph-volume: fix simple scan

When the class `Device` is instantiated with a path instead of a
block device, it fails like following.

```
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.6/site-packages/ceph_volume/util/device.py", line 130, in __init__
    self._parse()
  File "/usr/lib/python3.6/site-packages/ceph_volume/util/device.py", line 233, in _parse
    self.ceph_device = disk.has_bluestore_label(self.path)
  File "/usr/lib/python3.6/site-packages/ceph_volume/util/disk.py", line 906, in has_bluestore_label
    with open(device_path, "rb") as fd:
IsADirectoryError: [Errno 21] Is a directory: '/var/lib/ceph/osd/ceph-0/'
```

passing a path instead of a block device is valid, `simple scan` needs it.

Fixes: https://tracker.ceph.com/issues/56969
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 5a10e3e9e865aafd9d3f90beb186777060d17f08)

3 years agoceph-volume: Remove refs to get_block_devs_lsblk
Zack Cerza [Tue, 21 Jun 2022 17:37:49 +0000 (11:37 -0600)]
ceph-volume: Remove refs to get_block_devs_lsblk

It's been replaced by get_block_devs_sysfs

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 2023e71f695c1962534c6012d5b331bebd10ec31)

3 years agoceph-volume: Rename env var; add warning
Zack Cerza [Tue, 21 Jun 2022 17:28:30 +0000 (11:28 -0600)]
ceph-volume: Rename env var; add warning

So that we can have a nice big warning that fires once per invocation, I
think using a callable class with a class attribute seems like a decent
approach. A closure could work too.

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 69f58f51a2d7967d597a8d61c0ab20b52e8dc374)

3 years agoceph-volume: Optionally consume loop devices
Zack Cerza [Tue, 17 May 2022 17:29:02 +0000 (11:29 -0600)]
ceph-volume: Optionally consume loop devices

A similar proposal was rejected in #24765; I understand the logic
behind the rejection, but this will allow us to run Ceph clusters on
machines that lack disk resources for testing purposes. We just need to
make it impossible to accidentally enable, and make it clear it is
unsupported.

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit c7f017b21ade3762ba5b7b9688bed72c6b60dc0e)

3 years agoceph-volume: drop self.abspath in Device()
Guillaume Abrioux [Fri, 8 Jul 2022 11:47:00 +0000 (13:47 +0200)]
ceph-volume: drop self.abspath in Device()

seems useless to have both self.path and self.abspath attributes.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 01112ba6894834287092d3b672ec548cb3a4d676)

3 years agoceph-volume: do not call get_device_vgs() per devices
Guillaume Abrioux [Tue, 19 Jul 2022 11:07:33 +0000 (11:07 +0000)]
ceph-volume: do not call get_device_vgs() per devices

let's call `ceph_volume.api.lvm.get_all_devices_vgs` only one time instead
so we avoid a bunch of subprocess calls that slow down the process when running
`ceph-volume inventory` command.

Fixes: https://tracker.ceph.com/issues/56623
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit f5bd0f6da9a3c2f60df2ed6dfaa4c26831a3be37)

3 years agoceph-volume: fix fast device alloc size on mulitple device
Arthur Outhenin-Chalandre [Tue, 14 Jun 2022 09:02:05 +0000 (11:02 +0200)]
ceph-volume: fix fast device alloc size on mulitple device

The size computed by get_physical_fast_allocs() was wrong when the
function had multiple devices to treat.

For instance if there is 4 OSDs and 2 fast devices of each 10G while
allocating 2 slots per fast devvices. The behavior before was that each
slot would be 2.5G meaning that both fast devices would half full. The
behavior now is that each slot will take 5G so that the fast devices
would be full.

Fixes: https://tracker.ceph.com/issues/56031
Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@cern.ch>
(cherry picked from commit d0f9e93914e2b7feac41a634311d74c146c8868b)

3 years agoceph-volume: fix shebang of install command
Arthur Outhenin-Chalandre [Tue, 14 Jun 2022 09:10:33 +0000 (11:10 +0200)]
ceph-volume: fix shebang of install command

Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@cern.ch>
(cherry picked from commit 5255d4be74f15032331ba24b708ad04193ff87f3)

3 years agoceph-volume: fix `simple scan`
Guillaume Abrioux [Wed, 6 Jul 2022 11:42:02 +0000 (13:42 +0200)]
ceph-volume: fix `simple scan`

`lsblk_all()` should return an empty dict `{}` if nothing was found.
If we raise `RuntimeError()` then the loop in `scan.Scan.main` will stop
and make ceph-volume fails because we don't try to catch this exception.
`scan.Scan.main()` has its own logic in order to detect the given path
is a ceph-disk created OSD anyway.

Fixes: https://tracker.ceph.com/issues/56482
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 2630a50acb4654332c0b6801e9214564bd09d3d0)

3 years agoMerge pull request #47341 from cbodley/wip-56954
Yuri Weinstein [Thu, 4 Aug 2022 17:42:18 +0000 (10:42 -0700)]
Merge pull request #47341 from cbodley/wip-56954

pacific: rgw: better tenant id from the uri on anonymous access

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agorgw: PutObj initializes source bucket for copy-source 47266/head
Casey Bodley [Tue, 2 Aug 2022 19:44:54 +0000 (15:44 -0400)]
rgw: PutObj initializes source bucket for copy-source

cherry-picks one more thing from 72d1a363263cf707d022ee756122236ba175cda2
to resolve a crash in CopyObj

Fixes: https://tracker.ceph.com/issues/56646
Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: maintain object instance within RGWRadosObject::get_obj_state method
Cory Snyder [Mon, 25 Jul 2022 19:47:16 +0000 (15:47 -0400)]
rgw: maintain object instance within RGWRadosObject::get_obj_state method

It seems that the object instance was being stripped from the rgw_obj
inadvertently wihtin the RGWRadosObject::get_obj_state method. This
change fixes some S3 behavior related to concurrency and ECANCELED errors.

This is a partial cherry-pick from:
https://github.com/ceph/ceph/commit/72d1a363263cf707d022ee756122236ba175cda2

Fixes: https://tracker.ceph.com/issues/56646
Signed-off-by: Cory Snyder <csnyder@iland.com>
3 years agoMerge pull request #47041 from ifed01/wip-ifed-fix-s3-lock-pac
Yuri Weinstein [Thu, 4 Aug 2022 14:31:27 +0000 (07:31 -0700)]
Merge pull request #47041 from ifed01/wip-ifed-fix-s3-lock-pac

pacific: rgw: do not permit locked object version removal

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agoMerge pull request #47194 from adamemerson/wip-56586-pacific
Yuri Weinstein [Thu, 4 Aug 2022 13:09:32 +0000 (06:09 -0700)]
Merge pull request #47194 from adamemerson/wip-56586-pacific

pacific: rgw: Guard against malformed bucket URLs

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agoMerge pull request #47247 from idryomov/wip-56676-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:51:02 +0000 (05:51 -0700)]
Merge pull request #47247 from idryomov/wip-56676-pacific

pacific: librbd: tweak misleading "image is still primary" error message

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
3 years agoMerge pull request #47161 from idryomov/wip-56549-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:50:34 +0000 (05:50 -0700)]
Merge pull request #47161 from idryomov/wip-56549-pacific

pacific: librbd: bail from schedule_request_lock() if already lock owner

Reviewed-by: Christopher Hoffman <choffman@redhat.com>
3 years agoMerge pull request #47158 from idryomov/wip-48038-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:50:00 +0000 (05:50 -0700)]
Merge pull request #47158 from idryomov/wip-48038-pacific

pacific: qa/suites/rbd: disable workunit timeout for dynamic_features_no_cache

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
3 years agoMerge pull request #47143 from idryomov/wip-56561-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:49:20 +0000 (05:49 -0700)]
Merge pull request #47143 from idryomov/wip-56561-pacific

pacific: rbd: don't default empty pool name unless namespace is specified

Reviewed-by: Christopher Hoffman <choffman@redhat.com>
3 years agoMerge pull request #47128 from idryomov/wip-50734-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:48:50 +0000 (05:48 -0700)]
Merge pull request #47128 from idryomov/wip-50734-pacific

pacific: qa/suites/rbd/pwl-cache: ensure recovery is actually tested

Reviewed-by: Christopher Hoffman <choffman@redhat.com>
3 years agoMerge pull request #47118 from idryomov/wip-56516-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:48:11 +0000 (05:48 -0700)]
Merge pull request #47118 from idryomov/wip-56516-pacific

pacific: rbd-mirror: remove bogus completed_non_primary_snapshots_exist check

Reviewed-by: Mykola Golub <mgolub@suse.com>
3 years agoMerge pull request #47295 from SUSE/wip-pacific-include-memory
Yuri Weinstein [Thu, 4 Aug 2022 12:47:34 +0000 (05:47 -0700)]
Merge pull request #47295 from SUSE/wip-pacific-include-memory

pacific: include/buffer: include <memory>

Reviewed-by: Kefu Chai <kchai@redhat.com>
3 years agoMerge pull request #47196 from adamemerson/wip-54491-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:46:20 +0000 (05:46 -0700)]
Merge pull request #47196 from adamemerson/wip-54491-pacific

pacific: rgw: Fix data race in ChangeStatus

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #47175 from yuvalif/wip-51943-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:44:48 +0000 (05:44 -0700)]
Merge pull request #47175 from yuvalif/wip-51943-pacific

pacific: rgw/notifications: Change in multipart upload notification behavior

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agoMerge pull request #46579 from cbodley/wip-55969
Yuri Weinstein [Thu, 4 Aug 2022 12:44:05 +0000 (05:44 -0700)]
Merge pull request #46579 from cbodley/wip-55969

pacific: rgw: check object storage_class when check_disk_state

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agomgr/dashboard: add cephadm e2e tests for checking count for services instances 47454/head
Avan Thakkar [Wed, 3 Aug 2022 08:45:02 +0000 (14:15 +0530)]
mgr/dashboard: add cephadm e2e tests for checking count for services instances

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit 25b03d85153e368098ebe5bf066f0872449af729)

3 years agomgr/dashboard: cluster > hosts: host list tables doesn't show all services deployed
Avan Thakkar [Mon, 25 Jul 2022 13:49:22 +0000 (19:19 +0530)]
mgr/dashboard: cluster > hosts: host list tables doesn't show all services deployed

Fixes: https://tracker.ceph.com/issues/53210
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
Service instances was displaying only the ceph services, but with these changes it'll display instances
of cephadm services as well.

(cherry picked from commit 4d50da7629145d40da3a2820c3b5c8cdb2bca33f)

3 years agoMerge pull request #47404 from aaSharma14/wip-57004-pacific
Nizamudeen A [Thu, 4 Aug 2022 07:25:18 +0000 (12:55 +0530)]
Merge pull request #47404 from aaSharma14/wip-57004-pacific

pacific: mgr/dashboard: Show error on creating service with duplicate service id

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #47105 from rhcs-dashboard/wip-56562-pacific
Pere Diaz Bou [Thu, 4 Aug 2022 07:08:02 +0000 (09:08 +0200)]
Merge pull request #47105 from rhcs-dashboard/wip-56562-pacific

pacific: mgr/dashboard: rbd image pagination

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #47431 from rhcs-dashboard/wip-57010-pacific
Pere Diaz Bou [Thu, 4 Aug 2022 06:46:02 +0000 (08:46 +0200)]
Merge pull request #47431 from rhcs-dashboard/wip-57010-pacific

pacific: mgr/dashboard: remove token logging

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #47443 from ceph/pacific-rtd
David Galloway [Wed, 3 Aug 2022 23:07:58 +0000 (19:07 -0400)]
Merge pull request #47443 from ceph/pacific-rtd

pacific: .readthedocs.yml: Always build latest doc/releases pages

3 years ago.readthedocs.yml: Always build latest doc/releases pages 47443/head
David Galloway [Thu, 30 Jun 2022 19:37:58 +0000 (15:37 -0400)]
.readthedocs.yml: Always build latest doc/releases pages

We don't backport PRs merged into doc/releases.  Therefore, when one browses to an older Ceph release version on docs.ceph.com (e.g., https://docs.ceph.com/en/pacific/), the information is out of date at best.

The doc/releases page is only accurate if browsing https://docs.ceph.com/en/latest/, for example.

So this post_checkout command will make sure we've checked out doc/releases from main before building and publishing.

Signed-off-by: David Galloway <dgallowa@redhat.com>
(cherry picked from commit 055fe1f825b0629b7685d6d3d4d629ffc37a2d7c)

3 years agocephadm: give disk rescan its own parser object 47372/head
Adam King [Thu, 28 Jul 2022 00:27:54 +0000 (20:27 -0400)]
cephadm: give disk rescan its own parser object

It was using the same name as the agent. Missed this
in https://github.com/ceph/ceph/pull/46420/commits/6584c49bdf254e8750d23ed529478e6a9289e12f

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

Conflicts:
src/cephadm/cephadm

3 years agocephadm: Add tests for rescan function
Paul Cuzner [Mon, 27 Jun 2022 06:41:27 +0000 (18:41 +1200)]
cephadm: Add tests for rescan function

Adds unittets for the rescan code

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit 972fb0ab3c519141b2f07ac4f2d6bbb6b855441a)

Conflicts:
src/cephadm/tests/test_cephadm.py

3 years agodocs: Add docs for new host rescan feature
Paul Cuzner [Mon, 30 May 2022 01:55:27 +0000 (13:55 +1200)]
docs: Add docs for new host rescan feature

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit 4525113fa123a5b1e8a23d6aefc306e6772326bc)

3 years agomgr/cephadm: Add new host rescan command
Paul Cuzner [Mon, 30 May 2022 01:54:33 +0000 (13:54 +1200)]
mgr/cephadm: Add new host rescan command

Adds a host rescan command to invoke cephadm's
rescan-disks subcommand

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit cc9eb1812e9aa138d7af7426b42657ace9020bea)

3 years agocephadm: Add rescan_disks subcommand
Paul Cuzner [Mon, 30 May 2022 01:52:57 +0000 (13:52 +1200)]
cephadm: Add rescan_disks subcommand

Add a new subcommand to probe each HBA to
force discovery of decies not automatically detected
by the kernel.

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit 6584c49bdf254e8750d23ed529478e6a9289e12f)

Conflicts:
src/cephadm/cephadm

3 years agoMerge pull request #47375 from adk3798/wip-56985-pacific
Adam King [Wed, 3 Aug 2022 12:02:42 +0000 (08:02 -0400)]
Merge pull request #47375 from adk3798/wip-56985-pacific

pacific: mgr/cephadm: clear error message when resuming upgrade

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agoMerge pull request #47376 from adk3798/wip-56984-pacific
Adam King [Wed, 3 Aug 2022 12:02:09 +0000 (08:02 -0400)]
Merge pull request #47376 from adk3798/wip-56984-pacific

pacific: cephadm: Fix repo_gpgkey should return 2 vars

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agomgr/dashboard: add required validation for frontend and monitor port 47357/head
Avan Thakkar [Mon, 25 Jul 2022 10:34:00 +0000 (16:04 +0530)]
mgr/dashboard: add required validation for frontend and monitor port

Fixes: https://tracker.ceph.com/issues/56688
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit ea770fd858cae9a8b52c60b293f48cc4dbc925f8)

3 years agomgr/dashboard: remove token logging 47431/head
Pere Diaz Bou [Tue, 2 Aug 2022 16:56:49 +0000 (18:56 +0200)]
mgr/dashboard: remove token logging

Signed-off-by: Pere Diaz Bou <pdiazbou@redhat.com>
(cherry picked from commit fdaf909fba0c399b8d9bbc3a29a5af871546d9d9)

3 years agoqa: Fix use of 'sudo' args 47369/head
Kotresh HR [Sat, 30 Jul 2022 00:02:27 +0000 (05:32 +0530)]
qa: Fix use of 'sudo' args

https://tracker.ceph.com/issues/56727
Signed-off-by: Kotresh HR <khiremat@redhat.com>
(cherry picked from commit 5a33f7e6f6c1fbaa5078983ca2f0901296b65588)

3 years agomgr/volumes: Fix subvolume creation in FIPS enabled system.
Kotresh HR [Wed, 27 Jul 2022 11:09:08 +0000 (16:39 +0530)]
mgr/volumes: Fix subvolume creation in FIPS enabled system.

The md5 checksum is used in the construction of legacy
subvolume config filename. It's not used for security reason.
Hence marking the 'usedforsecurity' flag to false to
make it FIPs compliant.

The usage of md5 was always in there. The commit 373a04cf734
made it to get exercised in 'open_subvol' which is pre-requisite
for all the subvolume operations and hence subvolume
creation has failed.

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

3 years agoMerge pull request #47271 from vumrao/wip-vumrao-56701
Yuri Weinstein [Tue, 2 Aug 2022 22:06:57 +0000 (15:06 -0700)]
Merge pull request #47271 from vumrao/wip-vumrao-56701

pacific: libcephsqlite: ceph-mgr crashes when compiled with gcc12

Reviewed-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #47416 from zdover23/wip-doc-2022-08-03-backport-47197-to-pacific
zdover23 [Tue, 2 Aug 2022 20:27:16 +0000 (06:27 +1000)]
Merge pull request #47416 from zdover23/wip-doc-2022-08-03-backport-47197-to-pacific

pacific: doc/dev: Elaborate on boost .deb creation

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agoMerge pull request #47296 from aclamk/wip-56669-pacific
Laura Flores [Tue, 2 Aug 2022 16:52:38 +0000 (11:52 -0500)]
Merge pull request #47296 from aclamk/wip-56669-pacific

pacific: os/bluestore: Fix collision between BlueFS and BlueStore deferred writes

3 years agodoc/dev: Elaborate on boost .deb creation 47416/head
David Galloway [Wed, 20 Jul 2022 21:07:44 +0000 (17:07 -0400)]
doc/dev: Elaborate on boost .deb creation

Signed-off-by: David Galloway <dgallowa@redhat.com>
(cherry picked from commit 3222485d6582ba6ab3ee908c13b6459c2e2b6302)

3 years agoMerge pull request #47304 from cbodley/wip-56731
Casey Bodley [Tue, 2 Aug 2022 15:02:10 +0000 (11:02 -0400)]
Merge pull request #47304 from cbodley/wip-56731

pacific: rgw/rgw_string.h: add missing includes for alpine and boost 1.75

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
3 years agoMerge pull request #47393 from adk3798/pacific-fix-flake8
Ilya Dryomov [Tue, 2 Aug 2022 09:37:27 +0000 (11:37 +0200)]
Merge pull request #47393 from adk3798/pacific-fix-flake8

pacific: pybind/mgr: fix flake8

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agomgr/dashboard: Show error on creating service with duplicate service id 47404/head
Aashish Sharma [Mon, 25 Jul 2022 08:18:39 +0000 (13:48 +0530)]
mgr/dashboard: Show error on creating service with duplicate service id

Fixes: https://tracker.ceph.com/issues/56689
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
(cherry picked from commit 07cfd44193f6ebd552d13325858e8b5b5c131bfb)

3 years agomgr/cephadm: fix flake8 47393/head
Avan Thakkar [Mon, 1 Aug 2022 09:23:14 +0000 (14:53 +0530)]
mgr/cephadm: fix flake8

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit a124f6c47b119a8741f347ea5a809f3fb48d6679)

3 years agocephadm: ceph.manual.gpg cleanup 47376/head
Laurent Barbe [Fri, 29 Jul 2022 07:33:36 +0000 (09:33 +0200)]
cephadm: ceph.manual.gpg cleanup

Cleanup file /etc/apt/trusted.gpg.d/ceph.manual.gpg when repo is removed

Signed-off-by: Laurent Barbe <laurent@ksperis.com>
(cherry picked from commit bf0951353a80dc17edcc85a7914cfaf2b956d544)

3 years agocephadm: Fix repo_gpgkey should return 2 vars
Laurent Barbe [Thu, 28 Jul 2022 07:30:59 +0000 (09:30 +0200)]
cephadm: Fix repo_gpgkey should return 2 vars

when option --gpg-url is specified, the name used for the gpg filename is missing and throws an exception
this adds the string "manual" to the gpg key : /etc/apt/trusted.gpg.d/ceph.manual.gpg

Fixes: https://tracker.ceph.com/issues/56950
Signed-off-by: Laurent Barbe <laurent@ksperis.com>
(cherry picked from commit 79c805546c9bf4747a9019f4ad59f55e03c9fcef)

3 years agomgr/cephadm: clear error message when resuming upgrade 47375/head
Adam King [Tue, 26 Jul 2022 13:55:05 +0000 (09:55 -0400)]
mgr/cephadm: clear error message when resuming upgrade

the message field in the output of "ceph orch upgrade status"
will first take the value of the error field of the UpgradeState,
and if only if it blank/None, display an info string we periodically
update throughout the upgrade with useful info such as that
we're upgrading a daemon of a particular type or pulling an image
on a certain host. When an upgrade fails, we set the error field
of the UpgradeState, pause the upgrade and raise a health warning.
Sometimes, the user is able to resolve the issue and simply resume
the upgrade. The issue here is, in that case, the error field of
the UpgradeState is still set, so instead of seeing the useful info
messages, it will continue to display an error message that may
no longer be relevant. By emptying the error field of the UpgradeState
when upgrades are resumed, we return to normal behavior of
displaying the info string, and will only show another error message
if another error actually occurs.

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

3 years agoMerge pull request #47319 from adk3798/wip-56739-pacific
Adam King [Fri, 29 Jul 2022 21:21:27 +0000 (17:21 -0400)]
Merge pull request #47319 from adk3798/wip-56739-pacific

pacific: cephadm: add "su root root" to cephadm.log logrotate config

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agoMerge pull request #47320 from adk3798/wip-56737-pacific
Adam King [Fri, 29 Jul 2022 18:11:22 +0000 (14:11 -0400)]
Merge pull request #47320 from adk3798/wip-56737-pacific

pacific: qa/workunits/cephadm: update test_repos master -> main

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agoMerge pull request #47360 from zdover23/wip-doc-2022-07-29-backport-47347-to-pacific
zdover23 [Fri, 29 Jul 2022 13:13:58 +0000 (23:13 +1000)]
Merge pull request #47360 from zdover23/wip-doc-2022-07-29-backport-47347-to-pacific

pacific: doc/radosgw: Uppercase s3

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agodoc/radosgw: make s3 uppercase 47360/head
Anthony D'Atri [Fri, 29 Jul 2022 07:11:22 +0000 (00:11 -0700)]
doc/radosgw: make s3 uppercase

s/s3/S3/ (Also, a "the" has been added.)

(cherry picked from commit 73f0d5707d275529416d5110160b9ff5ead23d22)

Signed-off-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agorgw: better tenant id from the uri on anonymous access 47341/head
Marcus Watts [Thu, 7 Jul 2022 07:33:31 +0000 (03:33 -0400)]
rgw: better tenant id from the uri on anonymous access

When anonymous tries access public bucket, it gets 404,
because rgw doesn't check tenant correctly.

A previous fix for this broke legacy implicit tenants,
because it didn't check for anonymous access.  This version
restricts its behavior to the anonymous user.

Fixes: https://tracker.ceph.com/issues/48001 https://tracker.ceph.com/issues/48382
Original fix by
Author: Rafał Wądołowski <rafal@rafal.net.pl>
Signed-off-by: Rafał Wądołowski <rwadolowski@cloudferro.com>
This fix
Signed-off-by: Marcus Watts <mwatts@redhat.com>
(cherry picked from commit b5880caa505e2df7ff035537c19a8be3a3a8bb8f)

3 years agotest/unittest_bluestore_types: add mempool stats testing for bluestore_blob_use_tracker_t 47337/head
Igor Fedotov [Fri, 1 Jul 2022 12:56:54 +0000 (15:56 +0300)]
test/unittest_bluestore_types: add mempool stats testing for bluestore_blob_use_tracker_t

Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit cf5c545931979ca5f9e35a36e0002551776a4c0e)

3 years agoos/bluestore: fix AU accounting in bluestore_cache_other mempool.
Igor Fedotov [Thu, 30 Jun 2022 13:34:04 +0000 (16:34 +0300)]
os/bluestore: fix AU accounting in bluestore_cache_other mempool.

Fixes: https://tracker.ceph.com/issues/56424
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit f43f596aac97200a70db7a70a230eb9343018159)

3 years agoMerge pull request #47259 from aaSharma14/wip-56686-pacific
Nizamudeen A [Thu, 28 Jul 2022 05:24:07 +0000 (10:54 +0530)]
Merge pull request #47259 from aaSharma14/wip-56686-pacific

pacific: os/bluestore: Better readability of perf output

Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: sunilangadi2 <NOT@FOUND>
3 years agodoc/cephadm/services: the config section of service specs 47321/head
Redouane Kachach [Fri, 1 Jul 2022 12:11:06 +0000 (14:11 +0200)]
doc/cephadm/services: the config section of service specs
Fixes: https://tracker.ceph.com/issues/53997
Signed-off-by: Redouane Kachach <rkachach@redhat.com>
(cherry picked from commit b67bd50a3bb1233973586c4c2eabfb934db2e818)

3 years agoqa/workunits/cephadm: update test_repos master -> main 47320/head
Adam King [Mon, 25 Jul 2022 20:46:39 +0000 (16:46 -0400)]
qa/workunits/cephadm: update test_repos master -> main

Missed this one, it seems the test was still passing until
recently but I guess the "master" builds are now gone

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

3 years agocephadm: add "su root root" to cephadm.log logrotate config 47319/head
Adam King [Tue, 19 Jul 2022 19:02:47 +0000 (15:02 -0400)]
cephadm: add "su root root" to cephadm.log logrotate config

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

3 years agomgr/telemetry: reset health warning after re-opting-in 47307/head
Yaarit Hatuka [Wed, 6 Jul 2022 21:59:15 +0000 (21:59 +0000)]
mgr/telemetry: reset health warning after re-opting-in

When telemetry requires re-opting-in (whenever new data
is available), a health warning is set by the module. This health
warning should be reset once the user re-opts-in (with `ceph telemetry
on`), but currently it might take longer. Fixing it here by waking up
serve() immediately after re-opting-in, which will
invoke refreshing health checks.

Fixes: https://tracker.ceph.com/issues/56486
Signed-off-by: Yaarit Hatuka <yaarit@redhat.com>
(cherry picked from commit b8bbf642c1bc985e5e08639f44adc0e0d7c686da)

Conflicts:
  src/pybind/mgr/telemetry/module.py
  Conflicts were due to the new opt-in flow which was introduced in
  Quincy.

3 years agorgw/rgw_string.h: add missing includes for alpine and boost 1.75 47304/head
Duncan Bellamy [Fri, 21 May 2021 05:30:10 +0000 (06:30 +0100)]
rgw/rgw_string.h: add missing includes for alpine and boost 1.75
alpine needs: string, stdexcept

Fixes: https://tracker.ceph.com/issues/50924
Signed-off-by: Duncan Bellamy <dunk@denkimushi.com>
(cherry picked from commit ebf3a0398f18eab67d2ba25e6a10b41ff140f6a4)

3 years agotest/encoding: verify that e.what() starts with expected str 47295/head
Kefu Chai [Fri, 22 Jul 2022 12:54:43 +0000 (20:54 +0800)]
test/encoding: verify that e.what() starts with expected str

boost changes the way how it prints boost::system::system_error in
boost 1.79 -- it appends the stringified error_category at end of
exception::what(), and our buffer::malformed_input is a subclass
of boost::system::system_error.

so we cannot just compare the return value of what() with the
expected string, to be more future proof, let's check if i
starts with the expected string instead.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 0d9eec3c4feff30ab55601533bccf9ba6e568b9f)

3 years agoos/bluestore: Fix deferred writes corrupting RocksDB 47296/head
Adam Kupczyk [Wed, 29 Jun 2022 08:31:43 +0000 (10:31 +0200)]
os/bluestore: Fix deferred writes corrupting RocksDB

Deferred writes can sometimes update regions that are no longer mapped to any object.
This cannot happen when BlueStore is running, as blobs are being held,
and allocations are not released until deferred op is executed.
However in case of restart allocations that deferred is targetting are already freed.
Deferred replay is done on BlueStore bootup, before any new object can be allocated,
so no collision with object is possible.
But BlueFS can allocate space from block with deferred ops still pending.

Fixes: https://tracker.ceph.com/issues/54547
Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
(cherry picked from commit 2afb951a490aac9ca4d01614867396cbd06b793d)

Conflicts: src/os/bluestore/BlueStore.cc
Modified non-critical BlueFS call foreach_block_extents to get_block_extents.