From 542c77f555ba928b4266ef0c411bc0cbe5bc9152 Mon Sep 17 00:00:00 2001 From: Abhishek Lekshmanan Date: Thu, 28 Mar 2019 15:09:12 +0100 Subject: [PATCH] config-ref: add a note on current scheduler settings. Adding a note on configuirables for max concurrent requests and the rest of experimental options for tuning dmclock scheduler Signed-off-by: Abhishek Lekshmanan --- doc/radosgw/config-ref.rst | 59 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/doc/radosgw/config-ref.rst b/doc/radosgw/config-ref.rst index 37bb8eea9007e..6c80663dbad5a 100644 --- a/doc/radosgw/config-ref.rst +++ b/doc/radosgw/config-ref.rst @@ -943,6 +943,65 @@ Barbican Settings :Default: None +QoS settings +------------ + +.. versionadded:: Nautilus + +The ``civetweb`` frontend has a threading model that uses a thread per +connection and hence automatically throttled by ``rgw thread pool size`` +configurable when it comes to accepting connections. The ``beast`` frontend is +not restricted by the thread pool size when it comes to accepting new +connections, so a scheduler abstraction is introduced in Nautilus release which +for supporting ways for scheduling requests in the future. + +Currently the scheduler defaults to a throttler which throttles the active +connections to a configured limit. QoS based on mClock is currently in an +*experimental* phase and not recommended for production yet. Current +implementation of *dmclock_client* op queue divides RGW Ops on admin, auth +(swift auth, sts) metadata & data requests. + + +``rgw max concurrent requests`` + +:Description: Maximum number of concurrent HTTP requests that the beast frontend + will process. Tuning this can help to limit memory usage under + heavy load. +:Type: Integer +:Default: 1024 + + +``rgw scheduler type`` + +:Description: The type of RGW Scheduler to use. Valid values are throttler, + dmclock. Currently defaults to throttler which throttles beast + frontend requests. dmclock is *experimental* and will need the + experimental flag set + + +The options below are to tune the experimental dmclock scheduler. op_class for +the flags below is one of admin, auth, metadata or data + +``rgw_dmclock__res`` + +:Description: The mclock reservation for `op_class` requests +:Type: float +:Default: 100.0 + +``rgw_dmclock__wgt`` + +:Description: The mclock weight for `op_class` requests +:Type: float +:Default: 1.0 + +``rgw_dmclock__lim`` + +:Description: The mclock limit for `op_class` requests +:Type: float +:Default: 0.0 + + + .. _Architecture: ../../architecture#data-striping .. _Pool Configuration: ../../rados/configuration/pool-pg-config-ref/ .. _Cluster Pools: ../../rados/operations/pools -- 2.39.5