@Override public RegisterApplicationMasterResponse registerApplicationMaster( String appHostName, int appHostPort, String appTrackingUrl) throws YarnRemoteException { // do this only once ??? RegisterApplicationMasterRequest request = recordFactory .newRecordInstance(RegisterApplicationMasterRequest.class); synchronized (this) { request.setApplicationAttemptId(appAttemptId); } request.setHost(appHostName); request.setRpcPort(appHostPort); if (appTrackingUrl != null) { request.setTrackingUrl(appTrackingUrl); } RegisterApplicationMasterResponse response = rmClient .registerApplicationMaster(request); return response; }
public RegisterApplicationMasterResponse registerApplicationMaster(String host, int port) throws YarnRemoteException { if (amResourceManager == null) throw new IllegalStateException( "Cannot register application master before connecting to the resource manager!"); RegisterApplicationMasterRequest request = Records .newRecord(RegisterApplicationMasterRequest.class); request.setApplicationAttemptId(appAttemptId); request.setHost(host); request.setRpcPort(port); request.setTrackingUrl("http://some-place.com/some/endpoint"); LOG.info("Sending application registration request" + ", masterHost=" + request.getHost() + ", masterRpcPort=" + request.getRpcPort() + ", trackingUrl=" + request.getTrackingUrl() + ", applicationAttempt=" + request.getApplicationAttemptId() + ", applicationId=" + request.getApplicationAttemptId().getApplicationId()); RegisterApplicationMasterResponse response = amResourceManager.registerApplicationMaster(request); LOG.debug("Received a registration response" + ", min=" + response.getMinimumResourceCapability().getMemory() + ", max=" + response.getMaximumResourceCapability().getMemory()); return response; }