Commit Graph

121327 Commits

Author SHA1 Message Date
Kefu Chai
36d2f006c6 cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT for rgw tests
otherwise unittest_rgw_iam_policy does not compile with boost v1.75

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 22:39:20 +08:00
Sage Weil
0d5787c0d1 mgr/cephadm: don't log not-ok-to-stop at ERR level
This is normal during the upgrade; INF is fine.

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-19 10:38:06 -04:00
Sage Weil
3ea3ee5c09 mgr/cephadm: is presumed -> appears
The old wording was weird.

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-19 10:37:37 -04:00
Sage Weil
df7af90b89 mgr/cephadm: don't double-log ok-to-stop results
The calling upgrade code also reports this.

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-19 10:37:16 -04:00
Sage Weil
efb7ab22a4 mgr/cephadm/upgrade: include upgrade progress in ceph -s
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-19 10:31:24 -04:00
Sage Weil
4bcf9c3422 Merge PR #40218 into master
* refs/pull/40218/head:
	cephadm: make default image the daily master build

Reviewed-by: Michael Fritch <mfritch@suse.com>
2021-03-19 10:21:20 -04:00
Michael Fritch
46f00a7bd7
cephadm: use debug verbosity during container exec
avoid failures from appearing on the consle when exec'ing within the
container during the `ls` command

Signed-off-by: Michael Fritch <mfritch@suse.com>
2021-03-19 08:15:24 -06:00
Kefu Chai
bb70e94dd7
Merge pull request #40232 from tchaikov/wip-rgw-drop-unused-var
rgw/rgw_zone: drop unused variable

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2021-03-19 22:05:55 +08:00
Kefu Chai
9521e38450
Merge pull request #40205 from tchaikov/wip-promtool-podman-docker
test: run promtool test without docker on focal

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Aashish Sharma <aasharma@redhat.com>
2021-03-19 22:03:50 +08:00
Sage Weil
04e89d57e7 qa/suites/rados/cephadm/dashboard: test on centos
Fixes: https://tracker.ceph.com/issues/49638
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-19 08:56:19 -05:00
Sage Weil
afc33758e0 rgw: register daemons in servicemap by gid; include id
Registering by gid allows multiple radosgw instances to share an auth
key/identity.  Including the id in the metadata allows them to still be
identified by name (even if not uniquely).

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-19 09:45:49 -04:00
Kefu Chai
8c28c79856 cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT for rgw tests
otherwise unittest_rbd_mirror does not compile with boost v1.75

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 20:35:52 +08:00
Kefu Chai
f381aa8bf0 test: run promtool test without docker on ubuntu/focal
before this change, we use docker for running promtools offered by
a docker image, but this is not efficient, and quite a few developers
do not want to use docker for running "make check". this change was
introduced by #39246, the reason was that, in Ceph's CI process, we
are using Ubuntu/Bionic for running "make check" jobs, but prometheus
packaged by Bionic does not offer the "test rules" command. so, to
address problem, we are using "dnanexus/promtool:2.9.2" docker image
for verifying monitoring/prometheus/alerts/test_alerts.yml.

after this change, we use prometheus packaged by debian derivatives
instead of pulling a docker image.

* debian/control: add prometheus as a "make check" dependency
* install-deps.sh: partially revert
  53a5816ded, as we don't need to
  pull docker or start docker service for using promtool anymore.
* cmake: check if promtool is capable of running "test rules"
  command, bail out if it is not.

see also: https://tracker.ceph.com/issues/49653

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 20:35:51 +08:00
Kefu Chai
1cc6174a3a install-deps.sh: install boost 1.75 on focal
we bump boost on regular basis. let's take the opportunity of moving to
focal to use boost v1.75.

v1.73 was used before this change. since both boost 1.75 and boost 1.73
install some files at the same places, we need to remove boost 1.73
before installing boost 1.75.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 20:35:51 +08:00
Kefu Chai
33d2964ae2 cmake: adapt FindBoost.cmake to our needs
the vanilla FindBoost.cmake pulled from cmake has couple assumptions
which do not hold in our environment. so address them case by case.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 20:35:51 +08:00
Kefu Chai
3aaedc8fdc cmake: add 1.75 to known versions
sync with
507710438d/Modules/FindBoost.cmake

for v1.75 support

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 20:35:51 +08:00
Kefu Chai
f75a36fe9a install-deps.sh: install libzbd on focal
WITH_ZBD is enabled for testing the build of zbd bluestore backend, and
we plan to migrate to Ubuntu/Focal for testing "make check", so need to
install libzbd when the distro version is focal.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 20:35:51 +08:00
Sage Weil
a5ca3aa0f0 Merge PR #40200 into master
* refs/pull/40200/head:
	mgr/cephadm: clean up misc messages
	mgr/cephadm/configcheck: do not spam info every minute

Reviewed-by: Adam King <adking@redhat.com>
2021-03-19 08:31:56 -04:00
Sage Weil
6b43b2bfe6 Merge PR #40223 into master
* refs/pull/40223/head:
	cephadm: prevent podman from breaking socket.getfqdn()

Reviewed-by: Daniel Pivonka <dpivonka@redhat.com>
2021-03-19 08:31:24 -04:00
Kefu Chai
0efb049952 osd/PeeringState: remove unused variable
recovery_ec_pool_below_min_size was used to verify if the osd in clsuter
are octopus and up, but since we are now quincy and up, there is no need
to verify this. so drop it for better readability and for silencing
the -Wunused-variable warning in Release build.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 20:22:26 +08:00
Kefu Chai
b3805887c4
Merge pull request #40236 from tchaikov/wip-cbt-perf
script/run-cbt.sh: set kernel.perf_event_paranoid for running perf

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2021-03-19 20:10:33 +08:00
Kefu Chai
b37ef49f22 script/run-make.sh: quote targets with double quote
in
ceph-build/ceph-perf-pull-requests/config/definitions/ceph-perf-pull-requests.yml,
we pass "vstart-base crimson-osd" as the targets argument, but the
build() function in ceph/src/script/run-make.sh fails to quote them, so
they are expanded into two argument of `test -n`. hence it breaks like

src/script/run-make.sh: line 124: test: vstart-base: binary operator expected
make will run with option(s) -j40
Unknown argument vstart-base
Unknown argument crimson-osd

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 19:25:25 +08:00
Kefu Chai
151719590d script/run-cbt.sh: set kernel.perf_event_paranoid for running perf
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 19:04:03 +08:00
Kefu Chai
053ad3ff5b
Merge pull request #40233 from tchaikov/wip-make-check-aio-max
run-make-check.sh: increase fs.aio-max-nr

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2021-03-19 17:50:16 +08:00
Yin Congmin
6583182f62 librbd/cache/pwl: fix bug of flush request blocked by deferd IO
Flush requests do not need to be queued behind the defer_io queue,
should be issued immediately. Otherwise, there will be a deadlock
scenario in which dirty data is waiting for flush req, flush req is
waiting for defer_io empty, and defer_io is waiting for dirty data
persistence to release space. So this sometimes occur when the cache
is small but the IO is large or the queue depth is large.

Signed-off-by: Yin Congmin <congmin.yin@intel.com>
2021-03-19 17:18:01 +08:00
Jenkins Build Slave User
afdafee74c cmake: use --smp 1 --memory 256M to crimson tests
to reduce the resource usage when running tests

there is an exception though, as we want to test test_config.cc with
multiple reactors.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 16:37:13 +08:00
Kefu Chai
f0510c5fed
Merge pull request #40229 from tchaikov/wip-dashboard-flake8
pybind/mgr/dashboard: bump flake8 to 3.9.0

Reviewed-by: Nizamudeen A <nia@redhat.com>
2021-03-19 16:25:14 +08:00
Kefu Chai
e8fd4b3a13 run-make-check.sh: increase fs.aio-max-nr
without this change the seastar based tests fail on host with 48 cores,
because the /proc/sys/fs/aio-nr used by the tests is greater than
1048576. if run-make-check.sh is used to launch the test, the default
job number is `$(nproc) / 2`, and the peak number of /proc/sys/fs/aio-nr
when running ctest was 3190848 when testing on the 48-core host.

so we need to increase fs.aio-max-nr accordingly to the available cores
on the host.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 16:24:33 +08:00
Kefu Chai
1898990422 rgw/rgw_zone: drop unused variable
Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 14:52:09 +08:00
Kefu Chai
de9a6a4d6c pybind/mgr/dashboard: remove "python_version >= 3'
remove "python_version >= '3'" from requirements-lint.txt, as we've
dropped the Python2 support.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 12:24:28 +08:00
Kefu Chai
152964ca36 pybind/mgr/dashboard: bump flake8 to 3.9.0
to address the failure of

ERROR: Cannot install -r requirements-lint.txt (line 2) and -r requirements-lint.txt (line 8) because these package versions have conflicting dependencies.

The conflict is caused by:
    flake8 3.8.4 depends on pycodestyle<2.7.0 and >=2.6.0a1
    autopep8 1.5.6 depends on pycodestyle>=2.7.0

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

Signed-off-by: Kefu Chai <kchai@redhat.com>
2021-03-19 12:14:45 +08:00
Kotresh HR
92dc982318 mgr/volumes: Retain suid/guid bits in subvolume clone
Fixes: https://tracker.ceph.com/issues/49882
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2021-03-19 09:30:04 +05:30
Kotresh HR
b2375adce0 pybind/cephfs: Add lchmod python binding
Fixes: https://tracker.ceph.com/issues/49882
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2021-03-19 09:30:04 +05:30
Kotresh HR
bb1fd87e3b client/libcephfs: Add lchmod
Fixes: https://tracker.ceph.com/issues/49882
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2021-03-19 09:30:04 +05:30
Neha Ojha
da7a6fae9e
Merge pull request #40227 from neha-ojha/wip-message-cap-val
qa/suites/rados/perf: set osd client message cap to 5000

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2021-03-18 17:28:01 -07:00
Adam King
83f0ca9ea0 mgr/cephadm: redeploy daemons deployed using old image during upgrade
Add extra check that daemons were deployed by mgr using new image
during upgrade. Makes sure unit.run file for all daemons are updated
if they changed between old and new images.

Fixes: https://tracker.ceph.com/issues/49013

Signed-off-by: Adam King <adking@redhat.com>
2021-03-18 18:23:16 -04:00
Adam King
baa95a7a13 mgr/cephadm: add container digests of mgr that deployed daemon to unit.meta
For use in upgrade. It's useful to see if daemon was deployed by mgr running
same container digest as container we are upgrading to.

Signed-off-by: Adam King <adking@redhat.com>
2021-03-18 18:17:35 -04:00
Neha Ojha
4f746f2655
Merge pull request #40185 from ronen-fr/wip-ronenf-extra-scrub-assert
osd: remove a ceph_assert() from a legitimate path

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Sam Just <sjust@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
2021-03-18 14:54:37 -07:00
Neha Ojha
fb8b4e9727 qa/suites/rados/perf: set osd client message cap to 5000
Related to https://tracker.ceph.com/issues/49894
Signed-off-by: Neha Ojha <nojha@redhat.com>
2021-03-18 21:28:52 +00:00
Sage Weil
aa13b25c80 cephadm: fix rbd-mirror auth name
Broken by 8fa941b35d

Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-18 17:27:18 -04:00
Sage Weil
0461b061d5 Merge PR #40048 into master
* refs/pull/40048/head:
	mgr/cephadm: stop conflicting daemon when deploying to a specific port
	mgr/cephadm: make DaemonPlacement print nicer
	mgr/cephadm: fix --force remove comment
	mgr/cephadm/schedule: choose an IP from a subnet list
	mgr/cephadm: rgw: clean up config and config-key values on removal
	mgr/cephadm: rgw: drop .crt extension when storing cert in config-key
	mgr/cephadm/services: allow beast/civetweb to bind to a particular IP
	python-common: add 'networks' property to ServiceSpec
	mgr/cephadm/schedule: match placement ip only combination with port

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Juan Miguel Olmo <jolmomar@redhat.com>
2021-03-18 16:11:38 -04:00
Yuval Lifshitz
b903b2e011
Merge pull request #39139 from TRYTOBE8TME/wip-rgw-bucket-tests-separation-new
Wip rgw bucket tests separation new
2021-03-18 20:33:00 +02:00
Sage Weil
cfc1f914ce cephadm: prevent podman from breaking socket.getfqdn()
socket.getfqdn() will return the reverse lookup for 127.0.1.1, which is
the last item listed for that IP in /etc/hosts.  Podman, by default, will
append the container name (ceph-$fsid-$name) to that line, which is not
a valid hostname, and not what we want the dashbaord to use for the URI
it advertises in the service map.

Pass --no-hosts to podman to disable this.

Docker does not appear to modify /etc/hosts by default--or, more
importantly, does not add the container name there.

Explicitly instruct podman (and docker) to add a

Fixes: https://tracker.ceph.com/issues/49890
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-18 14:26:48 -04:00
Adam King
30c9210d97 mgr/orchestrator: remove image name field from 'orch ps' and 'orch ls'
Now that we're typically using the image digests the name isn't as helpful. We also
end up in scenarios where some images use tags for their name and others use the
digest so the image name comes out as "mix" in orch ls despite it being the same image.

Fixes: https://tracker.ceph.com/issues/47333

Signed-off-by: Adam King <adking@redhat.com>
2021-03-18 14:13:47 -04:00
Sage Weil
4d447092c3 mon/MgrStatMonitor: ignore MMgrReport from non-active mgr
If it's not the active mgr, we should ignore it.

Since the mgr instance is best identified by the gid, add that to the
message.  (We can't use the source_addrs for the message since that is
the MgrStandby monc addr, not the active mgr addrs in the MgrMap.)

This fixes a problem where a just-demoted mgr report gets processed and a
new mgr gets a ServiceMap with an epoch >= its pending map.  (At least,
that is my theory!)

Fixes: https://tracker.ceph.com/issues/48022
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-18 12:00:01 -05:00
Mykola Golub
2b21735498
Merge pull request #40199 from dillaman/wip-rbd-lockdep
test: ignore failures to force-enable lockdep

Reviewed-by: Mykola Golub <mgolub@suse.com>
2021-03-18 18:46:13 +02:00
Mykola Golub
b5a8e96b96
Merge pull request #40194 from dillaman/wip-49848
test/pybind/rbd: fixed functional change in encryption API

Reviewed-by: Mykola Golub <mgolub@suse.com>
2021-03-18 18:44:53 +02:00
Neha Ojha
2f1cb79620
Merge pull request #40161 from sseshasa/wip-fix-wait-for-clean
qa/tasks: Add additional wait_for_clean() check in lost_unfound tasks.

Reviewed-by: Neha Ojha <nojha@redhat.com>
2021-03-18 09:24:31 -07:00
Sage Weil
3dbc1f0578 mgr: tell monc when we get new servicemap, fsmap
Otherwise, when we re-subscribe we'll request an old map again.  In the
case of the servicemap, that can lead to a failed assertion.

Fixes: https://tracker.ceph.com/issues/48022
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-18 10:40:42 -05:00
Sage Weil
61bdbc2779 cephadm: make default image the daily master build
Signed-off-by: Sage Weil <sage@newdream.net>
2021-03-18 10:26:36 -05:00