public static TaskInfo copyVolumes( final TaskInfo source, final TaskInfo target) { List<Resource> sourceDisks = source.getResourcesList().stream() .filter(resource -> isDisk(resource) && resource.hasDisk()) .collect(Collectors.toList()); List<Resource> minusDisks = target.getResourcesList().stream() .filter(resource -> !isDisk(resource)) .collect(Collectors.toList()); return TaskInfo.newBuilder(target) .clearResources() .addAllResources(minusDisks) .addAllResources(sourceDisks) .build(); }
.setName("Ignite node " + taskId.getValue()) .setTaskId(taskId) .setSlaveId(offer.getSlaveId()) .setCommand(builder) .addResources(Protos.Resource.newBuilder() .setName(CPU) .setType(Protos.Value.Type.SCALAR) .setScalar(Protos.Value.Scalar.newBuilder().setValue(igniteTask.cpuCores()))) .addResources(Protos.Resource.newBuilder() .setName(MEM) .setType(Protos.Value.Type.SCALAR) .setScalar(Protos.Value.Scalar.newBuilder().setValue(igniteTask.mem()))) .addResources(Protos.Resource.newBuilder() .setName(DISK) .setType(Protos.Value.Type.SCALAR) .setScalar(Protos.Value.Scalar.newBuilder().setValue(igniteTask.disk()))) .build();
.setSlaveId(slaveId) .setTaskId(taskID) .setName(taskID.getValue()); taskInfo.addAllResources(allocation.takeScalar("cpus", taskRequest.getCPUs(), roles)); taskInfo.addAllResources(allocation.takeScalar("gpus", taskRequest.getGPUs(), roles)); taskInfo.addAllResources(allocation.takeScalar("mem", taskRequest.getMemory(), roles)); final Protos.CommandInfo.Builder cmd = taskInfo.getCommandBuilder(); final Protos.Environment.Builder env = cmd.getEnvironmentBuilder(); final StringBuilder jvmArgs = new StringBuilder(); taskInfo.addAllResources(portResources); Iterator<String> portsToAssign = tmPortKeys.iterator(); rangeValues(portResources).forEach(port -> dynamicProperties.setLong(portsToAssign.next(), port)); env.addVariables(variable(MesosConfigKeys.ENV_FLINK_CONTAINER_ID, taskInfo.getTaskId().getValue())); env.addVariables(variable(MesosConfigKeys.ENV_TASK_NAME, taskInfo.getTaskId().getValue())); env.addVariables(variable(MesosConfigKeys.ENV_FRAMEWORK_NAME, mesosConfiguration.frameworkInfo().getName())); taskInfo.setContainer(containerInfo); return taskInfo.build();
.setName(taskId.getValue()) .setTaskId(taskId) .setSlaveId(offer.getSlaveId()) .addResources( Resource .newBuilder() .setBegin(reportAddress.getPort()) .setEnd(reportAddress.getPort())))) .addResources( Resource .newBuilder() .setRole(cpuRole) .setScalar(Value.Scalar.newBuilder().setValue(taskCpus - containerCpus))) .addResources( Resource .newBuilder() .setRole(memRole) .setScalar(Value.Scalar.newBuilder().setValue(taskMem - containerCpus))) .setData(taskData) .setExecutor(executorBuilder.build()) .build();
.setTaskId(taskId) .setName(taskName) .setSlaveId(aggregatedOffers.getSlaveID()) .setExecutor(executorInfoBuilder.build()) .addAllResources(workerResources) .build();
taskBuilder.addResources( Resource .newBuilder() taskBuilder.setContainer(containerInfoBuilder.build());
TaskInfo info = TaskInfo .newBuilder() .setName(taskId.getValue()) .setTaskId(taskId) .setSlaveId(offer.offer.getSlaveId()) .addResources( Resource.newBuilder().setName("cpus").setType(Value.Type.SCALAR) .setRole(offer.cpuRole) .setScalar(Value.Scalar.newBuilder().setValue(taskCpus))) .addResources( Resource.newBuilder().setName("mem").setType(Value.Type.SCALAR) .setRole(offer.memRole) .setScalar(Value.Scalar.newBuilder().setValue(taskMem))) .addResources( Resource.newBuilder().setName("disk").setType(Value.Type.SCALAR) .setRole(offer.diskRole) .setScalar(Value.Scalar.newBuilder().setValue(taskDisk))) .addResources( Resource .newBuilder() Value.Range.newBuilder().setBegin(ports.get(1)) .setEnd(ports.get(1))))) .setExecutor( ExecutorInfo .newBuilder() .setName("Hama Groom Server").setSource(taskId.getValue()) .setCommand(commandInfo))
mesosStormConf.get(Config.LOGVIEWER_PORT)); TaskInfo task = TaskInfo.newBuilder() .setTaskId(taskId) .setName(name) .setSlaveId(aggregatedOffers.getSlaveID()) .setCommand(commandInfoBuilder.build()) .addAllResources(resources) .build();
if (!taskBuilder.hasDiscovery()) { taskBuilder.getDiscoveryBuilder() .setVisibility(Constants.DEFAULT_TASK_DISCOVERY_VISIBILITY) .setName(taskBuilder.getName()); taskBuilder.getDiscoveryBuilder().getPortsBuilder().addPortsBuilder() .setNumber((int) port) .setVisibility(portSpec.getVisibility()) taskBuilder.getCommandBuilder().setEnvironment( EnvUtils.withEnvVar( taskBuilder.getCommandBuilder().getEnvironment(), portEnvKey, portEnvVal)); if (taskBuilder.hasHealthCheck()) { Protos.CommandInfo.Builder healthCheckCmdBuilder = taskBuilder.getHealthCheckBuilder().getCommandBuilder(); healthCheckCmdBuilder.setEnvironment( EnvUtils.withEnvVar(healthCheckCmdBuilder.getEnvironment(), portEnvKey, portEnvVal)); if (taskBuilder.hasCheck()) { taskBuilder.getCheckBuilder().getCommandBuilder().getCommandBuilder(); checkCmdBuilder.setEnvironment( EnvUtils.withEnvVar(checkCmdBuilder.getEnvironment(), portEnvKey, portEnvVal)); taskBuilder.setLabels(new TaskLabelWriter(taskBuilder)
.setName(TaskSpec.getInstanceName(podInstance, taskSpec)) .setTaskId(CommonIdUtils.emptyTaskId()) .setSlaveId(CommonIdUtils.emptyAgentId()); taskInfoBuilder.setLabels(new TaskLabelWriter(taskInfoBuilder) .setTargetConfiguration(targetConfigurationId) .setType(podInstance.getPod().getType()) Protos.CommandInfo.Builder commandBuilder = taskInfoBuilder.getCommandBuilder(); commandBuilder.setEnvironment(EnvUtils.toProto(getTaskEnvironment(serviceName, podInstance, setBootstrapConfigFileEnv(taskInfoBuilder.getCommandBuilder(), taskSpec); extendEnv(taskInfoBuilder.getCommandBuilder(), environment); taskInfoBuilder.setDiscovery(getDiscoveryInfo(taskSpec.getDiscovery().get(), podInstance.getIndex())); taskInfoBuilder.setContainer(getContainerInfo(podInstance.getPod(), true, true));
Protos.ExecutorInfo executorInfo = launchOperation.getLaunchGroup().getExecutor(); Collection<Protos.TaskInfo> taskInfos = launchOperation.getLaunchGroup().getTaskGroup().getTasksList().stream() .map(t -> t.toBuilder().setExecutor(executorInfo).build()) .collect(Collectors.toList()); stateStore.storeTasks(taskInfos);
.setTaskId(TaskID.newBuilder() .setValue(id) .build()) .setName(id) .setSlaveId(offer.getSlaveId()) .addResources(Resource.newBuilder() .setName("mem") .setType(Type.SCALAR) .build()) .build()) .addResources(Resource.newBuilder() .setName("cpus") .setType(Type.SCALAR) .build()) .build()) .setExecutor(executorInfo) .build();
Protos.ExecutorInfo executorInfo = launchOperation.getLaunchGroup().getExecutor(); Collection<Protos.TaskInfo> taskInfos = launchOperation.getLaunchGroup().getTaskGroup().getTasksList().stream() .map(t -> t.toBuilder().setExecutor(executorInfo).build()) .collect(Collectors.toList()); stateStore.storeTasks(taskInfos);
private TaskInfo.Builder getTaskInfoBuilder(Offer offer, Request request, TaskID taskId, CommandInfo.Builder commandBuilder) { TaskInfo.Builder builder = TaskInfo.newBuilder() .setName("task " + taskId.getValue()) .setTaskId(taskId) .setSlaveId(offer.getSlaveId()) .setCommand(commandBuilder.build()); if (r.getName().equals("cpus") && cpusNeeded > 0) { double cpus = Math.min(r.getScalar().getValue(), cpusNeeded); builder.addResources( Resource .newBuilder() } else if (r.getName().equals("mem") && memNeeded > 0) { double mem = Math.min(r.getScalar().getValue(), memNeeded); builder.addResources( Resource .newBuilder() } else if (r.getName().equals("disk") && diskNeeded > 0) { double disk = Math.min(r.getScalar().getValue(), diskNeeded); builder.addResources( Resource .newBuilder()
.setLabels(new TaskLabelWriter(baseTaskInfo) .setType("pod") .setIndex(0) .toProto()) .setName(initTaskName) .addAllResources(Arrays.asList(previousResource)) .build(); .setLabels(new TaskLabelWriter(baseTaskInfo) .setType("pod") .setIndex(0) .toProto()) .setName(serverTaskName) .addAllResources(Arrays.asList(targetResource)) .build();
public static Protos.TaskInfo getTaskInfo(List<Protos.Resource> resources, Integer index) { Protos.TaskInfo.Builder builder = Protos.TaskInfo.newBuilder() .setTaskId(TestConstants.TASK_ID) .setName(TestConstants.TASK_NAME) .setSlaveId(TestConstants.AGENT_ID) .setCommand(TestConstants.COMMAND_INFO) .setContainer(TestConstants.CONTAINER_INFO); builder.setLabels(new TaskLabelWriter(builder) .setType(TestConstants.TASK_TYPE) .setIndex(index) builder.getCommandBuilder() .getEnvironmentBuilder() .addVariablesBuilder() Protos.DiscoveryInfo.Builder discoveryBuilder = builder.getDiscoveryBuilder(); discoveryBuilder.setVisibility(Protos.DiscoveryInfo.Visibility.CLUSTER); discoveryBuilder.setName(builder.getName()); discoveryBuilder.getPortsBuilder() .addPortsBuilder() return builder.addAllResources(resources).build();
TaskInfo task = TaskInfo .newBuilder() .setName("task " + taskId.getValue()) .setTaskId(taskId) .setSlaveId(offer.getSlaveId()) .addResources( Resource .newBuilder() Value.Scalar.newBuilder() .setValue(request.request.getCpus()).build()).build()) .addResources( Resource .newBuilder() .setValue((1 + JVM_MEM_OVERHEAD_FACTOR) * request.request.getMem()) .build()).build()) .setCommand( CommandInfo .newBuilder() .setValue(cmd)).build();
.setTaskId(createId(name)) .setName(name) .setSlaveId(EMPTY_SLAVE_ID) .setExecutor(executor.getExecutorInfo()) .addAllResources(Arrays.asList( ResourceUtils.getDesiredScalar(role, principal, "cpus", cpus), ResourceUtils.getDesiredScalar(role, principal, "mem", memoryMb))) .setData(data.getBytes()); final Protos.Label label = Protos.Label.newBuilder() .setKey("config_target") .setValue(configName) .build(); builder.setLabels(Protos.Labels.newBuilder().addLabels(label)); builder.addResources(ResourceUtils.getDesiredMountVolume(role, principal, diskMb, CassandraConfig.VOLUME_PATH)); } else { builder.addResources(ResourceUtils.getDesiredRootVolume(role, principal, diskMb, CassandraConfig.VOLUME_PATH)); builder.addResources(ResourceUtils.getDesiredRanges(role, principal, "ports", Algorithms.createRanges(ports))); builder.setDiscovery(discoveryInfo); info = builder.build();
.setTaskId(initTaskInfo.getTaskId()) .setName(initTaskInfo.getName()) .setSlaveId(initTaskInfo.getSlaveId()) .addAllResources(Arrays.asList(cpu, mem, disk, ports)) .setExecutor(initTaskInfo.getExecutor()) .build();
.setName("task " + taskId.getValue()) .setTaskId(taskId) .setSlaveId(offer.getSlaveId()) .addResources(Protos.Resource.newBuilder() .setName("cpus") .setType(Protos.Value.Type.SCALAR) .setScalar(Protos.Value.Scalar.newBuilder().setValue(1))) .addResources(Protos.Resource.newBuilder() .setName("mem") .setType(Protos.Value.Type.SCALAR) .setScalar(Protos.Value.Scalar.newBuilder().setValue(128))) .setContainer(containerInfoBuilder) .setCommand(Protos.CommandInfo.newBuilder().setShell(false)) .build();