Commit Graph

139696 Commits

Author SHA1 Message Date
cloudbehl
03df017f8e mgr/dashboard: RGW Details card cleanup
Fixes: https://tracker.ceph.com/issues/62377

Signed-off-by: cloudbehl <cloudbehl@gmail.com>
2023-08-09 22:21:25 +05:30
Pedro Gonzalez Gomez
cd165601e8 mgr/dashboard: list subvolume groups
Fixes: https://tracker.ceph.com/issues/62168
Signed-off-by: Pedro Gonzalez Gomez <pegonzal@redhat.com>
2023-08-09 17:45:15 +02:00
Josh Soref
73479a1e05 dashboard: fix spelling errors
* access
* availability
* dashboard
* depth
* dimless
* evaluation
* executing
* existing
* facts
* gigabytes
* idempotent
* independent
* initial
* inventory
* managed
* must not
* notification
* notifications
* orchestrator
* previously
* promises
* purging
* queried
* repetitive
* split
* subdirectories
* tenant
* the
* timestamp
* transformed
* unavailable
* visibility
* yourself

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-08-09 11:14:20 -04:00
Yuval Lifshitz
481649aedc rgw/lua: allow metatable fields to be cached
this is by making metatable names fully qualified names
that contain the entire "path" for reaching them and not
just the name of the object they point to.

with the fix, the code would either create a new metatable,
as in this case:

local o1 = Request.Object
-- new metatable is created to represent the Object in Request.Object
local o2 = Request.CopyFrom.Object
-- new metatable (with different upvalues) is created to represent Request.CopyFrom.Object
print(o1.Name)
print(o2.Name)

or, will reuse an existing metatable, as in this case:

local o1 = Request.Object
-- new metatable is created to represent the Object in Request.Object
local o2 = Request.Object
-- reuse the same metatable
print(o1.Name)
print(o2.Name)

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

Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
2023-08-09 14:30:16 +00:00
Yuval Lifshitz
fdf7796905 rgw/lua: expose correct value in Request.Bucket.User
a change in zipper caused bucket->get_info().owner to return an empty
string. so the lua value now expose: bucket->get_owner()->get_id()

Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
2023-08-09 13:36:15 +00:00
Yuval Lifshitz
7d043b8beb
Merge pull request #52273 from yuvalif/wip-yuval-lua-mem-limit
rgw/lua: add configurable memory limit for the lua state
2023-08-09 16:35:22 +03:00
Nizamudeen A
57717b5e17
Merge pull request #52154 from rhcs-dashboard/hosts-pagination
mgr/dashboard: host pagination

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
2023-08-09 14:51:37 +05:30
cloudbehl
d79266f1d2 mgr/dashboard: open popup on hover cluster status
Fixes: https://tracker.ceph.com/issues/62351

Signed-off-by: cloudbehl <cloudbehl@gmail.com>
2023-08-09 14:34:12 +05:30
Yingxin Cheng
4515c34977 test/crimson/test_messenger: relax the ordering checks to tracked_conn
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 15:30:53 +08:00
Yingxin Cheng
933745cd81 test/crimson/test_messenger: move all connection state checks to the protocol level
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 15:30:53 +08:00
Yingxin Cheng
9bf4eeaa92 crimson/net: don't miss keepalive during message sweeping
The flags need to be updated atomically to prevent missing them during
message sweeping.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 15:30:53 +08:00
Yingxin Cheng
a4f6c82a9a test/crimson/test_messenger: drop test_concurrent_dispatch()
The only purpose of test_concurrent_dispatch() is to verify that 2
messages are all received. Revise test_echo() for the same purpose, and
drop test_concurrent_dispatch().

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 15:30:53 +08:00
Yingxin Cheng
9b5182779d test/crimson/test_messenger: implement multi-shard test_echo::test_state::Client
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 15:30:53 +08:00
Yingxin Cheng
9d817d33d5 test/crimson: add missing calls to ConfigProxy::start()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 15:30:51 +08:00
Yingxin Cheng
6bab7e698d crimson/net: adjust dispatcher interface about cross-core notifications
Due to that we aren't able to determine cross-core ordering:
* Move ms_handle_connect/accept() to be called in the new shard, so it
  will notify before ms_dispatch() in the same core;
* Introduce another ms_handle_shard_change() when the current core is
  changed;

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 15:26:25 +08:00
Yingxin Cheng
ec6acfc352 test/crimson/test_messenger: implement multi-shard test_echo::test_state::Server
Also introduces ShardedGates.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
2023-08-09 13:31:25 +08:00
zdover23
985173419b
Merge pull request #52745 from zdover23/wip-doc-2023-08-02-rados-operations-add-or-rm-mons-1-of-x
doc/rados: edit operations/add-or-rm-mons (1 of x)

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2023-08-09 11:24:47 +10:00
zdover23
6160b2a311
Merge pull request #52884 from phlogistonjohn/jjm-doc-typo-fix
doc/cephadm: fix typo in cephadm initial crush location section

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
2023-08-09 10:39:17 +10:00
John Mulligan
6e22b7b2d3 doc/cephadm: fix typo in cephadm initial crush location section
A minor typo fix found while skimming through the cephadm docs:
"will no remove" -> "will not remove".

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2023-08-08 16:35:49 -04:00
Raimund Sacherer
ad60fc3db6 cephadm: Fix extra_container_args for iSCSI
extra_container_args where only applied for rbd_target_api container and not for
tcmu-runner container.

Signed-off-by: Raimund Sacherer <rsachere@redhat.com>
2023-08-08 12:02:51 -04:00
Adam King
3f0bece48d mgr/cephadm: bump nvmeof image version to 0.0.2
0.0.2 includes a patch that allows the nvmeof
daemon to use non-admin keyrings, so we should
use it over 0.0.1

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:51:57 -04:00
Adam King
eac3ba46b8 mgr/cephadm: rename "igw_id" to "nvmeof_gw_id"
"igw_id" was leftover from the nvmeof implementation
being taken heavily from the iscsi implementation. "igw"
means nothing in this context, so we can change the name.

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:50:16 -04:00
Adam King
25a9f5ab0b mgr/cephadm: configure nvmeof with ip of target host
This is the IP the nvmeof daemon will bind
to, so it should be the IP of the host we're
deploying the nvmeof daemon on, not the IP
of the active mgr

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:50:16 -04:00
Adam King
6aa14a228d mgr/cephadm: make nvme-of auth keyring more restricted
Rather than giving full admin privileges,
try to be a bit more strict by limiting it
to profile rbd mon caps and full OSD
privileges for rbd tagged pools. I also wanted
to include an OSD cap like

allow all pool="*" object_prefix "nvmeof.state"

but this caused a failure in the nvme-of daemon

RADOS permission error (Failed to operate write op for oid nvmeof.None.state)

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:50:16 -04:00
Adam King
f97f242eee qa/cephadm: add basic nvmeof deployment test
Similar to what is done for iscsi, basic deployment
test to make sure we can deploy the daemon and
it comes up in running state with no issue

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:50:16 -04:00
Adam King
8bf99ba7b0 mgr/cephadm: still remove daemons in error state if ok-to-stop fails
The ok-to-stop function works for certain daemons
by checking if there are at least a certain number
(typically 1) daemon(s) that are actually running
and saying it's not ok-to-stop if if that won't
be true after the removals. This case breaks down
when all the daemons are in error state, making
it so cephadm will refuse to remove a set of
daemons that aren't even working because they're
not "ok to stop". Since ok-to-stop works in a
yes or no fashion, something like this where we
want to be willing to remove a certain subset
(or potentially all currently deployed) daemons
it's easier to keep this logic as part of applying
the service

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:49:28 -04:00
Adam King
bad1259e38 cephadm: mount keyring deployed for nvmeof daemon
Before, we were just using the client.admin keyring
as a temporary workaround while we figured out
how to get the keyring to work. We should swap
over to using the keyring we actually generated
for the nvmeof daemon.

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:49:28 -04:00
Adam King
3e8ad229f7 mgr/cephadm: add rados_id to nvmeof conf
This is going to be used as the rados_id
to be set when connecting to the cluster using
the keyring we generate for the nvmeof daemon.

The python librados library defaults the name
to "client.admin" and so if we don't provide
a name or rados_id, we'll only be able to
use nvmeof with the "client.admin" keyring

Signed-off-by: Adam King <adking@redhat.com>
2023-08-08 10:49:28 -04:00
kchheda3
85c4c8ca19 rgw: enrich the sync notification failed log line.
Signed-off-by: kchheda3 <kchheda3@bloomberg.net>
2023-08-08 19:11:48 +05:30
Zac Dover
a0e638129d doc/rados: edit operations/add-or-rm-mons (1 of x)
Edit the first part of doc/rados/operations/add-or-rm-mons.rst.

Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Signed-off-by: Zac Dover <zac.dover@proton.me>
2023-08-08 23:32:39 +10:00
Patrick Donnelly
ca4d0dc42b
qa: add test cases for vanilla ops commands
To test they work, not that the output is useful.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:42 -04:00
Patrick Donnelly
5c7dea32bb
mds: dump locks when printing mutation ops
For debugging where an operation may be stuck.

Fixes: https://tracker.ceph.com/issues/62086
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
224ba5ad4c
common/TrackedOp: support overriding the _dump method
When dumping an op, it may be desirable to alter how it is dumped depending on
which locks are held. As it happens, I plan to dump extra information if the
mds_lock is held!

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
051916ec69
mds: remove op field obsoleted by more usable "reqid"
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
79c7ddce8a
mds: dump metareq_t instead of full op
This avoids infinite recursion when dumping locks with xlock_by
non-null.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
c62333453a
mds: add lock type to formatter dump of SimpleLock
Otherwise you can't easily know which lock it is in the corresponding
MDSCacheObject.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
342d1210de
mds: mark print methods const
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
98d50889f6
mds: drop MDRequestImpl::msg_lock
TrackedOp::lock is already suitable for this purpose.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
9d75d6b0bd
mds: lock TrackedOp when dumping
The MDS does not generally bother locking a Mutation before changing
anything so this lock provides weak protection. In any case, try to
improve on that...

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:41 -04:00
Patrick Donnelly
60d1bdb1f5
mds: avoid recursive locks dumping state
Also: fix return to std::string. A string_view is not a thread-safe return.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:40 -04:00
Patrick Donnelly
36eaa495eb
common/TrackedOp: fix race updating description with proper lock
It is not safe to "cache" a member which may be changed by a racing thread.

This reworks the locking so we can do a light-weight check if the description
is already generated wihtout acquiring the heavier TrackedOp::lock. If it's not
available yet or it needs regenerated, then get the proper locks to generate
it.

Fixes: e45f5c2c33
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:40 -04:00
Patrick Donnelly
5f57c526b2
common/Formatter: add support for dumping null
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:40 -04:00
Patrick Donnelly
dd7a99349f
common/Formatter: refactor generating xml name
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2023-08-08 08:58:40 -04:00
Adam Kupczyk
7195fb2ae1
Merge pull request #52543 from aclamk/wip-aclamk-fix-valgrind-bluefs-test
os/bluestore: Fix unittest_bluefs
2023-08-08 13:37:17 +02:00
Xuehan Xu
f11504cd5d crimson/os/seastore/lba_manager: lba map value may contain laddr
Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
2023-08-08 17:00:13 +08:00
Pere Diaz Bou
720bb10e30 mgr/dashboard: paginate hosts
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com>
Fixes: https://tracker.ceph.com/issues/56513
2023-08-08 10:40:28 +02:00
Leonid S. Usov
8262586cd0
Merge pull request #52792 from leonid-s-usov/bulk-data-pool
mgr/volumes: create bulk data pool for new volumes
2023-08-08 11:24:59 +03:00
Guillaume Abrioux
2612c91c31
Merge pull request #50427 from ifed01/wip-ifed-encrypted-ceph-volume
ceph_volume: support encrypted volumes for lvm new-db/new-wal/migrate  commands
2023-08-08 09:57:33 +02:00
Nizamudeen A
76bc438f81
Merge pull request #52870 from rhcs-dashboard/gh-add-to-project-link-broken
.github: pr-triage broken link fix

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
2023-08-08 12:25:40 +05:30
Nizamudeen A
38ee272419 .github: pr-triage broken link fix
The link I put was broken so replacing it with the correct one:

Fixes: https://github.com/ceph/ceph/pull/52455

Signed-off-by: Nizamudeen A <nia@redhat.com>
2023-08-08 10:34:59 +05:30