assert (worker != null); worker = worker.launchWorker(info.getSlaveId(), msg.hostname()); workerStore.putWorker(worker); workersInLaunch.put(extractResourceID(worker.taskID()), worker);
private boolean slaveIsRunningTask(String slaveId) { return stateRepository.allTaskInfos().stream().noneMatch(taskInfo -> taskInfo.getSlaveId().getValue().equals(slaveId)) && !tentativeAccept.containsKey(slaveId); }
/** * Pretty-print mesos protobuf TaskInfo. * <p/> * XXX(erikdw): not including command, container (+data), nor health_check. */ public static String taskInfoToString(TaskInfo task) { Map<String, String> map = new LinkedHashMap<>(); map.put("task_id", task.getTaskId().getValue()); map.put("slave_id", task.getSlaveId().getValue()); map.putAll(resourcesToOrderedMap(task.getResourcesList())); map.put("executor_id", task.getExecutor().getExecutorId().getValue()); return JSONValue.toJSONString(map); }
Assert.assertEquals(taskInfo.getName(), "test-daemon"); Assert.assertTrue(taskInfo.getTaskId().getValue().contains("test-daemon")); Assert.assertEquals(taskInfo.getSlaveId().getValue(), "");
.newBuilder() .setState(Protos.TaskState.TASK_FAILED) .setSlaveId(info.getSlaveId()) .setExecutorId(info.getExecutor().getExecutorId()) .setTaskId(info.getTaskId())
Protos.TaskState.TASK_FAILED, taskInfo.getTaskId(), taskInfo.getSlaveId(), taskInfo.getExecutor().getExecutorId(), ex.getMessage());
.setTaskId(initTaskInfo.getTaskId()) .setName(initTaskInfo.getName()) .setSlaveId(initTaskInfo.getSlaveId()) .addAllResources(Arrays.asList(cpu, mem, disk, ports)) .setExecutor(initTaskInfo.getExecutor())
if (taskToAvoid.getSlaveId().equals(offer.getSlaveId())) {
if (taskToColocate.getSlaveId().equals(offer.getSlaveId())) {
@Test public void testGetUpdateOfferRequirement() throws Exception { OfferRequirement requirement = provider.getNewOfferRequirement( CassandraTask.TYPE.CASSANDRA_DAEMON.name(), testTaskInfo); Protos.TaskInfo taskInfo = requirement.getTaskRequirements().iterator().next().getTaskInfo(); Assert.assertEquals(taskInfo.getName(), "test-daemon"); Assert.assertTrue(taskInfo.getTaskId().getValue().contains("test-daemon")); Assert.assertEquals("", taskInfo.getSlaveId().getValue()); List<Protos.Resource> resources = taskInfo.getResourcesList(); Assert.assertEquals(4, resources.size()); Protos.Resource cpusResource = resources.get(0); Assert.assertEquals("cpus", cpusResource.getName()); Assert.assertEquals(testCpus, cpusResource.getScalar().getValue(), 0.0); Protos.Resource memResource = resources.get(1); Assert.assertEquals("mem", memResource.getName()); Assert.assertEquals(testMem, memResource.getScalar().getValue(), 0.0); Protos.Resource diskResource = resources.get(2); Assert.assertEquals("disk", diskResource.getName()); Assert.assertEquals(testDisk, diskResource.getScalar().getValue(), 0.0); Protos.Resource portsResource = resources.get(3); Assert.assertEquals("ports", portsResource.getName()); Assert.assertTrue(portsResource.getRanges().getRangeList().get(0).getBegin() >= testPortBegin); Assert.assertTrue(portsResource.getRanges().getRangeList().get(0).getEnd() >= testPortBegin); }
assertEquals(offer.getSlaveId(), taskInfo.getSlaveId()); assertEquals("elasticsearch_localhost_19700101T010203.400Z", taskInfo.getTaskId().getValue());
Assert.assertEquals(taskInfo.getName(), "test-daemon"); Assert.assertTrue(taskInfo.getTaskId().getValue().contains("test-daemon")); Assert.assertEquals("", taskInfo.getSlaveId().getValue());
public static Protos.Offer generateUpdateOffer( String frameworkId, Protos.TaskInfo taskInfo, Protos.TaskInfo templateTaskInfo, double cpu, int memory, int disk) { final String offerUUID = UUID.randomUUID().toString(); return Protos.Offer .newBuilder() .setId(Protos.OfferID.newBuilder().setValue(offerUUID)) .setFrameworkId(Protos.FrameworkID.newBuilder().setValue(frameworkId)) .setSlaveId(Protos.SlaveID.newBuilder().setValue(taskInfo.getSlaveId().getValue())) .setHostname("127.0.0.1") .addAllResources(taskInfo.getResourcesList()) .addAllResources(taskInfo.getExecutor().getResourcesList()) .addAllResources(templateTaskInfo.getResourcesList()) .addResources(ResourceUtils.getUnreservedScalar("cpus", cpu)) .addResources(ResourceUtils.getUnreservedScalar("mem", memory)) .addResources(ResourceUtils.getUnreservedScalar("disk", disk)) .build(); }
/** * Gets the task's status. * * @return The status associated with the task. */ public Protos.TaskStatus.Builder getStatusBuilder( final Protos.TaskState state, final Optional<String> message ) { Protos.TaskStatus.Builder builder = Protos.TaskStatus.newBuilder() .setSlaveId(info.getSlaveId()) .setTaskId(info.getTaskId()) .setState(state) .setData(getData().withState(state).getBytes()) .setExecutorId(info.getExecutor().getExecutorId()) .setSource(Protos.TaskStatus.Source.SOURCE_EXECUTOR); message.map(builder::setMessage); return builder; }
public static Protos.Offer generateReplacementOffer( String frameworkId, Protos.TaskInfo taskInfo, Protos.TaskInfo templateTaskInfo) { final String offerUUID = UUID.randomUUID().toString(); return Protos.Offer .newBuilder() .setId(Protos.OfferID.newBuilder().setValue(offerUUID)) .setFrameworkId(Protos.FrameworkID.newBuilder().setValue(frameworkId)) .setSlaveId(Protos.SlaveID.newBuilder().setValue(taskInfo.getSlaveId().getValue())) .setHostname("127.0.0.1") .addAllResources(taskInfo.getResourcesList()) .addAllResources(taskInfo.getExecutor().getResourcesList()) .addAllResources(templateTaskInfo.getResourcesList()) .build(); }
private void validateDaemonTaskInfo(Protos.TaskInfo daemonTaskInfo) throws TaskException { Assert.assertEquals(testDaemonName, daemonTaskInfo.getName()); Assert.assertEquals(4, daemonTaskInfo.getResourcesCount()); Assert.assertEquals(testDaemonName, TaskUtils.toTaskName(daemonTaskInfo.getTaskId())); Assert.assertTrue(daemonTaskInfo.getSlaveId().getValue().isEmpty()); for (Protos.Resource resource : daemonTaskInfo.getResourcesList()) { Assert.assertTrue(ResourceUtils.getResourceId(resource).isEmpty()); } }
/** * Gets the id of the slave the task is running on. This may be empty if the * task is not yet launched. * * @return The identifier of the slave the task is running on. */ public String getSlaveId() { return info.getSlaveId().getValue(); }
/** * We assume a long-running Mesos Task that manages a REEF Evaluator process, leveraging Mesos Executor's interface. */ @Override public void launchTask(final ExecutorDriver driver, final TaskInfo task) { driver.sendStatusUpdate(TaskStatus.newBuilder() .setTaskId(TaskID.newBuilder().setValue(this.mesosExecutorId).build()) .setState(TaskState.TASK_STARTING) .setSlaveId(task.getSlaveId()) .setMessage(this.mesosRemoteManager.getMyIdentifier()) .build()); }
protected Protos.TaskStatus.Builder getStatusBuilder() { return Protos.TaskStatus.newBuilder() .setTaskId(getTaskInfo().getTaskId()) .setSlaveId(getTaskInfo().getSlaveId()) .setExecutorId(getTaskInfo().getExecutor().getExecutorId()) .setSource(Protos.TaskStatus.Source.SOURCE_EXECUTOR); }