|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface Scheduler
Callback interface to be implemented by frameworks'
schedulers. Note that only one callback will be invoked at a time,
so it is not recommended that you block within a callback because
it may cause a deadlock.
Each callback includes a reference to the scheduler driver that was
used to run this scheduler. The reference will not change for the
duration of a scheduler (i.e., from the point you do SchedulerDriver.start() to the point that SchedulerDriver.join() returns). This is intended for convenience so
that a scheduler doesn't need to store a reference to the driver
itself.
| Method Summary | |
|---|---|
void |
disconnected(SchedulerDriver driver)
Invoked when the scheduler becomes "disconnected" from the master (e.g., the master fails and another is taking over). |
void |
error(SchedulerDriver driver,
String message)
Invoked when there is an unrecoverable error in the scheduler or scheduler driver. |
void |
executorLost(SchedulerDriver driver,
org.apache.mesos.Protos.ExecutorID executorId,
org.apache.mesos.Protos.SlaveID slaveId,
int status)
Invoked when an executor has exited/terminated. |
void |
frameworkMessage(SchedulerDriver driver,
org.apache.mesos.Protos.ExecutorID executorId,
org.apache.mesos.Protos.SlaveID slaveId,
byte[] data)
Invoked when an executor sends a message. |
void |
offerRescinded(SchedulerDriver driver,
org.apache.mesos.Protos.OfferID offerId)
Invoked when an offer is no longer valid (e.g., the slave was lost or another framework used resources in the offer). |
void |
registered(SchedulerDriver driver,
org.apache.mesos.Protos.FrameworkID frameworkId,
org.apache.mesos.Protos.MasterInfo masterInfo)
Invoked when the scheduler successfully registers with a Mesos master. |
void |
reregistered(SchedulerDriver driver,
org.apache.mesos.Protos.MasterInfo masterInfo)
Invoked when the scheduler re-registers with a newly elected Mesos master. |
void |
resourceOffers(SchedulerDriver driver,
List<org.apache.mesos.Protos.Offer> offers)
Invoked when resources have been offered to this framework. |
void |
slaveLost(SchedulerDriver driver,
org.apache.mesos.Protos.SlaveID slaveId)
Invoked when a slave has been determined unreachable (e.g., machine failure, network partition). |
void |
statusUpdate(SchedulerDriver driver,
org.apache.mesos.Protos.TaskStatus status)
Invoked when the status of a task has changed (e.g., a slave is lost and so the task is lost, a task finishes and an executor sends a status update saying so, etc). |
| Method Detail |
|---|
void registered(SchedulerDriver driver,
org.apache.mesos.Protos.FrameworkID frameworkId,
org.apache.mesos.Protos.MasterInfo masterInfo)
void reregistered(SchedulerDriver driver,
org.apache.mesos.Protos.MasterInfo masterInfo)
void resourceOffers(SchedulerDriver driver,
List<org.apache.mesos.Protos.Offer> offers)
SchedulerDriver.launchTasks(java.util.Collection, java.util.Collection, org.apache.mesos.Protos.Filters) ) or (b)
those resources have been rescinded (see offerRescinded).
Note that resources may be concurrently offered to more than one
framework at a time (depending on the allocator being used). In
that case, the first framework to launch tasks using those
resources will be able to use them while the other frameworks
will have those resources rescinded (or if a framework has
already launched tasks with those resources then those tasks will
fail with a TASK_LOST status and a message saying as much).
void offerRescinded(SchedulerDriver driver,
org.apache.mesos.Protos.OfferID offerId)
resourceOffers(org.apache.mesos.SchedulerDriver, java.util.List) ).
void statusUpdate(SchedulerDriver driver,
org.apache.mesos.Protos.TaskStatus status)
void frameworkMessage(SchedulerDriver driver,
org.apache.mesos.Protos.ExecutorID executorId,
org.apache.mesos.Protos.SlaveID slaveId,
byte[] data)
void disconnected(SchedulerDriver driver)
void slaveLost(SchedulerDriver driver,
org.apache.mesos.Protos.SlaveID slaveId)
void executorLost(SchedulerDriver driver,
org.apache.mesos.Protos.ExecutorID executorId,
org.apache.mesos.Protos.SlaveID slaveId,
int status)
void error(SchedulerDriver driver,
String message)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||