Zac Dover [Fri, 29 Nov 2024 03:12:02 +0000 (13:12 +1000)]
doc/radosgw: update rgw_dns_name doc
Update doc/radosgw/s3/commons.rst with the changes made by Jiffin Tony
Thottan in https://github.com/ceph/ceph/pull/54524 and the suggestions
made in that same PR by Anthony D'Atri.
Explain how to set rgw_dns_name to a domain name in order to configure
access to virtual hosted buckets.
sajibreadd [Mon, 27 May 2024 07:30:06 +0000 (13:30 +0600)]
Warning added for slow operations and stalled read in BlueStore. User can control how much time the warning should persist after last occurence and maximum number of operations as a threshold will be considered for the warning.
common/options: Change HDD OSD shard configuration defaults for mClock
Based on tests performed at scale on a HDD based cluster, it was found
that scheduling with mClock was not optimal with multiple OSD shards. For
e.g., in the scaled cluster with multiple OSD node failures, the client
throughput was found to be inconsistent across test runs coupled with
multiple reported slow requests.
However, the same test with a single OSD shard and with multiple worker
threads yielded significantly better results in terms of consistency of
client and recovery throughput across multiple test runs.
For more details see https://tracker.ceph.com/issues/66289.
Therefore, as an interim measure until the issue with multiple OSD shards
(or multiple mClock queues per OSD) is investigated and fixed, the
following change to the default HDD OSD shard configuration is made:
The other changes in this commit include:
- Doc change to the OSD and mClock config reference describing
this change.
- OSD troubleshooting entry on the procedure to change the shard
configuration for clusters affected by this issue running on older
releases.
- Add release note for this change.
Conflicts:
doc/rados/troubleshooting/troubleshooting-osd.rst
- Included the troubleshooting entry before the "Flapping OSDs" section.
PendingReleaseNotes
- Moved the release note under 18.2.4 section and removed unrelated entries
Zac Dover [Sat, 23 Nov 2024 12:32:13 +0000 (22:32 +1000)]
doc/cephadm: Clarify "Deploying a new Cluster"
Change the title of the section "Deploying a new Ceph cluster" to "Using
cephadm to Deploy a New Ceph Cluster". This is part of the initiative to
separate package-related documentation from container-based
documenation.
Zac Dover [Mon, 11 Nov 2024 23:31:28 +0000 (09:31 +1000)]
doc/rados: correct "full ratio" note
Correct a note that directed users not to add an OSD after the cluster
has reached its "full ratio". The note now says "Do not let your cluster
reach its full ratio before adding an OSD."
Hat tip: Oskar Berggren
Fixes: https://tracker.ceph.com/issues/68900 Co-authored-by: Oskar Berggren <oskar.berggren@gmail.com> Signed-off-by: Zac Dover <zac.dover@proton.me>
(cherry picked from commit f1a2637c79a15c26a769661dd72ca68d766b2f0d)
Patrick Donnelly [Thu, 24 Oct 2024 18:00:10 +0000 (14:00 -0400)]
mds: add or update MDS thread names
To be consistent and sensical.
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
(cherry picked from commit a2a989aaa5e9780d98ec9c5cabc66ac2c3a387a4) Signed-off-by: Milind Changire <mchangir@redhat.com>
Conflicts:
src/mds/MDLog.cc (no upkeep thread in reef)
src/mds/QuiesceAgent.h (not available in reef)
src/mds/QuiesceDbManager.cc (not available in reef)
Patrick Donnelly [Thu, 24 Oct 2024 16:34:29 +0000 (12:34 -0400)]
log: cache recent threads up to a day
In general, a pthread implementation reuses thread ids routinely so the
circular_buffer is there to help us see what the thread name was historically
(capped at 4 entries).
However, to guard against this map from growing without bound, discard entries
that are more than a day old. This would happen if a thread logged an Entry and
has since disappeared for more than a day.
Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
(cherry picked from commit bfe489ed19d599b67cacb0bdd4958f36661248f2) Signed-off-by: Milind Changire <mchangir@redhat.com>
Patrick Donnelly [Thu, 24 Oct 2024 03:16:03 +0000 (23:16 -0400)]
common: cache pthread names
This provides common ceph entrypoints for the pthread_[gs]name functions which
will also cache a thread_local copy. This also removes the pthread_t parameter
which precipitated the bug i50743.
Obviously, the overall goal here is to avoid system calls.
Conflicts:
src/ceph_nvmeof_monitor_client.cc (not available in reef)
src/common/ceph_timer.h
src/include/compat.h
src/mds/Beacon.cc
src/rgw/driver/rados/rgw_notify.cc
src/rgw/rgw_lua_background.cc (not available in reef)
See-also: https://tracker.ceph.com/issues/50743 Fixes: 0be8d01c9ddde0d7d24edd34dc75f6cfc861b5ba Fixes: https://tracker.ceph.com/issues/68691 Signed-off-by: Patrick Donnelly <pdonnell@ibm.com>
(cherry picked from commit 7de5af59c2741b4203cc17f619ca53096c97b8ff) Signed-off-by: Milind Changire <mchangir@redhat.com>
* pthread name is saved in a thread_local storage
* the thread_local name is copied into Entry object's ctor
* Log::dump_recent() reads the thread name from the Entry
object's data member when dumping logs
Zac Dover [Tue, 29 Oct 2024 07:27:43 +0000 (17:27 +1000)]
doc/start: separate package chart from container chart
Separate the packages-and-containers chart into two charts:
(1) a chart that shows which OSes Ceph builds packages for
(2) a chart that shows which OSes support Ceph's containers
common,osd: Use last valid OSD IOPS value if measured IOPS is unrealistic
The OSD's IOPS capacity is used by the mClock scheduler to determine the
quantum of bandwidth allocation for the various operations on the OSD.
Prior to this commit, maybe_override_max_osd_capacity_for_qos() only
checked if the measured IOPS capacity exceeded the higher threshold defined
by 'osd_mclock_iops_capacity_threshold_[hdd|ssd]' and if so fallback to the
last valid or the default IOPS capacity as defined by
osd_mclock_max_capacity_iops_[hdd|ssd].
It's quite possible that the reported IOPS is unrealistically low. This
could be due to transient factors on the underlying device or it could
indicate bad health of the device. Either way, the safer option would be
to fallback to the last valid or the default IOPS setting for that OSD in
order to avoid cluster performance (slow or stalled ops) issues down the
line.
Therefore, to handle this case, the commit introduces additional config
options viz.,
- osd_mclock_iops_capacity_low_threshold_hdd - set to 50 IOPS and
- osd_mclock_iops_capacity_low_threshold_ssd - set to 1000 IOPS
If the measured IOPS capacity doesn't fall within the low and high
threshold range, the default or the last valid IOPS capacity is used.
The existing cluster log warning is suitably modified to convey the
reason.
Additionally, for a couple of valgrind related teuthology tests, the
cluster warning is added to the ignorelist since the reported IOPS can
be very low due to slowness.
Zac Dover [Wed, 6 Nov 2024 12:22:14 +0000 (22:22 +1000)]
doc/cephadm: link to "host pattern" matching sect
Link to the "Placement by Pattern Matching" section in
doc/cephadm/services/index.rst from the "Advanced OSD Service
Specifications" section in doc/cephadm/services/osd.rst.
Nizamudeen A [Mon, 4 Nov 2024 05:42:32 +0000 (11:12 +0530)]
mgr/dashboard: remove cherrypy_backports.py
since its mostly used only for older cherrypy versions which we don't
support anymore in any of our recent upstream releases, we could remove
it completely
Zac Dover [Fri, 1 Nov 2024 13:43:07 +0000 (23:43 +1000)]
doc: s/Whereas,/Although/
Change the subordinating conjunction "Whereas" followed by a comma to
the less grammatically-incorrect "Although". I've been meaning to do
this since 22 Mar 2023.