当前位置: 首页>>代码示例>>Java>>正文


Java RMAppAttemptState.LAUNCHED属性代码示例

本文整理汇总了Java中org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState.LAUNCHED属性的典型用法代码示例。如果您正苦于以下问题:Java RMAppAttemptState.LAUNCHED属性的具体用法?Java RMAppAttemptState.LAUNCHED怎么用?Java RMAppAttemptState.LAUNCHED使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState的用法示例。


在下文中一共展示了RMAppAttemptState.LAUNCHED属性的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: waitForLaunchedState

private void waitForLaunchedState(RMAppAttempt attempt)
    throws InterruptedException {
  int waitCount = 0;
  while (attempt.getAppAttemptState() != RMAppAttemptState.LAUNCHED
      && waitCount++ < 40) {
    LOG.info("Waiting for AppAttempt to reach LAUNCHED state. "
        + "Current state is " + attempt.getAppAttemptState());
    Thread.sleep(1000);
  }
  Assert.assertEquals(attempt.getAppAttemptState(),
      RMAppAttemptState.LAUNCHED);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:12,代码来源:TestAMAuthorization.java

示例2: waitForLaunchedState

private void waitForLaunchedState(RMAppAttempt attempt)
    throws InterruptedException {
  int waitCount = 0;
  while (attempt.getAppAttemptState() != RMAppAttemptState.LAUNCHED
      && waitCount++ < 20) {
    LOG.info("Waiting for AppAttempt to reach LAUNCHED state. "
        + "Current state is " + attempt.getAppAttemptState());
    Thread.sleep(1000);
  }
  Assert.assertEquals(attempt.getAppAttemptState(),
      RMAppAttemptState.LAUNCHED);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:12,代码来源:TestSchedulerUtils.java

示例3: createAndGetApplicationReport

@Override
public ApplicationReport createAndGetApplicationReport(String clientUserName,
    boolean allowAccess) {
  this.readLock.lock();

  try {
    ApplicationAttemptId currentApplicationAttemptId = null;
    org.apache.hadoop.yarn.api.records.Token clientToAMToken = null;
    String trackingUrl = UNAVAILABLE;
    String host = UNAVAILABLE;
    String origTrackingUrl = UNAVAILABLE;
    int rpcPort = -1;
    ApplicationResourceUsageReport appUsageReport =
        RMServerUtils.DUMMY_APPLICATION_RESOURCE_USAGE_REPORT;
    FinalApplicationStatus finishState = getFinalApplicationStatus();
    String diags = UNAVAILABLE;
    float progress = 0.0f;
    org.apache.hadoop.yarn.api.records.Token amrmToken = null;
    if (allowAccess) {
      trackingUrl = getDefaultProxyTrackingUrl();
      if (this.currentAttempt != null) {
        currentApplicationAttemptId = this.currentAttempt.getAppAttemptId();
        trackingUrl = this.currentAttempt.getTrackingUrl();
        origTrackingUrl = this.currentAttempt.getOriginalTrackingUrl();
        if (UserGroupInformation.isSecurityEnabled()) {
          // get a token so the client can communicate with the app attempt
          // NOTE: token may be unavailable if the attempt is not running
          Token<ClientToAMTokenIdentifier> attemptClientToAMToken =
              this.currentAttempt.createClientToken(clientUserName);
          if (attemptClientToAMToken != null) {
            clientToAMToken = BuilderUtils.newClientToAMToken(
                attemptClientToAMToken.getIdentifier(),
                attemptClientToAMToken.getKind().toString(),
                attemptClientToAMToken.getPassword(),
                attemptClientToAMToken.getService().toString());
          }
        }
        host = this.currentAttempt.getHost();
        rpcPort = this.currentAttempt.getRpcPort();
        appUsageReport = currentAttempt.getApplicationResourceUsageReport();
        progress = currentAttempt.getProgress();
      }
      diags = this.diagnostics.toString();

      if (currentAttempt != null && 
          currentAttempt.getAppAttemptState() == RMAppAttemptState.LAUNCHED) {
        if (getApplicationSubmissionContext().getUnmanagedAM() &&
            clientUserName != null && getUser().equals(clientUserName)) {
          Token<AMRMTokenIdentifier> token = currentAttempt.getAMRMToken();
          if (token != null) {
            amrmToken = BuilderUtils.newAMRMToken(token.getIdentifier(),
                token.getKind().toString(), token.getPassword(),
                token.getService().toString());
          }
        }
      }

      RMAppMetrics rmAppMetrics = getRMAppMetrics();
      appUsageReport.setMemorySeconds(rmAppMetrics.getMemorySeconds());
      appUsageReport.setVcoreSeconds(rmAppMetrics.getVcoreSeconds());
      appUsageReport.setGcoreSeconds(rmAppMetrics.getGcoreSeconds());
    }

    if (currentApplicationAttemptId == null) {
      currentApplicationAttemptId = 
          BuilderUtils.newApplicationAttemptId(this.applicationId, 
              DUMMY_APPLICATION_ATTEMPT_NUMBER);
    }

    return BuilderUtils.newApplicationReport(this.applicationId,
        currentApplicationAttemptId, this.user, this.queue,
        this.name, host, rpcPort, clientToAMToken,
        createApplicationState(), diags,
        trackingUrl, this.startTime, this.finishTime, finishState,
        appUsageReport, origTrackingUrl, progress, this.applicationType, 
        amrmToken, applicationTags);
  } finally {
    this.readLock.unlock();
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:80,代码来源:RMAppImpl.java

示例4: startApp

@Before
public void startApp() throws Exception {
  // submit new app
  ApplicationSubmissionContext appContext = 
      yarnClient.createApplication().getApplicationSubmissionContext();
  ApplicationId appId = appContext.getApplicationId();
  // set the application name
  appContext.setApplicationName("Test");
  // Set the priority for the application master
  Priority pri = Records.newRecord(Priority.class);
  pri.setPriority(0);
  appContext.setPriority(pri);
  // Set the queue to which this application is to be submitted in the RM
  appContext.setQueue("default");
  // Set up the container launch context for the application master
  ContainerLaunchContext amContainer =
      BuilderUtils.newContainerLaunchContext(
        Collections.<String, LocalResource> emptyMap(),
        new HashMap<String, String>(), Arrays.asList("sleep", "100"),
        new HashMap<String, ByteBuffer>(), null,
        new HashMap<ApplicationAccessType, String>());
  appContext.setAMContainerSpec(amContainer);
  appContext.setResource(Resource.newInstance(1024, 1, 1));
  // Create the request to send to the applications manager
  SubmitApplicationRequest appRequest = Records
      .newRecord(SubmitApplicationRequest.class);
  appRequest.setApplicationSubmissionContext(appContext);
  // Submit the application to the applications manager
  yarnClient.submitApplication(appContext);

  // wait for app to start
  RMAppAttempt appAttempt = null;
  while (true) {
    ApplicationReport appReport = yarnClient.getApplicationReport(appId);
    if (appReport.getYarnApplicationState() == YarnApplicationState.ACCEPTED) {
      attemptId = appReport.getCurrentApplicationAttemptId();
      appAttempt =
          yarnCluster.getResourceManager().getRMContext().getRMApps()
            .get(attemptId.getApplicationId()).getCurrentAppAttempt();
      while (true) {
        if (appAttempt.getAppAttemptState() == RMAppAttemptState.LAUNCHED) {
          break;
        }
      }
      break;
    }
  }
  // Just dig into the ResourceManager and get the AMRMToken just for the sake
  // of testing.
  UserGroupInformation.setLoginUser(UserGroupInformation
    .createRemoteUser(UserGroupInformation.getCurrentUser().getUserName()));

  // emulate RM setup of AMRM token in credentials by adding the token
  // *before* setting the token service
  UserGroupInformation.getCurrentUser().addToken(appAttempt.getAMRMToken());
  appAttempt.getAMRMToken().setService(ClientRMProxy.getAMRMTokenService(conf));
}
 
开发者ID:naver,项目名称:hadoop,代码行数:57,代码来源:TestAMRMClient.java

示例5: submitApp

private void submitApp()
        throws YarnException, InterruptedException, IOException {
  // ask for new application
  GetNewApplicationRequest newAppRequest =
      Records.newRecord(GetNewApplicationRequest.class);
  GetNewApplicationResponse newAppResponse = 
      rm.getClientRMService().getNewApplication(newAppRequest);
  appId = newAppResponse.getApplicationId();
  
  // submit the application
  final SubmitApplicationRequest subAppRequest =
      Records.newRecord(SubmitApplicationRequest.class);
  ApplicationSubmissionContext appSubContext = 
      Records.newRecord(ApplicationSubmissionContext.class);
  appSubContext.setApplicationId(appId);
  appSubContext.setMaxAppAttempts(1);
  appSubContext.setQueue(queue);
  appSubContext.setPriority(Priority.newInstance(0));
  ContainerLaunchContext conLauContext = 
      Records.newRecord(ContainerLaunchContext.class);
  conLauContext.setApplicationACLs(
      new HashMap<ApplicationAccessType, String>());
  conLauContext.setCommands(new ArrayList<String>());
  conLauContext.setEnvironment(new HashMap<String, String>());
  conLauContext.setLocalResources(new HashMap<String, LocalResource>());
  conLauContext.setServiceData(new HashMap<String, ByteBuffer>());
  appSubContext.setAMContainerSpec(conLauContext);
  appSubContext.setUnmanagedAM(true);
  subAppRequest.setApplicationSubmissionContext(appSubContext);
  UserGroupInformation ugi = UserGroupInformation.createRemoteUser(user);
  ugi.doAs(new PrivilegedExceptionAction<Object>() {
    @Override
    public Object run() throws YarnException {
      rm.getClientRMService().submitApplication(subAppRequest);
      return null;
    }
  });
  LOG.info(MessageFormat.format("Submit a new application {0}", appId));
  
  // waiting until application ACCEPTED
  RMApp app = rm.getRMContext().getRMApps().get(appId);
  while(app.getState() != RMAppState.ACCEPTED) {
    Thread.sleep(10);
  }

  // Waiting until application attempt reach LAUNCHED
  // "Unmanaged AM must register after AM attempt reaches LAUNCHED state"
  this.appAttemptId = rm.getRMContext().getRMApps().get(appId)
      .getCurrentAppAttempt().getAppAttemptId();
  RMAppAttempt rmAppAttempt = rm.getRMContext().getRMApps().get(appId)
      .getCurrentAppAttempt();
  while (rmAppAttempt.getAppAttemptState() != RMAppAttemptState.LAUNCHED) {
    Thread.sleep(10);
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:55,代码来源:AMSimulator.java

示例6: startApp

@Before
public void startApp() throws Exception {
  // submit new app
  ApplicationSubmissionContext appContext = 
      yarnClient.createApplication().getApplicationSubmissionContext();
  ApplicationId appId = appContext.getApplicationId();
  // set the application name
  appContext.setApplicationName("Test");
  // Set the priority for the application master
  Priority pri = Records.newRecord(Priority.class);
  pri.setPriority(0);
  appContext.setPriority(pri);
  // Set the queue to which this application is to be submitted in the RM
  appContext.setQueue("default");
  // Set up the container launch context for the application master
  ContainerLaunchContext amContainer =
      BuilderUtils.newContainerLaunchContext(
        Collections.<String, LocalResource> emptyMap(),
        new HashMap<String, String>(), Arrays.asList("sleep", "100"),
        new HashMap<String, ByteBuffer>(), null,
        new HashMap<ApplicationAccessType, String>());
  appContext.setAMContainerSpec(amContainer);
  appContext.setResource(Resource.newInstance(1024, 1));
  // Create the request to send to the applications manager
  SubmitApplicationRequest appRequest = Records
      .newRecord(SubmitApplicationRequest.class);
  appRequest.setApplicationSubmissionContext(appContext);
  // Submit the application to the applications manager
  yarnClient.submitApplication(appContext);

  // wait for app to start
  RMAppAttempt appAttempt = null;
  while (true) {
    ApplicationReport appReport = yarnClient.getApplicationReport(appId);
    if (appReport.getYarnApplicationState() == YarnApplicationState.ACCEPTED) {
      attemptId = appReport.getCurrentApplicationAttemptId();
      appAttempt =
          yarnCluster.getResourceManager().getRMContext().getRMApps()
            .get(attemptId.getApplicationId()).getCurrentAppAttempt();
      while (true) {
        if (appAttempt.getAppAttemptState() == RMAppAttemptState.LAUNCHED) {
          break;
        }
      }
      break;
    }
  }
  // Just dig into the ResourceManager and get the AMRMToken just for the sake
  // of testing.
  UserGroupInformation.setLoginUser(UserGroupInformation
    .createRemoteUser(UserGroupInformation.getCurrentUser().getUserName()));

  // emulate RM setup of AMRM token in credentials by adding the token
  // *before* setting the token service
  UserGroupInformation.getCurrentUser().addToken(appAttempt.getAMRMToken());
  appAttempt.getAMRMToken().setService(ClientRMProxy.getAMRMTokenService(conf));
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:57,代码来源:TestAMRMClient.java

示例7: createAndGetApplicationReport

@Override
public ApplicationReport createAndGetApplicationReport(String clientUserName,
    boolean allowAccess) {
  this.readLock.lock();

  try {
    ApplicationAttemptId currentApplicationAttemptId = null;
    org.apache.hadoop.yarn.api.records.Token clientToAMToken = null;
    String trackingUrl = UNAVAILABLE;
    String host = UNAVAILABLE;
    String origTrackingUrl = UNAVAILABLE;
    int rpcPort = -1;
    ApplicationResourceUsageReport appUsageReport =
        RMServerUtils.DUMMY_APPLICATION_RESOURCE_USAGE_REPORT;
    FinalApplicationStatus finishState = getFinalApplicationStatus();
    String diags = UNAVAILABLE;
    float progress = 0.0f;
    org.apache.hadoop.yarn.api.records.Token amrmToken = null;
    if (allowAccess) {
      trackingUrl = getDefaultProxyTrackingUrl();
      if (this.currentAttempt != null) {
        currentApplicationAttemptId = this.currentAttempt.getAppAttemptId();
        trackingUrl = this.currentAttempt.getTrackingUrl();
        origTrackingUrl = this.currentAttempt.getOriginalTrackingUrl();
        if (UserGroupInformation.isSecurityEnabled()) {
          // get a token so the client can communicate with the app attempt
          // NOTE: token may be unavailable if the attempt is not running
          Token<ClientToAMTokenIdentifier> attemptClientToAMToken =
              this.currentAttempt.createClientToken(clientUserName);
          if (attemptClientToAMToken != null) {
            clientToAMToken = BuilderUtils.newClientToAMToken(
                attemptClientToAMToken.getIdentifier(),
                attemptClientToAMToken.getKind().toString(),
                attemptClientToAMToken.getPassword(),
                attemptClientToAMToken.getService().toString());
          }
        }
        host = this.currentAttempt.getHost();
        rpcPort = this.currentAttempt.getRpcPort();
        appUsageReport = currentAttempt.getApplicationResourceUsageReport();
        progress = currentAttempt.getProgress();
      }
      diags = this.diagnostics.toString();

      if (currentAttempt != null && 
          currentAttempt.getAppAttemptState() == RMAppAttemptState.LAUNCHED) {
        if (getApplicationSubmissionContext().getUnmanagedAM() &&
            clientUserName != null && getUser().equals(clientUserName)) {
          Token<AMRMTokenIdentifier> token = currentAttempt.getAMRMToken();
          if (token != null) {
            amrmToken = BuilderUtils.newAMRMToken(token.getIdentifier(),
                token.getKind().toString(), token.getPassword(),
                token.getService().toString());
          }
        }
      }

      RMAppMetrics rmAppMetrics = getRMAppMetrics();
      appUsageReport.setMemorySeconds(rmAppMetrics.getMemorySeconds());
      appUsageReport.setVcoreSeconds(rmAppMetrics.getVcoreSeconds());
    }

    if (currentApplicationAttemptId == null) {
      currentApplicationAttemptId = 
          BuilderUtils.newApplicationAttemptId(this.applicationId, 
              DUMMY_APPLICATION_ATTEMPT_NUMBER);
    }

    return BuilderUtils.newApplicationReport(this.applicationId,
        currentApplicationAttemptId, this.user, this.queue,
        this.name, host, rpcPort, clientToAMToken,
        createApplicationState(), diags,
        trackingUrl, this.startTime, this.finishTime, finishState,
        appUsageReport, origTrackingUrl, progress, this.applicationType, 
        amrmToken, applicationTags);
  } finally {
    this.readLock.unlock();
  }
}
 
开发者ID:yncxcw,项目名称:big-c,代码行数:79,代码来源:RMAppImpl.java


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