private CapacitySchedulerConfiguration getSchedulerAutoCreatedQueueConfiguration( boolean overrideWithQueueMappings) throws IOException { CapacitySchedulerConfiguration schedulerConf = new CapacitySchedulerConfiguration(conf); TestCapacitySchedulerAutoCreatedQueueBase .setupQueueConfigurationForSingleAutoCreatedLeafQueue(schedulerConf); TestCapacitySchedulerAutoCreatedQueueBase.setupQueueMappings(schedulerConf, "c", overrideWithQueueMappings, new int[] {0, 1}); return schedulerConf; }
protected MockRM setupSchedulerInstance() throws Exception { CapacitySchedulerConfiguration conf = new CapacitySchedulerConfiguration(); setupQueueConfiguration(conf); conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class, ResourceScheduler.class); setupQueueMappings(conf, PARENT_QUEUE, true, new int[] {0, 1, 2, 3}); RMNodeLabelsManager mgr = setupNodeLabelManager(conf); MockRM newMockRM = new MockRM(conf) { protected RMNodeLabelsManager createNodeLabelManager() { return mgr; } }; newMockRM.start(); ((CapacityScheduler) newMockRM.getResourceScheduler()).start(); setupNodes(newMockRM); return newMockRM; }
public static CapacitySchedulerConfiguration setupQueueConfigurationForSimpleSurgicalPreemption( CapacitySchedulerConfiguration conf) { //set up auto created queue configs TestCapacitySchedulerAutoCreatedQueueBase.setupQueueMappings(conf, "c", true, new int[] { 1, 2 }); //setup new queues with one of them auto enabled // Define top-level queues // Set childQueue for root conf.setQueues(CapacitySchedulerConfiguration.ROOT, new String[] { "c" }); conf.setCapacity(C, 100f); conf.setUserLimitFactor(C, 1.0f); conf.setAutoCreateChildQueueEnabled(C, true); //Setup leaf queue template configs conf.setAutoCreatedLeafQueueConfigCapacity(C, 30.0f); conf.setAutoCreatedLeafQueueConfigMaxCapacity(C, 100.0f); conf.setAutoCreatedLeafQueueConfigUserLimit(C, 100); conf.setAutoCreatedLeafQueueConfigUserLimitFactor(C, 3.0f); return conf; }
TestCapacitySchedulerAutoCreatedQueueBase.setupQueueMappings(conf, "c", true, new int[] { 1, 2 }); TestCapacitySchedulerAutoCreatedQueueBase.setupQueueMappings(conf, "d", true, new int[] { 3, 4 }); TestCapacitySchedulerAutoCreatedQueueBase.setupQueueMappings(conf, "e", true, new int[] { 0 });
@Before public void setUp() throws Exception { CapacitySchedulerConfiguration conf = new CapacitySchedulerConfiguration(); setupQueueConfiguration(conf); conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class, ResourceScheduler.class); setupQueueMappings(conf, PARENT_QUEUE, true, new int[] { 0, 1, 2, 3 }); dispatcher = new SpyDispatcher(); rmAppEventEventHandler = new SpyDispatcher.SpyRMAppEventHandler(); dispatcher.register(RMAppEventType.class, rmAppEventEventHandler); RMNodeLabelsManager mgr = setupNodeLabelManager(conf); mockRM = new MockRM(conf) { protected RMNodeLabelsManager createNodeLabelManager() { return mgr; } }; cs = (CapacityScheduler) mockRM.getResourceScheduler(); cs.updatePlacementRules(); mockRM.start(); cs.start(); setupNodes(mockRM); }