Commit Graph

121118 Commits

Author SHA1 Message Date
Ilya Dryomov
8d5b3b0dc2
Merge pull request #40175 from idryomov/wip-krbd-blkroset-5.12
qa: krbd_blkroset.t: update for separate hw and user read-only flags

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2021-03-17 19:44:14 +01:00
Sage Weil
a40c96d793 mgr/cephadm: fix --force remove comment
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-17 14:42:34 -04:00
Jason Dillaman
625244f999 test/pybind/rbd: fixed functional change in encryption API
The encryption format API now also implicitly loads the encryption
layer. This tweaks the tests to account for this functional
difference.

Fixes: https://tracker.ceph.com/issues/49848
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2021-03-17 14:14:48 -04:00
Jeff Layton
84ae9432a1 ceph-debug-docker: podman build doesn't accept input via stdin
podman on centos 8 at least doesn't accept the Dockerfile being fed to
it via stdin. Change that branch of the script to use the same method
that the ubuntu side does.

This gets the script working on senta03 for me.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
2021-03-17 13:55:35 -04:00
Sebastian Wagner
3fb62b1a4c
Merge pull request #40051 from strenuous-life/wip-cephadm-osd-exact-match-size
mgr/cephadm: When device size contains the decimal, it can not match size exactly

Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-03-17 18:22:05 +01:00
Sebastian Wagner
b8bcfd4cc3
Merge pull request #39880 from adk3798/upgrade-status
mgr/cephadm: add info to 'ceph orch upgrade status' in cephadm

Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-03-17 18:08:23 +01:00
Patrick Donnelly
28b5137da7
Merge PR #40177 into master
* refs/pull/40177/head:
	doc: update Windows MSI link

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2021-03-17 09:00:56 -07:00
Ilya Dryomov
1ddca6b563
Merge pull request #40178 from idryomov/wip-rbd-map-sanity-check-fixup
krbd: check device node accessibility only if we actually mapped

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2021-03-17 16:43:26 +01:00
Casey Bodley
9b58f62c98
Merge pull request #39678 from yehudasa/wip-rgw-aws4-client
rgw: awsv4 client support

Reviewed-by: Casey Bodley <cbodley@redhat.com>
2021-03-17 11:42:08 -04:00
Kefu Chai
5d10b6995c
Merge pull request #36549 from markhpc/wip-bl-dynamic_alen
common/buffer.cc: Implement dynamic alen in refill_append_space

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2021-03-17 22:43:07 +08:00
Kefu Chai
181dc1a43f
Merge pull request #39757 from aclamk/wip-qa-test-bluestore-reshard
qa: Add bluestore resharding test

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-03-17 22:41:34 +08:00
Sage Weil
476422a6e3 qa/suites/rados/cephadm/orchestrator_cli: random-distro$ -> 0-random-distro$
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-17 10:40:32 -04:00
Kefu Chai
0c4a1bc5e9
Merge pull request #40032 from aclamk/wip-bdev-remove-reap
blk/BlockDevice: Remove reap_ioc logic

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
2021-03-17 22:40:21 +08:00
Sebastian Wagner
59af5fc555
Merge pull request #40118 from jtlayton/wip-49806
doc: fixes for cephadm documentation

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
2021-03-17 15:19:33 +01:00
Kefu Chai
e7ff5b97be
Merge pull request #40179 from tchaikov/wip-cmake-permissive-for-cxx
cmake: do not pass -fpermissive when compiling C code

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2021-03-17 21:49:12 +08:00
Kefu Chai
4846e97415
Merge pull request #40136 from kshtsk/wip-fix-ninja-leap
ceph.spec.in: use ninja instead of ninja-build for openSUSE

Reviewed-by: Nathan Cutler <ncutler@suse.com>
2021-03-17 21:23:45 +08:00
Jeff Layton
bf69cdc689 doc: fixes for cephadm documentation
Be sure to note that python 3 is a prerequisite. Minimal centos 8
installs don't have it, for instance.

Also, we probably don't want to hardcode an octopus URL into the
suggested curl command. Change it to fill that in with
"|stable-release|", which should always point to the latest released
version name.

Fixes: https://tracker.ceph.com/issues/49806
Signed-off-by: Jeff Layton <jlayton@redhat.com>
2021-03-17 20:58:56 +08:00
Jason Dillaman
94f550a87f
Merge pull request #39290 from lxbsz/service
mgr: enhance the rados service map

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-03-17 08:16:49 -04:00
Kefu Chai
93d22b6795 cmake: do not pass -fpermissive when compiling C code
silences warnings like

[2/768] /usr/bin/x86_64-w64-mingw32-gcc-posix -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION -DHAVE_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -D_POSIX=1 -D_POSIX_=1 -D_POSIX_C_SOURCE=1
-D_POSIX_THREADS=1 -D_REENTRANT -D_THREAD_SAFE -D_WIN32_WINNT=0x0A00 -D__CEPH__ -D__STDC_FORMAT_MACROS -Isrc/include -I../src -I../src/include/win32 -isystem ../build.deps/mingw/boost/include -isystem
include -isystem ../src/xxHash -isystem ../src/rapidjson/include -isystem ../src/fmt/include -O3 -DNDEBUG   -include winsock_wrapper.h -include win32_errno.h -U_FORTIFY_SOURCE -Wall
-fno-strict-aliasing -fsigned-char -Wtype-limits -Wignored-qualifiers -Wpointer-arith -Werror=format-security -Winit-self -Wno-unknown-pragmas -fpermissive -fdiagnostics-color=auto -std=gnu99 -MD -MT
src/CMakeFiles/common-objs.dir/xxHash/xxhash.c.obj -MF src/CMakeFiles/common-objs.dir/xxHash/xxhash.c.obj.d -o src/CMakeFiles/common-objs.dir/xxHash/xxhash.c.obj   -c ../src/xxHash/xxhash.c
cc1: warning: command line option '-fpermissive' is valid for C++/ObjC++ but not for C

see also
https://gcc.gnu.org/onlinedocs/gcc-4.0.4/gcc/C_002b_002b-Dialect-Options.html

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-17 20:04:47 +08:00
Ilya Dryomov
8330c9fa4e krbd: check device node accessibility only if we actually mapped
Fix a braino that came with commit f6854ac65d2a ("krbd: make sure the
device node is accessible after the mapping").

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2021-03-17 12:11:25 +01:00
Lucian Petrut
8e4fe67100 doc: update Windows MSI link
Instead of having a direct download link, we'll point to the
download page, which will eventually contain other MSI versions as
well (e.g. Quincy).

While at it, we're simplifying the document a bit, dropping
information that's also included in the manual install guide.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
2021-03-17 10:49:11 +00:00
Ilya Dryomov
485bedd312
Merge pull request #40169 from petrutlucian94/test_fixes
win32*.sh: use the right target when building the tests

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
2021-03-17 11:16:24 +01:00
Ilya Dryomov
d72fca26ed qa: krbd_blkroset.t: update for separate hw and user read-only flags
Since kernel 5.12, hardware read-only state and user read-only
policy (BLKROGET/SET ioctls) are tracked separately in the block
layer.  As the purpose of our ->set_read_only() method was exactly
that, it was removed.

As a side effect, BLKROSET no longer returns EROFS on an attempt
to make a read-only mapping read-write with "blockdev --setrw".
The policy gets updated, but the device remains read-only as before
because the hardware (== mapping) state is controlled by the driver.

Fixes: https://tracker.ceph.com/issues/49858
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2021-03-17 11:00:33 +01:00
Lucian Petrut
c2896329ce win32*.sh: use the right target when building the tests
We switched from make to ninja but we're using the wrong target
when building the tests.

"ninja test" tries to actually run the tests. We'll have to use
"ninja tests" when targeting Windows.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
2021-03-17 07:03:19 +00:00
Kefu Chai
c26826bcbd
Merge pull request #40022 from athanatos/sjust/wip-warnings
test/librgw_file_xattr.cc: fix unused warning

Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-03-17 12:03:24 +08:00
Patrick Donnelly
84801a0034
Merge PR #40070 into master
* refs/pull/40070/head:
	lockdep: fix follows/follows_bt resize() size
	lockdep: switch follows_bt vector member to std::map

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@360.cn>
2021-03-16 20:27:15 -07:00
Patrick Donnelly
6d3f8fea1c
Merge PR #40038 into master
* refs/pull/40038/head:
	test: log the RLIMIT_NOFILE that we set when running this test

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2021-03-16 20:25:41 -07:00
Patrick Donnelly
0fd47b9da1
Merge PR #40028 into master
* refs/pull/40028/head:
	client: hold the cct by increasing the cct nref
	client: notify and stop the tick thread when destructing the Client

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2021-03-16 20:24:35 -07:00
Patrick Donnelly
a4c6bad353
Merge PR #39848 into master
* refs/pull/39848/head:
	mds: fix race of fetching large dirfrag

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Sidharth Anupkrishnan <sanupkri@redhat.com>
2021-03-16 20:23:13 -07:00
Patrick Donnelly
facd7a59ae
Merge PR #39847 into master
* refs/pull/39847/head:
	qa/cephfs: don't expect "file exists" error for "mkdir -p"
	qa/cephfs: don't take parameter cwd in _create_mntpt()

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Xiubo Li <xiubli@redhat.com>
2021-03-16 20:21:52 -07:00
Kefu Chai
cd3909ee8d
Merge pull request #40162 from liewegas/bug-49846
mgr/prometheus: fix typo in get_collect_time_metrics

Reviewed-by: Kefu Chai <kchai@redhat.com>
2021-03-17 10:52:41 +08:00
Kefu Chai
10588658ac
Merge pull request #40152 from TheJJ/fix-osd-class-path-docs
doc: update osd-class-path error messages

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Zac Dover <zac.dover@gmail.com>
2021-03-17 10:46:19 +08:00
Yingxin Cheng
58fbde2848 crimson/seastore/onode_tree: fix recorder nullptr case
The value recorder can be nullptr if the extent is fresh.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-03-17 09:47:20 +08:00
Yingxin Cheng
fe0178aa34 crimson/seastore/onode_tree: implement FLTreeOnodeManager unittest
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2021-03-17 09:47:10 +08:00
Sage Weil
ec07abda07 qa/suites/rados/cephadm/smoke-roleless: distro -> 0-distro
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 20:51:36 -04:00
Sage Weil
f9c802946f qa/distros/podman: install kubic once per host, in parallel
- exec "all:" means all *roles*, not *hosts*
- pexec "all:" means all hosts (yay), and also works in parallel

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 20:51:36 -04:00
Sage Weil
6901edc5d1 qa/suites/fs/multiclient: use clients: not all: for pexec
This matches the setup work we are trying to tear down.

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 20:51:36 -04:00
Jason Dillaman
5764c493fa
Merge pull request #40164 from racpatel/DocRBDfix
doc/RBD:fixes for ceph-immutable-object-cache daemon enable command

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2021-03-16 20:21:37 -04:00
Sage Weil
48d33f8a1b mgr/cephadm/schedule: choose an IP from a subnet list
Choose an IP from the subnet list provided by the ServiceSpec.

A few caveats:
- we ignore hosts that don't have IPs in the given subnet
- the subnet matching is STRICT.  That is, the CIDR name has to exactly
match what is configured on the host.  That means you can't just say 10/8
to match any 10.whatever addres--you need the exactly network on the host
(e.g, 10.1.2.0/24).
- If you modify a servicespec and change the networks when there are
already deployed daemons, we will try to deploy the new instances on
the same ports but bound to a specific IP instead of *.  Which will fail.
You need to remove the service first, or remove the old daemons manually
so that creating new ones will succeed.

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 19:20:34 -04:00
Sage Weil
4841093c76 mgr/cephadm: rgw: clean up config and config-key values on removal
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 19:00:28 -04:00
Sage Weil
f81a4a2278 mgr/cephadm: rgw: drop .crt extension when storing cert in config-key
This will no affect upgrades since we will run the config() method before
prepare_create() any time we deploy a new daemon on this service, which
means we'll re-store the cert in the new key location before we generate
a new rgw_frontends option that references it.

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 19:00:22 -04:00
Sage Weil
db54392507 mgr/cephadm/services: allow beast/civetweb to bind to a particular IP
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 19:00:13 -04:00
Sage Weil
6d59d43dd4 python-common: add 'networks' property to ServiceSpec
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 18:59:56 -04:00
Rachanaben Patel
f000ecb64e doc/RBD:fixes for ceph-immutable-object-cache daemon enable command
Document for rbd-persistent-read-only-cache show how to manage
ceph-immutable-object-cache daemon using systemd.
command example needs fixing.It should be

systemctl enable ceph-immutable-object-cache@ceph-immutable-object-cache.{unique id}

Fixes: https://tracker.ceph.com/issues/49849
Signed-off-by: Rachanaben Patel <racpatel@redhat.com>
2021-03-16 15:37:46 -07:00
Ken Dreyer
79808963a7 rpm: ceph-resource-agents package is noarch
The ceph-resource-agents package contains an architecture-independent
bash script and parent directories. There are no architecture-dependent
files here, so we can use a single noarch RPM across all host
architectures.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2021-03-16 16:18:11 -06:00
Sage Weil
c80b944fd4 mgr/prometheus: fix typo in get_collect_time_metrics
This causes a failure the first time through this function, but
subsequent calls succeed, making it a bit hard to notice.

Fixes: 58fd057e2c

Fixes: https://tracker.ceph.com/issues/49846
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 15:10:42 -05:00
Patrick Donnelly
8e9738033a
Merge PR #40114 into master
* refs/pull/40114/head:
	doc: reorganize Windows docs

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2021-03-16 12:27:43 -07:00
Sage Weil
798ddca3d0 Merge PR #40075 into master
* refs/pull/40075/head:
	qa/suites/rados/cephadm/upgrade: add centos upgrade on latest octopus

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-03-16 14:07:51 -04:00
Sage Weil
5db8ff5486 mgr/cephadm/schedule: match placement ip only combination with port
1- We only have an IP to bind to if we also have a port, and
2- If we do, we want an exact match: if the DaemonPlacement has ip of
   None, then the DaemonDescription should have None too.

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-16 13:07:01 -04:00
Sage Weil
0d3df9b959 Merge PR #39931 into master
* refs/pull/39931/head:
	mgr/cephadm: fall back to service spec port if none on DaemonDescription
	mgr/cephadm: fix redeploy when daemons have ip:port
	mgr/cephadm/schedule: add test case
	qa/suites/rados/cephadm/smoke-roleless: add rgw test on many ports
	doc/cephadm/rgw: update docs to show count-per-host
	mgr/cephadm: add support for rgw_frontend_type (beast or civetweb)
	mgr/cephadm: remove ssl_frontend_ssl_key from RGWSpec
	mgr/cephadm: fix beast private key config option
	mgr/cephadm: fix rgw ssl cert/key config-key path
	mgr/cephadm/schedule: dynamically assign ports for rgw
	mgr/cephadm/schedule: only 1 port in DaemonPlacement
	mgr/cephadm: move rgw frontend logic into RgwService
	mgr/cephadm/schedule: return DaemonPlacement instead of HostPlacementSpec
	mgr/cephadm/schedule: remove unused methods
	mgr/cephadm: propagate ip:port from CephadmDaemoNDeploySpec to deployment
	cephadm: populate ports if known and not included in unit.meta
	mgr/cephadm: gather and report ports in 'orch ps' output

Reviewed-by: Sebastian Wagner <swagner@suse.com>
2021-03-16 13:04:55 -04:00