appContext.setApplicationType("Apache Flink"); appContext.setAMContainerSpec(amContainer); appContext.setResource(capability);
capability.setMemory(conf.getInt(XLearningConfiguration.XLEARNING_AM_MEMORY, XLearningConfiguration.DEFAULT_XLEARNING_AM_MEMORY)); capability.setVirtualCores(conf.getInt(XLearningConfiguration.XLEARNING_AM_CORES, XLearningConfiguration.DEFAULT_XLEARNING_AM_CORES)); applicationContext.setResource(capability); ContainerLaunchContext amContainer = ContainerLaunchContext.newInstance( localResources, appMasterEnv, appMasterLaunchcommands, null, null, null);
appContext.setResource(capability);
appContext.setApplicationName("ignition"); // application name appContext.setAMContainerSpec(amContainer); appContext.setResource(capability); appContext.setQueue("default"); // queue
appSubmissionContext.setResource(resource); appSubmissionContext.setQueue(this.appQueueName); appSubmissionContext.setPriority(Priority.newInstance(0));
appContext.setResource(getCapability());
appContext.setApplicationType(ATHENAX_APPLICATION_TYPE); appContext.setAMContainerSpec(amContainer); appContext.setResource(capability); appContext.setApplicationTags(Collections.singleton(job.metadata().serialize())); if (job.queue() != null) {
appContext.setResource(capability);
/** * Set the amount of memory to be allocated to the Driver. * @param megabytes * @return */ public YarnSubmissionHelper setDriverMemory(final int megabytes) { applicationSubmissionContext.setResource(Resource.newInstance(getMemory(megabytes), 1)); return this; }
private void setResources(final Configuration launcherJobConf, final ApplicationSubmissionContext appContext) { final Resource resource = Resource.newInstance(readMemoryMb(launcherJobConf), readVCores(launcherJobConf)); appContext.setResource(resource); }
private void setResources(final Configuration launcherJobConf, final ApplicationSubmissionContext appContext) { final Resource resource = Resource.newInstance(readMemoryMb(launcherJobConf), readVCores(launcherJobConf)); appContext.setResource(resource); }
@Override public ProcessController<YarnApplicationReport> submit(YarnLaunchContext context) { ContainerLaunchContext launchContext = context.getLaunchContext(); YarnClient yarnClient = createYarnClient(); try { addRMToken(launchContext, yarnClient, appId); appSubmissionContext.setAMContainerSpec(launchContext); appSubmissionContext.setResource(capability); configureAppSubmissionContext(appSubmissionContext); yarnClient.submitApplication(appSubmissionContext); return new ProcessControllerImpl(appId); } catch (YarnException | IOException e) { throw new RuntimeException("Failed to submit application " + appId, e); } finally { yarnClient.stop(); } } };
@Override public ProcessController<YarnApplicationReport> submit(YarnLaunchContext context) { ContainerLaunchContext launchContext = context.getLaunchContext(); YarnClient yarnClient = createYarnClient(); try { addRMToken(launchContext, yarnClient, appId); appSubmissionContext.setAMContainerSpec(launchContext); appSubmissionContext.setResource(capability); configureAppSubmissionContext(appSubmissionContext); yarnClient.submitApplication(appSubmissionContext); return new ProcessControllerImpl(appId); } catch (YarnException | IOException e) { throw new RuntimeException("Failed to submit application " + appId, e); } finally { yarnClient.stop(); } } };
@SuppressWarnings("deprecation") @Test (timeout = 30000) public void testRMAppSubmitInvalidResourceRequest() throws Exception { asContext.setResource(Resources.createResource( YarnConfiguration.DEFAULT_RM_SCHEDULER_MAXIMUM_ALLOCATION_MB + 1)); // submit an app try { appMonitor.submitApplication(asContext, "test"); Assert.fail("Application submission should fail because resource" + " request is invalid."); } catch (YarnException e) { // Exception is expected // TODO Change this to assert the expected exception type - post YARN-142 // sub-task related to specialized exceptions. assertTrue("The thrown exception is not" + " InvalidResourceRequestException", e.getMessage().contains("Invalid resource request")); } }
@Test public void testRMAppSubmitResource() throws Exception { asContext.setResource(Resources.createResource(1024)); asContext.setAMContainerResourceRequests(null); RMApp app = testRMAppSubmit(); // setResource Assert.assertEquals(Collections.singletonList( ResourceRequest.newInstance(RMAppAttemptImpl.AM_CONTAINER_PRIORITY, ResourceRequest.ANY, Resources.createResource(1024), 1, true, "")), app.getAMResourceRequests()); }
@SuppressWarnings("deprecation") @Test (timeout = 30000) public void testRMAppSubmitInvalidResourceRequest() throws Exception { asContext.setResource(Resources.createResource( YarnConfiguration.DEFAULT_RM_SCHEDULER_MAXIMUM_ALLOCATION_MB + 1)); // submit an app try { appMonitor.submitApplication(asContext, "test"); Assert.fail("Application submission should fail because resource" + " request is invalid."); } catch (YarnException e) { // Exception is expected // TODO Change this to assert the expected exception type - post YARN-142 // sub-task related to specialized exceptions. Assert.assertTrue("The thrown exception is not" + " InvalidResourceRequestException", e.getMessage().contains("Invalid resource request")); } }
public static ApplicationSubmissionContext newApplicationSubmissionContext( ApplicationId applicationId, String applicationName, String queue, Priority priority, ContainerLaunchContext amContainer, boolean isUnmanagedAM, boolean cancelTokensWhenComplete, int maxAppAttempts, Resource resource, String applicationType) { ApplicationSubmissionContext context = recordFactory.newRecordInstance(ApplicationSubmissionContext.class); context.setApplicationId(applicationId); context.setApplicationName(applicationName); context.setQueue(queue); context.setPriority(priority); context.setAMContainerSpec(amContainer); context.setUnmanagedAM(isUnmanagedAM); context.setCancelTokensWhenComplete(cancelTokensWhenComplete); context.setMaxAppAttempts(maxAppAttempts); context.setResource(resource); context.setApplicationType(applicationType); return context; }
public static ApplicationSubmissionContext newApplicationSubmissionContext( ApplicationId applicationId, String applicationName, String queue, Priority priority, ContainerLaunchContext amContainer, boolean isUnmanagedAM, boolean cancelTokensWhenComplete, int maxAppAttempts, Resource resource, String applicationType) { ApplicationSubmissionContext context = recordFactory.newRecordInstance(ApplicationSubmissionContext.class); context.setApplicationId(applicationId); context.setApplicationName(applicationName); context.setQueue(queue); context.setPriority(priority); context.setAMContainerSpec(amContainer); context.setUnmanagedAM(isUnmanagedAM); context.setCancelTokensWhenComplete(cancelTokensWhenComplete); context.setMaxAppAttempts(maxAppAttempts); context.setResource(resource); context.setApplicationType(applicationType); return context; }
@Test public void testRMAppSubmitNoResourceRequests() throws Exception { asContext.setResource(null); asContext.setAMContainerResourceRequests(null); try { testRMAppSubmit(); Assert.fail("Should have failed due to no ResourceRequest"); } catch (InvalidResourceRequestException e) { Assert.assertEquals( "Invalid resource request, no resources requested", e.getMessage()); } }
@Test public void testRMAppSubmitAMContainerResourceRequestsTwoManyAny() throws Exception { asContext.setResource(null); List<ResourceRequest> reqs = new ArrayList<>(); reqs.add(ResourceRequest.newInstance(Priority.newInstance(1), ResourceRequest.ANY, Resources.createResource(1025), 1, false)); reqs.add(ResourceRequest.newInstance(Priority.newInstance(1), ResourceRequest.ANY, Resources.createResource(1025), 1, false)); asContext.setAMContainerResourceRequests(cloneResourceRequests(reqs)); // getAMContainerResourceRequest uses the first entry of // getAMContainerResourceRequests Assert.assertEquals(reqs, asContext.getAMContainerResourceRequests()); try { testRMAppSubmit(); Assert.fail("Should have failed due to too many ANY ResourceRequests"); } catch (InvalidResourceRequestException e) { Assert.assertEquals( "Invalid resource request, only one resource request with * is " + "allowed", e.getMessage()); } }