Commit Graph

133802 Commits

Author SHA1 Message Date
Pedro Gonzalez Gomez
29f510a522 mgr/dashboard: auto-coloring-badges-component
Signed-off-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
2022-08-29 18:03:11 +02:00
Kefu Chai
28d890ebf6
Merge pull request #47834 from tchaikov/wip-56850
mon/MgrMonitor: do not propose again for "mgr fail"

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2022-08-30 00:00:37 +08:00
Patrick Seidensal
79534e5dc3
mgr: Fix tox test issue due to PrettyTable update
Since the update of PrettyTable 3.3.0 to 3.4.0 on Aug 25, 2022, three
tests inside tox broke as the new version returns tables slightly
differently.

Alternatively, the tests could be adapted.

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
2022-08-29 17:02:06 +02:00
Patrick Seidensal
3551d7f8b3
mgr/dashboard: enable addition custom Prometheus alerts
Fixes: https://tracker.ceph.com/issues/57294

Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
2022-08-29 17:01:21 +02:00
John Mulligan
f8b0511d6c qa/tasks/kubeadm: set up tigera resources via kubectl create
Fixes: https://tracker.ceph.com/issues/57268

The tigera operator for the calico CNI has some pretty large resource
definitions. The length of the definitions can cause the "client side
apply", the default mode for `kubectl apply ....`, to fail due to the
length of the needed annotation that would result:

```
2022-08-22T20:24:55.636 INFO:teuthology.orchestra.run.smithi087.stdout:clusterrolebinding.rbac.authorization.k8s.io/tigera-operator created
2022-08-22T20:24:55.670 INFO:teuthology.orchestra.run.smithi087.stdout:deployment.apps/tigera-operator created
2022-08-22T20:24:55.671 INFO:teuthology.orchestra.run.smithi087.stderr:The CustomResourceDefinition "installations.operator.tigera.io" is invalid: metadata.annotations: Too long: must have at most 262144 bytes
2022-08-22T20:24:55.674 DEBUG:teuthology.orchestra.run:got remote process result: 1
```

There are two simple options for avoiding this error. One is to use
`kubectl create`. The create command will not make this lengthy
annotation. It will fail if any of the resources already exist. The
other option is to use server-side apply, via the `kubectl apply
--server-side ...` command. It is new in k8s 1.18. It will not create
the annotation either.

The block of code setting up the CNI already uses `kubectl create` to
create the custom resources that configure the tigera operator.
Therefore it should be safe to assume the block of code in question
doesn't need to be idempotent and we can also use `kubectl create`
elsewhere in the same block.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2022-08-29 10:03:01 -04:00
Casey Bodley
183a05643d
Merge pull request #47441 from mkogan1/wip-WITH_BOOST_VALGRIND
cmake: set WITH_BOOST_VALGRIND before building boost

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Yuval Lifshitz <ylifshit@redhat.com>
2022-08-29 09:51:21 -04:00
Arthur Outhenin-Chalandre
ff06790603
Merge pull request #47675 from bosc0/fix_multicluster
ceph-mixin: fix config inheritance
2022-08-29 14:55:43 +02:00
Nizamudeen A
be5ab2f7bc mgr/dashboard: remove the remaining master tags
This actually broke the doc service when the developer environment is of
main branch

Signed-off-by: Nizamudeen A <nia@redhat.com>
2022-08-29 13:42:58 +05:30
Nizamudeen A
23c00ed480 mgr/dashboard: fix nfs exports form issues with squash field
1. Squash is not a mandatory field.
2. If the export is created from backend, then squash can have many
   different names for each types of squash. for eg.
```
['root', 'root_squash', 'rootsquash', 'rootid', 'root_id_squash', 'rootidsquash', 'all', 'all_squash', 'allsquash', 'all_anomnymous', 'allanonymous', 'no_root_squash', 'none', 'noidsquash']
```
so we need a proper matching in the ui too otherwise the edit field will
not have any value for the squash field.

3. Removed unncessary dropdown helper if there are values for the squash
   and access types.

Fixes: https://tracker.ceph.com/issues/57114
Signed-off-by: Nizamudeen A <nia@redhat.com>
2022-08-29 13:42:56 +05:30
Nizamudeen A
a35651ee85 mgr/dashboard: fix unmanaged snmp service creation
Signed-off-by: Nizamudeen A <nia@redhat.com>
2022-08-29 13:35:43 +05:30
Nizamudeen A
7d157fe48e mgr/dashboard: fix unmanged iscsi service creation
Signed-off-by: Nizamudeen A <nia@redhat.com>
2022-08-29 13:35:43 +05:30
Nizamudeen A
ea68560e14 mgr/dashboard: fix unable to create ingress unmanaged
the following snipped is the error from backend

```
 File "/lib/python3.6/site-packages/ceph/deployment/service_spec.py", line 698, in _from_json_impl
                                                  _cls.validate()
                                                File "/lib/python3.6/site-packages/ceph/deployment/service_spec.py", line 1058, in validate
                                                  'Cannot add ingress: No frontend_port specified')
                                              ceph.deployment.hostspec.SpecValidationError: Cannot add ingress: No frontend_port specified
```

It looks like even if we set unmanaged flag, we need to input the
backend_service, frontend_port, monitor_port and virtual_ip, because there is a
validation going for that in the backend.

https://github.com/ceph/ceph/blob/main/src/python-common/ceph/deployment/service_spec.py#L1050

Fixes: https://tracker.ceph.com/issues/57284
Signed-off-by: Nizamudeen A <nia@redhat.com>
2022-08-29 13:35:42 +05:30
Zac Dover
fc70ccde75 doc/mgr: update prompts in dboard.rst includes
This PR adds unselectable prompts to three files that are
transcluded in the doc/mgr/dashboard.rst file. These three
files are:

 1. debug.inc.rst
 2. feature_toggles.inc.rst
 3. motd.inc.rst

The addition of unselectable prompts to these three files
completes the work begun in PR#47810 (d8064b4), which sought
to bring dashboard.rst into line with the unselectable prompt
standard introduced by Kefu Chai in 2020.

Signed-off-by: Zac Dover <zac.dover@gmail.com>
2022-08-29 10:39:51 +10:00
Ronen Friedman
07bfcac5ea
Merge pull request #47681 from ronen-fr/wip-rf-delog1
osd/scrub: improving scrub logs
Reviewed-by: Aishwarya Mathuria <amathuri@redhat.com>
2022-08-28 14:10:10 +03:00
Yuval Lifshitz
30078cd292
Merge pull request #47728 from yuvalif/wip-yuval-cont-lease
rgw/multisite: check for late lease renewals

reviewed-by: cbodley
2022-08-28 10:44:07 +03:00
Omri Zeneva
9362be0fd2 common/tracer: set the tracer provider singleton
due to changes in opentelemetry lib, the destruction of the tracer provider at the end of the init method also destructs the tracer, so we need to keep the tracer provider, as mentioned in opentelemetry documentation

Signed-off-by: Omri Zeneva <ozeneva@redhat.com>
2022-08-28 01:53:42 -04:00
Ronen Friedman
95dd59ba87 osd/scrub: reduce the amount of log lines
Following call chains, and removing repeated data.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2022-08-28 08:47:46 +03:00
Ronen Friedman
93dfb7e88b common: improving fmtlib handling of ceph::utime_t
1. fixing the output to show local-time instead of UTC format, matching
   operator<<() handling (and all the rest of our logs)
2. adding a 'short' mode (as {:s}) for when, e.g. in most scrub logs,
   we only need 3 digits for the sub-second, and do not need the
   trailing TZ designation.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
2022-08-28 08:47:46 +03:00
zdover23
2b7c0a1238
Merge pull request #47736 from ceph/release-docs
doc: Update release process doc to accurately reflect current process

Reviewed-by: Zac Dover <zac.dover@gmail.com>
2022-08-28 07:13:39 +10:00
David Galloway
4829af891c doc: Update release process doc to accurately reflect current process
Signed-off-by: David Galloway <dgallowa@redhat.com>
2022-08-28 06:40:49 +10:00
Kefu Chai
3d7a895d19 include/object_fmt: mark fmt::formatter<>::format() const
so these formatters can be used in methods with `const` specifier.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-08-27 23:59:24 +08:00
Kefu Chai
2901943618 common/LogEntry: specialize fmt::formatter<LogEntry>
so we can use the formatter defined for `LogEntry` in fmtlib v9.
in this new version of fmtlib, it is required to define a specialization
for the formatted type even when it comes to the types with an override of
operator<<(). since we already have an override for `LogEntry`, let's define
the specialization for `fmt::formatter<LogEntry>`.

this change should address the FTBFS when building with fmtlib v9.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-08-27 23:59:24 +08:00
Kefu Chai
6e223a6802 common/Journald: include msg/msg_fmt.h
so we can use the formatter defined for `entity_name_t`. in fmtlib v9,
it is required to define a specialization for the formatted type even
the type has an override of operator<<(). now that we already have a
formatter for `entity_name_t`, let's just use it.

this change should address the FTBFS when building with fmtlib v9.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-08-27 23:59:24 +08:00
Ilya Dryomov
de0ba80b37 librbd: use actual monitor addresses when creating a peer bootstrap token
Relying on mon_host config option is fragile, as the user may confuse
v1 and v2 addresses, group them incorrectly, etc.  Get mon_host value
only as a fallback.

Fixes: https://tracker.ceph.com/issues/57317
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2022-08-27 17:58:37 +02:00
Kefu Chai
5b1c6ad496 mon/MgrMonitor: do not propse again for "mgr fail"
in 23c3f76018, the change to fail the mgr
is proposed immediately. but `MgrMonitor::prepare_command()` method still
returns `true` in this case. its indirect caller of
`PaxosService::dispatch()` considers this as a sign that it needs to
propose the change with `propose_pending()`. but the pending change has
already been proposed by `MgrMonitor::prepare_command()`, and
`have_pending` is also cleared by this call. as we don't allow
consecutive paxos proposals, the second `propose_pending()` call is
delayed with a configured latency. but when the timer is fired, this
poseponed call would find itself trying to propose nothing. the change
to fail the mgr has been proposed. that's why we have
`ceph_assert(have_pending)` assertion failures.

in this change, the second proposal is not proposed anymore if the
proposal is proposed immediately. this should avoid the assertion
failure.

this change should address the regression introduced by
23c3f76018.

Fixes: https://tracker.ceph.com/issues/56850
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-08-27 23:57:40 +08:00
Duncan Bellamy
5120789f88 rgw: rgw_d3n_datacache.cc add check for musl
aio_init is glibc specific

Fixes: https://tracker.ceph.com/issues/54414
Signed-off-by: Duncan Bellamy <dunk@denkimushi.com>
2022-08-27 10:28:35 +01:00
Lucian Petrut
c95b6b6c77 include: fix IS_ERR on Windows
The "long" type uses 32b on x64 Windows platforms, which means
it's not large enough to store a pointer. intptr_t or uintptr_t
should be used instead.

This change fixes include/err.h, using the right types. There was
a previous patch on this topic but unfortunately it didn't address
all the type casts.

This issue was brought up by the unittest_crush test, which recently
started to fail as the CrushWrapper methods use IS_ERR.

Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
2022-08-27 09:16:50 +00:00
Kefu Chai
8103d11bd8 cmake: set CMP0135 policy
so the `DOWNLOAD_EXTRACT_TIMESTAMP` property of
`ExternalProject_Add()` command is set by default on CMake v3.24 and up.
it helps to set the a more accurate timestamp for the downloaded
content, hence the targets depending on the extracted content can be
rebuilt if the URL changes.

see also https://cmake.org/cmake/help/latest/policy/CMP0135.html

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-08-27 09:56:47 +08:00
Kefu Chai
591e0c6195 cmake: use a loop for setting new policies
we were using a for loop for this purpose, but the for loop was unrolled
when we bumped up the required cmake version.

this change paves the road to setting "CMP0135" to "NEW". this policy
is a new one introduced by CMake v3.24.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2022-08-27 09:49:27 +08:00
zdover23
75d4ce7169
Merge pull request #47810 from zdover23/wip-doc-2022-08-25-mgr-dashboard-prompt-correct
doc/mgr: add prompt directives to dashboard.rst

Reviewed-by: Nizamudeen A <nia@redhat.com>
2022-08-27 05:45:28 +10:00
Laura Flores
8ccd4e2533
Merge pull request #47046 from rzarzynski/wip-dup-trimming-test2
osd, tools, kv: non-aggressive, on-line trimming of accumulated dups
2022-08-26 14:07:44 -05:00
Yehuda Sadeh
e28043f7af rgw: cloud sync: sign requests that read source objs
Fixes: https://tracker.ceph.com/issues/57307

Requests that were sent to fetch the objects from the source zone weren't
being signed. Changing the interface to use rRGWRESTStreamRWRequest::send()
that signs the requests.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2022-08-26 09:56:38 -04:00
Yehuda Sadeh
ae67726441 rgw: cloud sync: fix crash due to objs on cr stack
Fixes: https://tracker.ceph.com/issues/57306

When passing objects that are declared on the stack (as ref / ptr), called
cr can't access them (other than for initialization), as the yield destroys
them. We now keep these objects as class members.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2022-08-26 09:49:01 -04:00
Rishabh Dave
e7b6c9d8c2
Merge pull request #46994 from rishabh-d-dave/qa-caps-helper-upgrade
qa/cephfs: upgrade caps_helper.py

Reviewed-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2022-08-26 18:43:52 +05:30
Pere Diaz Bou
bcbf9d45d2
Merge pull request #47510 from nSedrickm/pagination-component-accesibility-update
mgr/dashboard: Improve level A accessibility for pagination component

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
2022-08-26 15:09:37 +02:00
Rishabh Dave
42ef390ec4
Merge pull request #46902 from lxbsz/wip-56414
client: specify the quota type when finding the root quota realm

Reviewed-by: Rishabh Dave <ridave@redhat.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
Reviewed-by: Kotresh HR <khiremat@redhat.com>
2022-08-26 18:33:13 +05:30
Yingxin Cheng
fabb7fc07d crimson/os/seastore/async_cleaner: move the related stats to JournalTrimmerImpl
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-08-26 19:25:30 +08:00
Yingxin Cheng
d148c225e2 crimson/os/seastore/async_cleaner: factor out JournalTrimmerImpl
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-08-26 17:50:19 +08:00
Yingxin Cheng
1d195242e7 crimson/os/seastore/async_cleaner: introduce BackgroundListener callbacks
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-08-26 17:47:30 +08:00
Yingxin Cheng
222d050f02 crimson/os/seastore/async_cleaner: clean up ExtentCallbackInterface ertrs
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-08-26 17:47:30 +08:00
Yingxin Cheng
b738fede07 crimson/os/seastore/async_cleaner: move ExtentCallbackInterface out of the class
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-08-26 17:47:30 +08:00
Yingxin Cheng
e99501f425 crimson/os/seastore/async_cleaner: simplify GCProcess::run()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-08-26 17:47:30 +08:00
Yingxin Cheng
8dff965089 crimson/os/seastore/async_cleaner: sort GCProcess interfaces
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2022-08-26 17:47:30 +08:00
Yingxin
b826e0cba6
Merge pull request #47698 from cyx1231st/wip-seastore-RBM-trim-2
crimson/os/seastore: generalize journal tail calculations with CircularBoundedJournal

Reviewed-by: Myoungwon Oh <myoungwon.oh@samsung.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
2022-08-26 14:55:41 +08:00
Adam King
be59f2bfe7
Merge pull request #47811 from adk3798/fix-tox-mgr
mgr/orchestrator/tests: don't match exact whitespace in table output

Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
2022-08-25 19:05:44 -04:00
Casey Bodley
958b7e3e06
Merge pull request #47686 from cbodley/wip-rgw-rm-zonegroupmap
rgw: remove RGWRegionMap and RGWZoneGroupMap

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
2022-08-25 14:17:25 -04:00
Casey Bodley
6d2e5c6420
Merge pull request #47735 from cbodley/wip-57232
cls/rgw: restore backward-compatible encoding of cls_rgw_bucket_instance_entry

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2022-08-25 14:17:00 -04:00
Ernesto Puerta
455da8bc7b
Merge pull request #46958 from nSedrickm/datatables-accessibility-update
mgr/dashboard: Improve accessibility for datatable component

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Flores <lflores@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2022-08-25 19:31:09 +02:00
Yuval Lifshitz
1148464c26
Merge pull request #43436 from yuvalif/wip-yuval-fix-50611
rgw/notification: allow sending bucket notifications secrets in cleartext

reviewed-by: cbodley, mattbenjamin
2022-08-25 19:38:27 +03:00
Adam King
f64bf0e804 mgr/orchestrator/tests: don't match exact whitespace in table output
It seems that the exact spacing may differ a bit between
python versions. Currently seeing py3 (which cooresponds to py 3.6
on my system) passing these tests and py37 (which is python 3.7
obviously) failing. I think verifying against the exact whitespace
is unnecessary anyhow. As long as it isn't egregious, we don't
really need to worry about exactly what the spacing is.

Signed-off-by: Adam King <adking@redhat.com>
2022-08-25 12:09:49 -04:00