Nizamudeen A [Thu, 19 Sep 2024 03:39:20 +0000 (09:09 +0530)]
mgr/dashboard: ignore exceptions raised when no cert/key found
for nvmeof client, when there are no cert found, it raises an exception
which gets logged more often because the dashboard polls the client
frequently.
```
Sep 18 13:40:54 ceph-node-00 ceph-mgr[2716]: log_channel(cephadm) log [ERR] : No secret found for entity nvmeof_root_ca_cert with service name nvmeof.rbd.default
Traceback (most recent call last):
File "/usr/share/ceph/mgr/orchestrator/_interface.py", line 140, in wrapper
return OrchResult(f(*args, **kwargs))
File "/usr/share/ceph/mgr/cephadm/module.py", line 3271, in cert_store_get_cert
raise OrchSecretNotFound(entity=entity, service_name=service_name, hostname=hostname)
cephadm.inventory.OrchSecretNotFound: No secret found for entity nvmeof_root_ca_cert with service name nvmeof.rbd.default
Sep 18 13:40:54 ceph-node-00 ceph-mgr[2716]: [dashboard INFO orchestrator] is orchestrator available: True,
Sep 18 13:40:54 ceph-node-00 ceph-mgr[2716]: [cephadm ERROR orchestrator._interface] No secret found for entity nvmeof_server_cert with service name nvmeof.rbd.default
Traceback (most recent call last):
File "/usr/share/ceph/mgr/orchestrator/_interface.py", line 140, in wrapper
return OrchResult(f(*args, **kwargs))
File "/usr/share/ceph/mgr/cephadm/module.py", line 3271, in cert_store_get_cert
raise OrchSecretNotFound(entity=entity, service_name=service_name, hostname=hostname)
cephadm.inventory.OrchSecretNotFound: No secret found for entity nvmeof_server_cert with service name nvmeof.rbd.default
Sep 18 13:40:54 ceph-node-00 ceph-0377c7c2-75c1-11ef-bb0e-5254000e47d2-mgr-ceph-node-00-cvrrld[2712]: 2024-09-18T13:40:54.529+0000 7fbbd9272640 -1 log_channel(cephadm) log [ERR] : No secret found for entity nvmeof_server_cert with service name nvmeof.rbd.default
Sep 18 13:40:54 ceph-node-00 ceph-0377c7c2-75c1-11ef-bb0e-5254000e47d2-mgr-ceph-node-00-cvrrld[2712]: Traceback (most recent call last):
Sep 18 13:40:54 ceph-node-00 ceph-0377c7c2-75c1-11ef-bb0e-5254000e47d2-mgr-ceph-node-00-cvrrld[2712]: File "/usr/share/ceph/mgr/orchestrator/_interface.py", line 140, in wrapper
Sep 18 13:40:54 ceph-node-00 ceph-0377c7c2-75c1-11ef-bb0e-5254000e47d2-mgr-ceph-node-00-cvrrld[2712]: return OrchResult(f(*args, **kwargs))
Sep 18 13:40:54 ceph-node-00 ceph-0377c7c2-75c1-11ef-bb0e-5254000e47d2-mgr-ceph-node-00-cvrrld[2712]: File "/usr/share/ceph/mgr/cephadm/module.py", line 3271, in cert_store_get_cert
Sep 18 13:40:54 ceph-node-00 ceph-0377c7c2-75c1-11ef-bb0e-5254000e47d2-mgr-ceph-node-00-cvrrld[2712]: raise OrchSecretNotFound(entity=entity, service_name=service_name, hostname=hostname)
Sep 18 13:40:54 ceph-node-00 ceph-0377c7c2-75c1-11ef-bb0e-5254000e47d2-mgr-ceph-node-00-cvrrld[2712]: cephadm.inventory.OrchSecretNotFound: No secret found for entity nvmeof_server_cert with service name nvmeof.rbd.default
Sep 18 13:40:54 ceph-node-00 ceph-mgr[2716]: log_channel(cephadm) log [ERR] : No secret found for entity nvmeof_server_cert with service name nvmeof.rbd.default
Traceback (most recent call last):
File "/usr/share/ceph/mgr/orchestrator/_interface.py", line 140, in wrapper
return OrchResult(f(*args, **kwargs))
File "/usr/share/ceph/mgr/cephadm/module.py", line 3271, in cert_store_get_cert
raise OrchSecretNotFound(entity=entity, service_name=service_name, hostname=hostname)
cephadm.inventory.OrchSecretNotFound: No secret found for entity nvmeof_server_cert with service name nvmeof.rbd.default
Sep 18 13:40:54 ceph-node-00 ceph-mgr[2716]: [dashboard INFO nvmeof_client] Insecurely connecting to: 192.168.100.101:5500
```
Fixes: https://tracker.ceph.com/issues/68141 Signed-off-by: Nizamudeen A <nia@redhat.com>
* refs/pull/59111/head:
doc: document earmark option for subvolume and new commands
qa/cephfs: update tests for test_volumes & unit-test for earmarking
mgr/volumes: add earmarking for subvol
Nizamudeen A [Thu, 12 Sep 2024 13:21:13 +0000 (18:51 +0530)]
mgr/dashboard: fix minor issues in carbon tables
- fixes table in table structure's unusual padding
- fixes the ceph fs details page where table was getting hidden
- improving the subvolume list page by changing the spacings there
- hide the refresh button where it shouldn't be shown.
Fixes: https://tracker.ceph.com/issues/68050 Signed-off-by: Nizamudeen A <nia@redhat.com>
* refs/pull/55421/head:
qa/cephfs: add test to verify backtrace update failure on deleted data pool
mds: batch backtrace updates by pool-id when expiring a log segment
mds: dump log segment in segment expiry callback
mds: dump log segment end along with offset
Reviewed-by: Xiubo Li <xiubli@redhat.com> Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
- Implemented earmarking functionality for subvolumes and subvolume groups,
ensuring that they do not share the same subvolume or subvolume group to avoid
data corruption due to unsupported mixed protocol use.
- Added a command to set set/rm earmark from a given subvolume / subvolume group
- Adding __init__.py for python-common/ceph/fs dir to have it as a package.
- Fixed subvolume info command when no earmark is set.
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
Fixes some doc lint and also fixed qa tests for having both 3 & 4 protocols
by default in expot config.
- enables mTLS support from dashboard
- adds unit tests related to mTLS support
- can enable mTLS
- can disable mTLS
- inlcuded refactoring from prev commit
mgr/dashboard: Adding group and pool name to service name
- Pre-populating the service name field with the format `nvmeof.<pool_name>.<group_name>`.
- This can be changed by user but by default this value will be there.
- This will help user to quickly fill form and proceed hence improving usability.
- cephadm also uses this format as of now this convention so it will make UI aligned with CLI experience
- updates unit tests to improve coverage
- hides`count` values as that is not needed for 'nvmeof' only hosts and labels required.
Nizamudeen A [Mon, 9 Sep 2024 11:15:15 +0000 (16:45 +0530)]
mgr/dashboard: fix UI modal issues
- Fix bs-modal getting hidden behind navbar
- Reuse the project name for tab title
- Readonly user shows an empty space in the administration dropdown
- Physical Disks Identify modal not opening up
- add e2e in cephadm to make sure the modal always comes up
- Primary action doesn't need to be displayed for the read-only user
Fixes: https://tracker.ceph.com/issues/67547 Signed-off-by: Nizamudeen A <nia@redhat.com>
Add a second method of changing the value of osd_deep_scrub_interval to
remedy the condition indicated by the "PGs not deep-scrubbed in time"
warning.
This procedure was developed by Eugen Block, and is at the time of this
commit available on his blog at
https://heiterbiswolkig.blogs.nde.ag/2024/09/06/pgs-not-deep-scrubbed-in-time/
Co-authored-by: Eugen Block <eblock@nde.ag> Signed-off-by: Zac Dover <zac.dover@proton.me>
An indentation of five spaces relative to the previous line creates a
command that is copyable with a single mouse click. This commit adds
those copyabale commands to the procedure in the section "Building
Ceph".
orch: refactor boolean handling in drive group spec
The intent of 42721c03ee6f was to address an issue where boolean
parameters weren't handled correctly.
I noticed that a parameter (`tpm2`) was missed, which made me realize
that maintaining a list of these boolean parameters is necessary.
To simplify things, we should only accept `"true"` or `"false"` (in any case),
allowing us to avoid the need to maintain a list of boolean parameters.
This change introduces a `list_drive_group_spec_bool_arg` to store boolean
arguments related to drive group specifications, simplifying the validation
process for boolean values by directly checking if the values are 'true' or 'false'.
Casey Bodley [Mon, 4 Dec 2023 21:47:12 +0000 (16:47 -0500)]
rgw/role: add rgwrados::role interface for role metadata
move everything from class RadosRole into driver/rados/role.cc and use
RGWSI_SysObj instead of the metadata backend. narrows the RGWRole
interface by handling the name/path objects internally
rgwrados::role::write() adds/remove name and path linkages in case they
change. admin ops don't allow this, but 'metadata put' could upload
arbitrary json that does change them
Casey Bodley [Fri, 1 Dec 2023 23:24:08 +0000 (18:24 -0500)]
rgw/metadata: remove backend stuff from otp metadata handler
inherit from RGWMetadataHandler instead of
RGWMetadataHandler_GenericMetaBE to avoid all of the metadata backend
abstractions, and just call into the cls and sysobj services directly
The previous default of 25 objects per chunk proved to take too long
(many hundreds of milliseconds) on a busy cluster. As the scrubber
locks all objects in the chunk for the duration, a large chunk size
can cause a significant impact on the client ops' latencies.
doc/install: Keep the name field of the created user consistent with the node name in the Start RADOSGW service command
If the user name does not match the name of the node that started the RADOSGW service, this will cause confusion for those who are new to ceph. Because they can't start the radosgw service normally as shown in the tutorial.
mgr/dashboard: mgr/dashboard: Select no device by default in EC profile
Fixes https://tracker.ceph.com/issues/67853
When EC pools are created with device class specified, the pools are created with just 1 PG and autoscaler does not work.
PG autoscaler not working on a cluster where pools have multiple overlapping roots is a known issue, and bug is raised for same :>
Also renames "let ceph decide" option to "All devices" in crush rule and ec profile component.
Updates unit tests for ec profile modal Signed-off-by: Afreen Misbah <afreen23.git@gmail.com>
Nizamudeen A [Tue, 3 Sep 2024 12:29:47 +0000 (17:59 +0530)]
mgr/dashboard: expose gw_groups list api
also if the cephadm is available, make the api smart enough to
understand the running daemons and get its gateway_addr instead of
taking the first one in the list so that the HA will be there for the UI
and API as well
Fixes: https://tracker.ceph.com/issues/67774 Signed-off-by: Nizamudeen A <nia@redhat.com>