private void launchSupervisorThriftServer(Map<String, Object> conf) throws IOException { int port = getThriftServerPort(); try { ServerSocket socket = new ServerSocket(port);
this.stormClusterState = supervisor.getStormClusterState(); this.assignmentId = supervisor.getAssignmentId(); this.supervisorPort = supervisor.getThriftServerPort(); this.iSuper = supervisor.getiSupervisor(); this.localizer = supervisor.getAsyncLocalizer();
private SupervisorInfo buildSupervisorInfo(Map<String, Object> conf, Supervisor supervisor) { SupervisorInfo supervisorInfo = new SupervisorInfo(); supervisorInfo.set_time_secs(Time.currentTimeSecs()); supervisorInfo.set_hostname(supervisor.getHostName()); supervisorInfo.set_assignment_id(supervisor.getAssignmentId()); supervisorInfo.set_server_port(supervisor.getThriftServerPort()); List<Long> usedPorts = new ArrayList<>(); usedPorts.addAll(supervisor.getCurrAssignment().get().keySet()); supervisorInfo.set_used_ports(usedPorts); List metaDatas = (List) supervisor.getiSupervisor().getMetadata(); List<Long> portList = new ArrayList<>(); if (metaDatas != null) { for (Object data : metaDatas) { Integer port = ObjectReader.getInt(data); if (port != null) { portList.add(port.longValue()); } } } supervisorInfo.set_meta(portList); supervisorInfo.set_scheduler_meta((Map<String, String>) conf.get(DaemonConfig.SUPERVISOR_SCHEDULER_META)); supervisorInfo.set_uptime_secs(supervisor.getUpTime().upTime()); supervisorInfo.set_version(supervisor.getStormVersion()); supervisorInfo.set_resources_map(mkSupervisorCapacities(conf)); return supervisorInfo; }
public void shutdownAllWorkers(UniFunc<Slot> onWarnTimeout, UniFunc<Slot> onErrorTimeout) { if (readState != null) { readState.shutdownAllWorkers(onWarnTimeout, onErrorTimeout); } else { try { ContainerLauncher launcher = ContainerLauncher.make(getConf(), getId(), getThriftServerPort(), getSharedContext(), getMetricsRegistry(), getContainerMemoryTracker()); killWorkers(SupervisorUtils.supervisorWorkerIds(conf), launcher); } catch (Exception e) { throw Utils.wrapInRuntime(e); } } }