Skip to content

Commit b6b16d8

Browse files
ajaymovvaAjay Kumar Movva
andauthored
Integrate IO Based AdmissionController to AdmissionControl Framework (#12583)
* Integrated IO Based AdmissionController to AdmissionControl Framework Signed-off-by: Ajay Kumar Movva <[email protected]> * Integration Tests Fixes to Add Delay for Trackers Update Signed-off-by: Ajay Kumar Movva <[email protected]> * Fixing Integ Test and Removed Multi Node Tests Signed-off-by: Ajay Kumar Movva <[email protected]> * Addressing Comments Signed-off-by: Ajay Kumar Movva <[email protected]> --------- Signed-off-by: Ajay Kumar Movva <[email protected]> Co-authored-by: Ajay Kumar Movva <[email protected]>
1 parent da5b205 commit b6b16d8

File tree

14 files changed

+874
-388
lines changed

14 files changed

+874
-388
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
1919
- Remote reindex: Add support for configurable retry mechanism ([#12561](https://github.com/opensearch-project/OpenSearch/pull/12561))
2020
- [Admission Control] Integrate IO Usage Tracker to the Resource Usage Collector Service and Emit IO Usage Stats ([#11880](https://github.com/opensearch-project/OpenSearch/pull/11880))
2121
- Tracing for deep search path ([#12103](https://github.com/opensearch-project/OpenSearch/pull/12103))
22+
- [Admission Control] Integrated IO Based AdmissionController to AdmissionControl Framework ([#12583](https://github.com/opensearch-project/OpenSearch/pull/12583))
2223

2324
### Dependencies
2425
- Bump `log4j-core` from 2.18.0 to 2.19.0

server/src/internalClusterTest/java/org/opensearch/ratelimitting/admissioncontrol/AdmissionControlMultiNodeIT.java

Lines changed: 0 additions & 292 deletions
This file was deleted.

server/src/main/java/org/opensearch/common/settings/ClusterSettings.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@
140140
import org.opensearch.plugins.PluginsService;
141141
import org.opensearch.ratelimitting.admissioncontrol.AdmissionControlSettings;
142142
import org.opensearch.ratelimitting.admissioncontrol.settings.CpuBasedAdmissionControllerSettings;
143+
import org.opensearch.ratelimitting.admissioncontrol.settings.IoBasedAdmissionControllerSettings;
143144
import org.opensearch.repositories.fs.FsRepository;
144145
import org.opensearch.rest.BaseRestHandler;
145146
import org.opensearch.script.ScriptService;
@@ -708,6 +709,9 @@ public void apply(Settings value, Settings current, Settings previous) {
708709
CpuBasedAdmissionControllerSettings.CPU_BASED_ADMISSION_CONTROLLER_TRANSPORT_LAYER_MODE,
709710
CpuBasedAdmissionControllerSettings.INDEXING_CPU_USAGE_LIMIT,
710711
CpuBasedAdmissionControllerSettings.SEARCH_CPU_USAGE_LIMIT,
712+
IoBasedAdmissionControllerSettings.IO_BASED_ADMISSION_CONTROLLER_TRANSPORT_LAYER_MODE,
713+
IoBasedAdmissionControllerSettings.SEARCH_IO_USAGE_LIMIT,
714+
IoBasedAdmissionControllerSettings.INDEXING_IO_USAGE_LIMIT,
711715
IndicesService.CLUSTER_INDEX_RESTRICT_REPLICATION_TYPE_SETTING,
712716

713717
// Concurrent segment search settings

server/src/main/java/org/opensearch/node/resource/tracker/NodeResourceUsageTracker.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
package org.opensearch.node.resource.tracker;
1010

11+
import org.apache.lucene.util.Constants;
1112
import org.opensearch.common.lifecycle.AbstractLifecycleComponent;
1213
import org.opensearch.common.settings.ClusterSettings;
1314
import org.opensearch.common.settings.Settings;
@@ -69,6 +70,9 @@ public IoUsageStats getIoUsageStats() {
6970
* Checks if all of the resource usage trackers are ready
7071
*/
7172
public boolean isReady() {
73+
if (Constants.LINUX) {
74+
return memoryUsageTracker.isReady() && cpuUsageTracker.isReady() && ioUsageTracker.isReady();
75+
}
7276
return memoryUsageTracker.isReady() && cpuUsageTracker.isReady();
7377
}
7478

0 commit comments

Comments
 (0)