code: public void start() throws Exception {
  		synchronized (this.lock) {
  			if (this.nephele == null) {
  				
  				// create the embedded runtime
  				this.nephele = new NepheleMiniCluster();
  				
  				// configure it, if values were changed. otherwise the embedded runtime uses the internal defaults
  				if (jobManagerRpcPort > 0) {
  					nephele.setJobManagerRpcPort(jobManagerRpcPort);
  				}
  				if (taskManagerRpcPort > 0) {
  					nephele.setTaskManagerRpcPort(jobManagerRpcPort);
  				}
  				if (taskManagerDataPort > 0) {
  					nephele.setTaskManagerDataPort(taskManagerDataPort);
  				}
  				if (configDir != null) {
  					nephele.setConfigDir(configDir);
  				}
  				if (hdfsConfigFile != null) {
  					nephele.setHdfsConfigFile(hdfsConfigFile);
  				}
  				nephele.setDefaultOverwriteFiles(defaultOverwriteFiles);
  				nephele.setDefaultAlwaysCreateDirectory(defaultAlwaysCreateDirectory);
  				
  				// start it up
  				this.nephele.start();
  			} else {
  				throw new IllegalStateException("The local executor was already started.");
  			}
  		}
  	}
docs: --------------------------------------------------------------------------------------------