• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java SchedulerNode类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode的典型用法代码示例。如果您正苦于以下问题:Java SchedulerNode类的具体用法?Java SchedulerNode怎么用?Java SchedulerNode使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



SchedulerNode类属于org.apache.hadoop.yarn.server.resourcemanager.scheduler包,在下文中一共展示了SchedulerNode类的16个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: testAddAndRemoveAppFromCapacityScheduler

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
@Test
public void testAddAndRemoveAppFromCapacityScheduler() throws Exception {
  CapacitySchedulerConfiguration conf = new CapacitySchedulerConfiguration();
  setupQueueConfiguration(conf);
  conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
    ResourceScheduler.class);
  MockRM rm = new MockRM(conf);
  @SuppressWarnings("unchecked")
  AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode> cs =
      (AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode>) rm
        .getResourceScheduler();

  SchedulerApplication<SchedulerApplicationAttempt> app =
      TestSchedulerUtils.verifyAppAddedAndRemovedFromScheduler(
        cs.getSchedulerApplications(), cs, "a1");
  Assert.assertEquals("a1", app.getQueue().getQueueName());
}
 
开发者ID:naver,项目名称:hadoop,代码行数:18,代码来源:TestCapacityScheduler.java


示例2: mockSchedulerNodes

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
/**
 * Format is:
 * host1=partition;
 * host2=partition;
 */
private void mockSchedulerNodes(String schedulerNodesConfigStr)
    throws IOException {
  String[] nodesConfigStrArray = schedulerNodesConfigStr.split(";");
  for (String p : nodesConfigStrArray) {
    NodeId nodeId = NodeId.newInstance(p.substring(0, p.indexOf("=")), 1);
    String partition = p.substring(p.indexOf("=") + 1, p.length());

    SchedulerNode sn = mock(SchedulerNode.class);
    when(sn.getNodeID()).thenReturn(nodeId);
    when(sn.getPartition()).thenReturn(partition);
    nodeIdToSchedulerNodes.put(nodeId, sn);

    LOG.debug("add scheduler node, id=" + nodeId + ", partition=" + partition);
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:21,代码来源:TestProportionalCapacityPreemptionPolicyForNodePartitions.java


示例3: rollbackContainerResource

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private void rollbackContainerResource(
    ContainerId containerId) {
  RMContainer rmContainer = getRMContainer(containerId);
  if (rmContainer == null) {
    LOG.info("Cannot rollback resource for container " + containerId +
        ". The container does not exist.");
    return;
  }
  FiCaSchedulerApp application = getCurrentAttemptForContainer(containerId);
  if (application == null) {
    LOG.info("Cannot rollback resource for container " + containerId +
        ". The application that the container belongs to does not exist.");
    return;
  }
  LOG.info("Roll back resource for container " + containerId);
  LeafQueue leafQueue = (LeafQueue) application.getQueue();
  synchronized(leafQueue) {
    SchedulerNode schedulerNode =
        getSchedulerNode(rmContainer.getAllocatedNode());
    SchedContainerChangeRequest decreaseRequest =
        new SchedContainerChangeRequest(this.rmContext, schedulerNode,
            rmContainer, rmContainer.getLastConfirmedResource());
    decreaseContainer(decreaseRequest, application);
  }
}
 
开发者ID:hopshadoop,项目名称:hops,代码行数:26,代码来源:CapacityScheduler.java


示例4: testAddAndRemoveAppFromFiFoScheduler

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
@Test
public void testAddAndRemoveAppFromFiFoScheduler() throws Exception {
  Configuration conf = new Configuration();
  conf.setClass(YarnConfiguration.RM_SCHEDULER, FifoScheduler.class,
    ResourceScheduler.class);
  MockRM rm = new MockRM(conf);
  @SuppressWarnings("unchecked")
  AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode> fs =
      (AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode>) rm
        .getResourceScheduler();
  TestSchedulerUtils.verifyAppAddedAndRemovedFromScheduler(
    fs.getSchedulerApplications(), fs, "queue");
}
 
开发者ID:naver,项目名称:hadoop,代码行数:14,代码来源:TestFifoScheduler.java


示例5: testAddAndRemoveAppFromFairScheduler

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
@Test
public void testAddAndRemoveAppFromFairScheduler() throws Exception {
  AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode> scheduler =
      (AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode>) resourceManager
        .getResourceScheduler();
  TestSchedulerUtils.verifyAppAddedAndRemovedFromScheduler(
    scheduler.getSchedulerApplications(), scheduler, "default");
}
 
开发者ID:naver,项目名称:hadoop,代码行数:9,代码来源:TestFairScheduler.java


示例6: serviceInit

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void serviceInit(Configuration conf) throws Exception {
  ((AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode>)
      scheduler).init(conf);
  super.serviceInit(conf);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:ResourceSchedulerWrapper.java


示例7: serviceStart

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void serviceStart() throws Exception {
  ((AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode>)
      scheduler).start();
  super.serviceStart();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:ResourceSchedulerWrapper.java


示例8: serviceStop

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void serviceStop() throws Exception {
  ((AbstractYarnScheduler<SchedulerApplicationAttempt, SchedulerNode>)
      scheduler).stop();
  super.serviceStop();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:ResourceSchedulerWrapper.java


示例9: addAMNodeToBlackList

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private void addAMNodeToBlackList(NodeId nodeId) {
  SchedulerNode schedulerNode = scheduler.getSchedulerNode(nodeId);
  if (schedulerNode != null) {
    blacklistedNodesForAM.addNode(schedulerNode.getNodeName());
  } else {
    LOG.info(nodeId + " is not added to AM blacklist for "
        + applicationAttemptId + ", because it has been removed");
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:10,代码来源:RMAppAttemptImpl.java


示例10: setReservation

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private synchronized void setReservation(SchedulerNode node) {
  String rackName = node.getRackName() == null ? "NULL" : node.getRackName();
  Set<String> rackReservations = reservations.get(rackName);
  if (rackReservations == null) {
    rackReservations = new HashSet<>();
    reservations.put(rackName, rackReservations);
  }
  rackReservations.add(node.getNodeName());
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:10,代码来源:FSAppAttempt.java


示例11: clearReservation

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private synchronized void clearReservation(SchedulerNode node) {
  String rackName = node.getRackName() == null ? "NULL" : node.getRackName();
  Set<String> rackReservations = reservations.get(rackName);
  if (rackReservations != null) {
    rackReservations.remove(node.getNodeName());
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:8,代码来源:FSAppAttempt.java


示例12: allocateIncreaseRequestFromReservedContainer

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private CSAssignment allocateIncreaseRequestFromReservedContainer(
    SchedulerNode node, Resource cluster,
    SchedContainerChangeRequest increaseRequest) {
  if (Resources.fitsIn(rc, cluster, increaseRequest.getDeltaCapacity(),
      node.getAvailableResource())) {
    // OK, we can allocate this increase request
    // Unreserve it first
    application.unreserve(increaseRequest.getPriority(),
        (FiCaSchedulerNode) node, increaseRequest.getRMContainer());
    
    // Notify application
    application.increaseContainer(increaseRequest);
    
    // Notify node
    node.increaseContainer(increaseRequest.getContainerId(),
        increaseRequest.getDeltaCapacity());

    return createSuccessfullyIncreasedCSAssignment(increaseRequest, true);
  } else {
    if (LOG.isDebugEnabled()) {
      LOG.debug("Failed to allocate reserved increase request:"
          + increaseRequest.toString()
          + ". There's no enough available resource");
    }
    
    // We still cannot allocate this container, will wait for next turn
    return CSAssignment.SKIP_ASSIGNMENT;
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:30,代码来源:IncreaseContainerAllocator.java


示例13: verifyAvailableResourceOfSchedulerNode

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private void verifyAvailableResourceOfSchedulerNode(MockRM rm, NodeId nodeId,
    int expectedMemory) {
  CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
  SchedulerNode node = cs.getNode(nodeId);
  Assert
      .assertEquals(expectedMemory, node.getAvailableResource().getMemory());
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:8,代码来源:TestContainerResizing.java


示例14: setResourceAndNodeDetails

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private void setResourceAndNodeDetails() {
  when(mCS.getClusterResource()).thenReturn(clusterResources);
  when(lm.getResourceByLabel(anyString(), any(Resource.class))).thenReturn(
      clusterResources);

  SchedulerNode mNode = mock(SchedulerNode.class);
  when(mNode.getPartition()).thenReturn(RMNodeLabelsManager.NO_LABEL);
  when(mCS.getSchedulerNode(any(NodeId.class))).thenReturn(mNode);
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:10,代码来源:TestProportionalCapacityPreemptionPolicy.java


示例15: subtractResourcesOnBlacklistedNodes

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
private void subtractResourcesOnBlacklistedNodes(
    Resource availableResources) {
  if (appSchedulingInfo.getAndResetBlacklistChanged()) {
    blacklistNodeIds.clear();
    scheduler.addBlacklistedNodeIdsToList(this, blacklistNodeIds);
  }
  for (NodeId nodeId: blacklistNodeIds) {
    SchedulerNode node = scheduler.getSchedulerNode(nodeId);
    if (node != null) {
      Resources.subtractFromNonNegative(availableResources,
          node.getAvailableResource());
    }
  }
}
 
开发者ID:hopshadoop,项目名称:hops,代码行数:15,代码来源:FSAppAttempt.java


示例16: deductPreemptableResourcesBasedSelectedCandidates

import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode; //导入依赖的package包/类
public static void deductPreemptableResourcesBasedSelectedCandidates(
    CapacitySchedulerPreemptionContext context,
    Map<ApplicationAttemptId, Set<RMContainer>> selectedCandidates) {
  for (Set<RMContainer> containers : selectedCandidates.values()) {
    for (RMContainer c : containers) {
      SchedulerNode schedulerNode = context.getScheduler()
          .getSchedulerNode(c.getAllocatedNode());
      if (null == schedulerNode) {
        continue;
      }

      String partition = schedulerNode.getPartition();
      String queue = c.getQueueName();
      TempQueuePerPartition tq = context.getQueueByPartition(queue,
          partition);

      Resource res = c.getReservedResource();
      if (null == res) {
        res = c.getAllocatedResource();
      }

      if (null != res) {
        tq.deductActuallyToBePreempted(context.getResourceCalculator(),
            tq.totalPartitionResource, res);
        Collection<TempAppPerPartition> tas = tq.getApps();
        if (null == tas || tas.isEmpty()) {
          continue;
        }

        deductPreemptableResourcePerApp(context, tq.totalPartitionResource,
            tas, res, partition);
      }
    }
  }
}
 
开发者ID:hopshadoop,项目名称:hops,代码行数:36,代码来源:CapacitySchedulerPreemptionUtils.java



注:本文中的org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNode类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java KeysAndAttributes类代码示例发布时间:2022-05-22
下一篇:
Java BeanPropertyItemSqlParameterSourceProvider类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap