private void startMiniCluster() throws Exception { final Configuration configuration = miniClusterResourceConfiguration.getConfiguration(); configuration.setString(CoreOptions.TMP_DIRS, temporaryFolder.newFolder().getAbsolutePath()); .setNumTaskManagers(miniClusterResourceConfiguration.getNumberTaskManagers()) .setNumSlotsPerTaskManager(miniClusterResourceConfiguration.getNumberSlotsPerTaskManager()) .build();
@Override public void after() { temporaryFolder.delete(); TestStreamEnvironment.unsetAsContext(); TestEnvironment.unsetAsContext(); Exception exception = null; if (clusterClient != null) { try { clusterClient.shutdown(); } catch (Exception e) { exception = e; } } clusterClient = null; final CompletableFuture<?> terminationFuture = jobExecutorService.closeAsync(); try { terminationFuture.get( miniClusterResourceConfiguration.getShutdownTimeout().toMilliseconds(), TimeUnit.MILLISECONDS); } catch (Exception e) { exception = ExceptionUtils.firstOrSuppressed(e, exception); } jobExecutorService = null; if (exception != null) { LOG.warn("Could not properly shut down the MiniClusterResource.", exception); } }
private void startLegacyMiniCluster() throws Exception { final Configuration configuration = new Configuration(miniClusterResourceConfiguration.getConfiguration()); configuration.setInteger(ConfigConstants.LOCAL_NUMBER_TASK_MANAGER, miniClusterResourceConfiguration.getNumberTaskManagers()); configuration.setInteger(TaskManagerOptions.NUM_TASK_SLOTS, miniClusterResourceConfiguration.getNumberSlotsPerTaskManager()); configuration.setString(CoreOptions.TMP_DIRS, temporaryFolder.newFolder().getAbsolutePath()); final LocalFlinkMiniCluster flinkMiniCluster = TestBaseUtils.startCluster( configuration, !enableClusterClient); // the cluster client only works if separate actor systems are used jobExecutorService = flinkMiniCluster; if (enableClusterClient) { clusterClient = new StandaloneClusterClient(configuration, flinkMiniCluster.highAvailabilityServices(), true); } Configuration restClientConfig = new Configuration(); restClientConfig.setInteger(JobManagerOptions.PORT, flinkMiniCluster.getLeaderRPCPort()); this.restClusterClientConfig = new UnmodifiableConfiguration(restClientConfig); if (flinkMiniCluster.webMonitor().isDefined()) { webUIPort = flinkMiniCluster.webMonitor().get().getServerPort(); } }
@Override public void before() throws Exception { temporaryFolder.create(); startJobExecutorService(miniClusterType); numberSlots = miniClusterResourceConfiguration.getNumberSlotsPerTaskManager() * miniClusterResourceConfiguration.getNumberTaskManagers(); executionEnvironment = new TestEnvironment(jobExecutorService, numberSlots, false); executionEnvironment.setAsContext(); TestStreamEnvironment.setAsContext(jobExecutorService, numberSlots); }
public MiniClusterResource(final org.apache.flink.test.util.MiniClusterResourceConfiguration miniClusterResourceConfiguration) { this(new MiniClusterResourceConfiguration(miniClusterResourceConfiguration.getConfiguration(), miniClusterResourceConfiguration.getNumberTaskManagers(), miniClusterResourceConfiguration.getNumberSlotsPerTaskManager()), true); }