public class MesosSchedulerBackend extends Object implements SchedulerBackend, org.apache.mesos.Scheduler, Logging
Constructor and Description |
---|
MesosSchedulerBackend(TaskSchedulerImpl scheduler,
SparkContext sc,
String master) |
Modifier and Type | Method and Description |
---|---|
String |
appId() |
String |
applicationId()
Get an application ID associated with the job.
|
ClassLoader |
classLoader() |
org.apache.mesos.Protos.ExecutorInfo |
createExecutorInfo(String execId) |
org.apache.mesos.Protos.TaskInfo |
createMesosTask(TaskDescription task,
String slaveId)
Turn a Spark TaskDescription into a Mesos task
|
int |
defaultParallelism() |
void |
disconnected(org.apache.mesos.SchedulerDriver d) |
org.apache.mesos.SchedulerDriver |
driver() |
void |
error(org.apache.mesos.SchedulerDriver d,
String message) |
byte[] |
execArgs() |
void |
executorLost(org.apache.mesos.SchedulerDriver d,
org.apache.mesos.Protos.ExecutorID executorId,
org.apache.mesos.Protos.SlaveID slaveId,
int status) |
void |
frameworkMessage(org.apache.mesos.SchedulerDriver d,
org.apache.mesos.Protos.ExecutorID e,
org.apache.mesos.Protos.SlaveID s,
byte[] b) |
double |
getResource(java.util.List<org.apache.mesos.Protos.Resource> res,
String name)
Helper function to pull out a resource from a Mesos Resources protobuf
|
boolean |
isFinished(org.apache.mesos.Protos.TaskState state)
Check whether a Mesos task state represents a finished task
|
boolean |
isRegistered() |
void |
killTask(long taskId,
String executorId,
boolean interruptThread) |
void |
offerRescinded(org.apache.mesos.SchedulerDriver d,
org.apache.mesos.Protos.OfferID o) |
void |
registered(org.apache.mesos.SchedulerDriver d,
org.apache.mesos.Protos.FrameworkID frameworkId,
org.apache.mesos.Protos.MasterInfo masterInfo) |
Object |
registeredLock() |
void |
reregistered(org.apache.mesos.SchedulerDriver d,
org.apache.mesos.Protos.MasterInfo masterInfo) |
void |
resourceOffers(org.apache.mesos.SchedulerDriver d,
java.util.List<org.apache.mesos.Protos.Offer> offers)
Method called by Mesos to offer resources on slaves.
|
void |
reviveOffers() |
scala.collection.mutable.HashSet<String> |
slaveIdsWithExecutors() |
void |
slaveLost(org.apache.mesos.SchedulerDriver d,
org.apache.mesos.Protos.SlaveID slaveId) |
void |
start() |
void |
statusUpdate(org.apache.mesos.SchedulerDriver d,
org.apache.mesos.Protos.TaskStatus status) |
void |
stop() |
scala.collection.mutable.HashMap<Object,String> |
taskIdToSlaveId() |
void |
waitForRegister() |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
isReady
initializeIfNecessary, initializeLogging, isTraceEnabled, log_, log, logDebug, logDebug, logError, logError, logInfo, logInfo, logName, logTrace, logTrace, logWarning, logWarning
public MesosSchedulerBackend(TaskSchedulerImpl scheduler, SparkContext sc, String master)
public boolean isRegistered()
public Object registeredLock()
public org.apache.mesos.SchedulerDriver driver()
public scala.collection.mutable.HashSet<String> slaveIdsWithExecutors()
public scala.collection.mutable.HashMap<Object,String> taskIdToSlaveId()
public byte[] execArgs()
public ClassLoader classLoader()
public String appId()
appId
in interface SchedulerBackend
public void start()
start
in interface SchedulerBackend
public org.apache.mesos.Protos.ExecutorInfo createExecutorInfo(String execId)
public void offerRescinded(org.apache.mesos.SchedulerDriver d, org.apache.mesos.Protos.OfferID o)
offerRescinded
in interface org.apache.mesos.Scheduler
public void registered(org.apache.mesos.SchedulerDriver d, org.apache.mesos.Protos.FrameworkID frameworkId, org.apache.mesos.Protos.MasterInfo masterInfo)
registered
in interface org.apache.mesos.Scheduler
public void waitForRegister()
public void disconnected(org.apache.mesos.SchedulerDriver d)
disconnected
in interface org.apache.mesos.Scheduler
public void reregistered(org.apache.mesos.SchedulerDriver d, org.apache.mesos.Protos.MasterInfo masterInfo)
reregistered
in interface org.apache.mesos.Scheduler
public void resourceOffers(org.apache.mesos.SchedulerDriver d, java.util.List<org.apache.mesos.Protos.Offer> offers)
resourceOffers
in interface org.apache.mesos.Scheduler
public double getResource(java.util.List<org.apache.mesos.Protos.Resource> res, String name)
public org.apache.mesos.Protos.TaskInfo createMesosTask(TaskDescription task, String slaveId)
public boolean isFinished(org.apache.mesos.Protos.TaskState state)
public void statusUpdate(org.apache.mesos.SchedulerDriver d, org.apache.mesos.Protos.TaskStatus status)
statusUpdate
in interface org.apache.mesos.Scheduler
public void error(org.apache.mesos.SchedulerDriver d, String message)
error
in interface org.apache.mesos.Scheduler
public void stop()
stop
in interface SchedulerBackend
public void reviveOffers()
reviveOffers
in interface SchedulerBackend
public void frameworkMessage(org.apache.mesos.SchedulerDriver d, org.apache.mesos.Protos.ExecutorID e, org.apache.mesos.Protos.SlaveID s, byte[] b)
frameworkMessage
in interface org.apache.mesos.Scheduler
public void slaveLost(org.apache.mesos.SchedulerDriver d, org.apache.mesos.Protos.SlaveID slaveId)
slaveLost
in interface org.apache.mesos.Scheduler
public void executorLost(org.apache.mesos.SchedulerDriver d, org.apache.mesos.Protos.ExecutorID executorId, org.apache.mesos.Protos.SlaveID slaveId, int status)
executorLost
in interface org.apache.mesos.Scheduler
public void killTask(long taskId, String executorId, boolean interruptThread)
killTask
in interface SchedulerBackend
public int defaultParallelism()
defaultParallelism
in interface SchedulerBackend
public String applicationId()
SchedulerBackend
applicationId
in interface SchedulerBackend