105 class DiskProfileAdaptor;
111 class TaskStatusUpdateManager;
115 struct ResourceProvider;
121 Slave(
const std::string&
id,
145 const SlaveID& slaveId,
146 const MasterSlaveConnection& connection);
150 const SlaveID& slaveId,
151 const std::vector<ReconcileTasksMessage>& reconciliations,
152 const MasterSlaveConnection& connection);
160 RunTaskMessage&& runTaskMessage);
163 const std::vector<TaskInfo>& tasks);
168 const FrameworkInfo& frameworkInfo,
169 const FrameworkID& frameworkId,
171 const TaskInfo& task,
172 const std::vector<ResourceVersionUUID>& resourceVersionUuids,
176 const FrameworkInfo& frameworkInfo,
177 ExecutorInfo executorInfo,
180 const std::vector<ResourceVersionUUID>& resourceVersionUuids,
183 bool executorGeneratedForCommandTask);
193 const FrameworkInfo& frameworkInfo,
194 const ExecutorInfo& executorInfo,
197 const std::vector<ResourceVersionUUID>& resourceVersionUuids,
202 const FrameworkInfo& frameworkInfo,
203 const ExecutorInfo& executorInfo,
206 const std::vector<ResourceVersionUUID>& resourceVersionUuids,
208 bool executorGeneratedForCommandTask);
218 const FrameworkID& frameworkId,
219 const ExecutorID& executorId,
220 const ContainerID& containerId,
221 const std::vector<TaskInfo>& tasks,
222 const std::vector<TaskGroupInfo>& taskGroups);
228 RunTaskGroupMessage&& runTaskGroupMessage);
233 const FrameworkInfo& frameworkInfo,
234 const ExecutorInfo& executorInfo,
235 const TaskGroupInfo& taskGroupInfo,
236 const std::vector<ResourceVersionUUID>& resourceVersionUuids,
242 const KillTaskMessage& killTaskMessage);
247 const FrameworkID& frameworkId,
249 const TaskID& taskId);
255 const FrameworkID& frameworkId,
258 const TaskID& taskId,
264 const FrameworkID& frameworkId,
265 const ExecutorID& executorId);
278 const FrameworkID& frameworkId);
281 const SlaveID& slaveId,
282 const FrameworkID& frameworkId,
283 const ExecutorID& executorId,
284 const std::string& data);
287 const UpdateFrameworkMessage& message);
292 std::vector<Resource> resources,
296 const std::vector<Resource>& resources);
299 virtual void applyOperation(
const ApplyOperationMessage& message);
309 const executor::Call::Subscribe&
subscribe,
315 const FrameworkID& frameworkId,
316 const ExecutorID& executorId);
324 const FrameworkID& frameworkId,
325 const ExecutorID& executorId,
326 const std::vector<TaskInfo>& tasks,
327 const std::vector<StatusUpdate>& updates);
331 const FrameworkID& frameworkId,
332 const ExecutorID& executorId,
333 const ContainerID& containerId);
336 const SlaveID& slaveId,
337 const FrameworkID& frameworkId,
338 const ExecutorID& executorId,
339 const std::string& data);
359 const ExecutorID& executorId,
366 const StatusUpdate& update,
368 const ExecutorID& executorId,
369 const ContainerID& containerId,
377 const StatusUpdate& update,
383 void forward(StatusUpdate update);
391 const SlaveID& slaveId,
392 const FrameworkID& frameworkId,
393 const TaskID& taskId,
394 const std::string& uuid);
398 const TaskID& taskId,
399 const FrameworkID& frameworkId,
404 const AcknowledgeOperationStatusMessage& acknowledgement);
408 DrainSlaveMessage&& drainSlaveMessage);
411 const FrameworkID& frameworkId,
412 const ExecutorID& executorId,
413 const ContainerID& containerId,
418 const FrameworkID& frameworkId,
419 const ExecutorID& executorId,
421 mesos::slave::ContainerTermination>>& termination);
472 const FrameworkID& frameworkId,
473 const ExecutorID& executorId,
474 const ContainerID& containerId);
481 const FrameworkID& frameworkId,
482 const ExecutorInfo& executorInfo,
483 const google::protobuf::Map<std::string, Value::Scalar>& executorLimits,
487 const std::string&
path,
488 const std::string& virtualPath);
526 const ExecutorInfo& executorInfo,
527 const ContainerID& executorContainerId,
533 const ExecutorInfo& executorInfo,
534 const ContainerID& executorContainerId,
535 const std::vector<Task>& tasks);
548 const FrameworkID& frameworkId,
549 const ExecutorID& executorId)
const;
557 const FrameworkInfo& frameworkInfo,
558 const TaskInfo& task)
const;
562 const FrameworkID& frameworkId,
563 const ExecutorID& executorId,
564 const ContainerID& containerId);
644 mesos::slave::QoSCorrection>>& correction);
652 const FrameworkID& frameworkId,
653 const ExecutorID& executorId,
654 const ContainerID& containerId);
673 const Resources& newCheckpointedResources);
676 const TaskInfo& task,
677 const FrameworkInfo& frameworkInfo);
681 const FrameworkID& frameworkId,
682 const ExecutorID& executorId);
684 void sendExecutorTerminatedStatusUpdate(
685 const TaskID& taskId,
687 mesos::slave::ContainerTermination>>& termination,
688 const FrameworkID& frameworkId,
691 void sendExitedExecutorMessage(
692 const FrameworkID& frameworkId,
693 const ExecutorID& executorId,
697 void forwardOversubscribed();
698 void _forwardOversubscribed(
705 UpdateSlaveMessage generateResourceProviderUpdate()
const;
706 UpdateSlaveMessage generateUpdateSlaveMessage()
const;
708 void handleResourceProviderMessage(
715 void updateOperation(
717 const UpdateOperationStatusMessage& update);
720 void updateOperationLatestStatus(
722 const OperationStatus&
status);
724 void removeOperation(
Operation* operation);
727 const ResourceProviderID& resourceProviderId)
const;
729 Operation* getOperation(
const UUID& uuid)
const;
738 const ContainerID& containerId,
const Resources& resources);
741 double _frameworks_active()
743 return static_cast<double>(frameworks.size());
746 double _uptime_secs()
753 return master.isSome() ? 1 : 0;
756 double _tasks_staging();
757 double _tasks_starting();
758 double _tasks_running();
759 double _tasks_killing();
761 double _executors_registering();
762 double _executors_running();
763 double _executors_terminating();
765 double _executor_directory_max_allowed_age_secs();
767 double _resources_total(
const std::string&
name);
768 double _resources_used(
const std::string&
name);
769 double _resources_percent(
const std::string&
name);
771 double _resources_revocable_total(
const std::string&
name);
772 double _resources_revocable_used(
const std::string&
name);
773 double _resources_revocable_percent(
const std::string&
name);
779 const SlaveInfo& previous,
780 const SlaveInfo& current)
const;
782 void initializeResourceProviderManager(
784 const SlaveID& slaveId);
789 google::protobuf::Map<std::string, Value::Scalar> computeExecutorLimits(
791 const std::vector<TaskInfo>& taskInfos,
792 const std::vector<Task*>& tasks = {})
const;
855 const std::string metaDir;
858 unsigned int recoveryErrors;
863 std::string authenticateeName;
878 Duration executorDirectoryMaxAllowedAge;
884 std::shared_ptr<DiskProfileAdaptor> diskProfileAdaptor;
896 #endif // __WINDOWS__ 923 UUID resourceVersion;
949 void updateDrainStatus();
962 const FrameworkID& frameworkId,
963 const ExecutorInfo& info,
964 const ContainerID& containerId,
965 const std::string& directory,
968 bool isGeneratedForCommandTask);
973 void enqueueTaskGroup(
const TaskGroupInfo& taskGroup);
975 void enqueueTask(
const TaskInfo& task);
977 Task* addLaunchedTask(
const TaskInfo& task);
978 void completeTask(
const TaskID& taskId);
979 void checkpointExecutor();
980 void checkpointTask(
const TaskInfo& task);
981 void checkpointTask(
const Task& task);
985 void addPendingTaskStatus(
const TaskStatus&
status);
986 void removePendingTaskStatus(
const TaskStatus& status);
991 bool incompleteTasks();
1015 bool everSentTask()
const;
1018 template <
typename Message>
1021 if (state == REGISTERING || state == TERMINATED) {
1022 LOG(WARNING) <<
"Attempting to send message to disconnected" 1023 <<
" executor " << *
this <<
" in state " <<
state;
1026 if (http.isSome()) {
1027 if (!http->
send(message)) {
1028 LOG(WARNING) <<
"Unable to send event to executor " << *
this 1029 <<
": connection closed";
1031 }
else if (pid.
isSome()) {
1034 LOG(WARNING) <<
"Unable to send event to executor " << *
this 1035 <<
": unknown connection type";
1042 bool isGeneratedForCommandTask()
const;
1045 void closeHttpConnection();
1139 bool isGeneratedForCommandTask_;
1149 const Flags& slaveFlags,
1150 const FrameworkInfo& info,
1164 void checkpointFramework()
const;
1166 const FrameworkID
id()
const {
return info.id(); }
1169 const ExecutorInfo& executorInfo,
1170 bool isGeneratedForCommandTask);
1175 void destroyExecutor(
const ExecutorID& executorId);
1177 void recoverExecutor(
1179 bool recheckpointExecutor,
1182 void addPendingTask(
1183 const ExecutorID& executorId,
1184 const TaskInfo& task);
1187 void addPendingTaskGroup(
1188 const ExecutorID& executorId,
1189 const TaskGroupInfo& taskGroup);
1191 bool hasTask(
const TaskID& taskId)
const;
1192 bool isPending(
const TaskID& taskId)
const;
1198 bool removePendingTask(
const TaskID& taskId);
1268 const ResourceProviderInfo& _info,
1272 totalResources(_totalResources),
1273 resourceVersion(_resourceVersion) {}
1275 void addOperation(
Operation* operation);
1276 void removeOperation(
Operation* operation);
1315 const ExecutorInfo& executorInfo,
1316 const std::string& directory,
1317 const SlaveID& slaveId,
1331 #endif // __SLAVE_HPP__ void schedulerMessage(const SlaveID &slaveId, const FrameworkID &frameworkId, const ExecutorID &executorId, const std::string &data)
struct mesos::internal::slave::Slave::RecoveryInfo recoveryInfo
virtual process::Future< ResourceUsage > usage()
hashmap< TaskID, LinkedHashMap< id::UUID, TaskStatus > > pendingStatusUpdates
Definition: slave.hpp:1133
Try< Nothing > checkpoint(const std::string &path, const std::string &message, bool sync, bool downgradeResources)
Definition: state.hpp:123
void executorMessage(const SlaveID &slaveId, const FrameworkID &frameworkId, const ExecutorID &executorId, const std::string &data)
circular_buffer< process::Owned< Executor > > completedExecutors
Definition: slave.hpp:1257
void subscribe(StreamingHttpConnection< v1::executor::Event > http, const executor::Call::Subscribe &subscribe, Framework *framework, Executor *executor)
void sendOperationStatusUpdate(const UpdateOperationStatusMessage &update)
Try< uid_t > uid(const std::string &path, const FollowSymlink follow=FollowSymlink::FOLLOW_SYMLINK)
Definition: stat.hpp:224
Definition: nothing.hpp:16
Try< bool > update(const std::string &link, const Handle &parent, uint16_t protocol, const action::Mirror &mirror)
State
Definition: slave.hpp:1052
circular_buffer< std::shared_ptr< Task > > completedTasks
Definition: slave.hpp:1123
process::Owned< ResponseHeartbeater< executor::Event, v1::executor::Event > > heartbeater
Definition: slave.hpp:1095
Definition: state.hpp:319
void _reregisterExecutor(const process::Future< Nothing > &future, const FrameworkID &frameworkId, const ExecutorID &executorId, const ContainerID &containerId)
Duration age(double usage)
Definition: master.hpp:27
const Option< std::string > user
Definition: slave.hpp:1077
std::ostream & operator<<(std::ostream &stream, const MesosContainerizerProcess::State &state)
const ExecutorInfo info
Definition: slave.hpp:1066
virtual void removeFramework(Framework *framework)
void send(const Message &message)
Definition: slave.hpp:1019
virtual void shutdownExecutor(const process::UPID &from, const FrameworkID &frameworkId, const ExecutorID &executorId)
void detachTaskVolumeDirectories(const ExecutorInfo &executorInfo, const ContainerID &executorContainerId, const std::vector< Task > &tasks)
void _checkDiskUsage(const process::Future< double > &usage)
Framework * getFramework(const FrameworkID &frameworkId) const
Definition: hashset.hpp:53
virtual void ___run(const process::Future< Nothing > &future, const FrameworkID &frameworkId, const ExecutorID &executorId, const ContainerID &containerId, const std::vector< TaskInfo > &tasks, const std::vector< TaskGroupInfo > &taskGroups)
Definition: protobuf_utils.hpp:332
void _statusUpdateAcknowledgement(const process::Future< bool > &future, const TaskID &taskId, const FrameworkID &frameworkId, const UUID &uuid)
ResourceProvider(const ResourceProviderInfo &_info, const Resources &_totalResources, const Option< UUID > &_resourceVersion)
Definition: slave.hpp:1267
void removeExecutor(Framework *framework, Executor *executor)
process::Future< Nothing > _recoverContainerizer(const Option< state::SlaveState > &state)
process::Future< Nothing > _recoverVolumeGidManager(bool rebooted)
Result< std::string > user(Option< uid_t > uid=None())
Definition: su.hpp:284
hashmap< ExecutorID, process::Sequence > taskLaunchSequences
Definition: slave.hpp:1247
Result< ProcessStatus > status(pid_t pid)
Definition: proc.hpp:166
Option< UUID > resourceVersion
Definition: slave.hpp:1292
Option< StreamingHttpConnection< v1::executor::Event > > http
Definition: slave.hpp:1093
Definition: slave.hpp:1056
Definition: resources.hpp:83
friend class Executor
Definition: slave.hpp:657
void handleRunTaskGroupMessage(const process::UPID &from, RunTaskGroupMessage &&runTaskGroupMessage)
virtual void runTaskGroup(const process::UPID &from, const FrameworkInfo &frameworkInfo, const ExecutorInfo &executorInfo, const TaskGroupInfo &taskGroupInfo, const std::vector< ResourceVersionUUID > &resourceVersionUuids, const Option< bool > &launchExecutor)
bool reconnect
Definition: slave.hpp:458
virtual void executorTerminated(const FrameworkID &frameworkId, const ExecutorID &executorId, const process::Future< Option< mesos::slave::ContainerTermination >> &termination)
Definition: volume_gid_manager.hpp:42
Option< process::UPID > pid
Definition: slave.hpp:1224
Option< Error > validateResourceLimitsAndIsolators(const std::vector< TaskInfo > &tasks)
hashmap< ExecutorID, hashmap< TaskID, TaskInfo > > pendingTasks
Definition: slave.hpp:1234
enum mesos::internal::slave::Slave::State state
Slave(const std::string &id, const Flags &flags, mesos::master::detector::MasterDetector *detector, Containerizer *containerizer, Files *files, GarbageCollector *gc, TaskStatusUpdateManager *taskStatusUpdateManager, mesos::slave::ResourceEstimator *resourceEstimator, mesos::slave::QoSController *qosController, mesos::SecretGenerator *secretGenerator, VolumeGidManager *volumeGidManager, PendingFutureTracker *futureTracker, process::Owned< CSIServer > &&csiServer, const Option< process::network::unix::Socket > &executorSocket, const Option< Authorizer * > &authorizer)
Operation
Definition: cgroups.hpp:444
void _checkImageDiskUsage(const process::Future< double > &usage)
void reregisterExecutor(const process::UPID &from, const FrameworkID &frameworkId, const ExecutorID &executorId, const std::vector< TaskInfo > &tasks, const std::vector< StatusUpdate > &updates)
Slave * slave
Definition: slave.hpp:1213
Definition: duration.hpp:32
Option< mesos::slave::ContainerTermination > pendingTermination
Definition: slave.hpp:1130
std::map< std::string, std::string > executorEnvironment(const Flags &flags, const ExecutorInfo &executorInfo, const std::string &directory, const SlaveID &slaveId, const process::PID< Slave > &slavePid, const Option< Secret > &authenticationToken, bool checkpoint)
Returns a map of environment variables necessary in order to launch an executor.
void recoverFramework(const state::FrameworkState &state, const hashset< ExecutorID > &executorsToRecheckpoint, const hashmap< ExecutorID, hashset< TaskID >> &tasksToRecheckpoint)
Definition: protobuf_utils.hpp:548
void send(const process::UPID &to, const google::protobuf::Message &message)
Definition: protobuf.hpp:126
bool isSome() const
Definition: option.hpp:116
process::Future< Option< Secret > > generateSecret(const FrameworkID &frameworkId, const ExecutorID &executorId, const ContainerID &containerId)
Definition: task_status_update_manager.hpp:58
LinkedHashMap< TaskID, TaskInfo > queuedTasks
Definition: slave.hpp:1106
void statusUpdateAcknowledgement(const process::UPID &from, const SlaveID &slaveId, const FrameworkID &frameworkId, const TaskID &taskId, const std::string &uuid)
const bool checkpoint
Definition: slave.hpp:1079
void signaled(int signal, int uid)
process::Future< Nothing > __recoverOperations(const process::Future< OperationStatusUpdateManagerState > &state)
virtual void _shutdownExecutor(Framework *framework, Executor *executor)
Definition: hashmap.hpp:38
process::Future< Nothing > garbageCollect(const std::string &path)
void finalize() override
Invoked when a process is terminated.
void operationStatusAcknowledgement(const process::UPID &from, const AcknowledgeOperationStatusMessage &acknowledgement)
Definition: resource_estimator.hpp:37
hashmap< std::string, MessageHandler > message
Definition: process.hpp:455
Resources allocatedResources(const Resources &resources, const std::string &role)
Definition: containerizer.hpp:64
void shutdownExecutorTimeout(const FrameworkID &frameworkId, const ExecutorID &executorId, const ContainerID &containerId)
void attachTaskVolumeDirectory(const ExecutorInfo &executorInfo, const ContainerID &executorContainerId, const Task &task)
Definition: slave.hpp:118
void registered(const process::UPID &from, const SlaveID &slaveId, const MasterSlaveConnection &connection)
An "untyped" PID, used to encapsulate the process ID for lower-layer abstractions (eg...
Definition: pid.hpp:39
Definition: future_tracker.hpp:84
void pingTimeout(process::Future< Option< MasterInfo >> future)
void handleRunTaskMessage(const process::UPID &from, RunTaskMessage &&runTaskMessage)
const ContainerID containerId
Definition: slave.hpp:1070
Definition: state.hpp:269
void kill(const FrameworkID &frameworkId, Framework *framework, Executor *executor, const TaskID &taskId, const Option< KillPolicy > &killPolicy)
Definition: slave.hpp:1207
Option< process::UPID > pid
Definition: slave.hpp:1097
virtual void __run(const FrameworkInfo &frameworkInfo, const ExecutorInfo &executorInfo, const Option< TaskInfo > &task, const Option< TaskGroupInfo > &taskGroup, const std::vector< ResourceVersionUUID > &resourceVersionUuids, const Option< bool > &launchExecutor, bool executorGeneratedForCommandTask)
bool send(const Message &message)
Definition: http.hpp:159
ExecutorInfo getExecutorInfo(const FrameworkInfo &frameworkInfo, const TaskInfo &task) const
void forward(StatusUpdate update)
Definition: protobuf_utils.hpp:631
void reconcileOperations(const ReconcileOperationsMessage &message)
const FrameworkID id() const
Definition: slave.hpp:1166
void initialize() override
Invoked when a process gets spawned.
const T & get() const &
Definition: option.hpp:119
Definition: slave.hpp:1055
protobuf::framework::Capabilities capabilities
Definition: slave.hpp:1217
process::Future< Nothing > _recover()
virtual process::Future< Nothing > _run(const FrameworkInfo &frameworkInfo, const ExecutorInfo &executorInfo, const Option< TaskInfo > &task, const Option< TaskGroupInfo > &taskGroup, const std::vector< ResourceVersionUUID > &resourceVersionUuids, const Option< bool > &launchExecutor)
void exited(const process::UPID &pid) override
Invoked when a linked process has exited.
ResourceProviderInfo info
Definition: slave.hpp:1278
void checkpointResourcesMessage(const std::vector< Resource > &resources)
The SecretGenerator interface represents a mechanism to create a secret from a principal.
Definition: secret_generator.hpp:34
Definition: protobuf.hpp:108
const ExecutorID id
Definition: slave.hpp:1065
Definition: slave.hpp:1054
void run(const FrameworkInfo &frameworkInfo, ExecutorInfo executorInfo, Option< TaskInfo > task, Option< TaskGroupInfo > taskGroup, const std::vector< ResourceVersionUUID > &resourceVersionUuids, const process::UPID &pid, const Option< bool > &launchExecutor, bool executorGeneratedForCommandTask)
State
Definition: slave.hpp:1204
void checkImageDiskUsage()
Definition: slave.hpp:449
void executorLaunched(const FrameworkID &frameworkId, const ExecutorID &executorId, const ContainerID &containerId, const process::Future< Containerizer::LaunchResult > &future)
process::Future< Option< state::SlaveState > > _recoverTaskStatusUpdates(const Option< state::SlaveState > &slaveState)
void reregistered(const process::UPID &from, const SlaveID &slaveId, const std::vector< ReconcileTasksMessage > &reconciliations, const MasterSlaveConnection &connection)
void fileAttached(const process::Future< Nothing > &result, const std::string &path, const std::string &virtualPath)
Definition: slave.hpp:443
Definition: operation.hpp:44
std::vector< TaskGroupInfo > pendingTaskGroups
Definition: slave.hpp:1252
Try< std::vector< Entry > > list(const std::string &hierarchy, const std::string &cgroup)
Definition: slave.hpp:442
void _statusUpdate(StatusUpdate update, const Option< process::UPID > &pid, const ExecutorID &executorId, const Option< process::Future< ContainerStatus >> &containerStatus)
void launchExecutor(const process::Future< Option< Secret >> &authorizationToken, const FrameworkID &frameworkId, const ExecutorInfo &executorInfo, const google::protobuf::Map< std::string, Value::Scalar > &executorLimits, const Option< TaskInfo > &taskInfo)
Definition: boundedhashmap.hpp:27
Definition: slave.hpp:444
const FrameworkID frameworkId
Definition: slave.hpp:1068
void detected(const process::Future< Option< MasterInfo >> &_master)
#define flags
Definition: decoder.hpp:18
A "process identifier" used to uniquely identify a process when dispatching messages.
Definition: pid.hpp:289
hashmap< ExecutorID, Executor * > executors
Definition: slave.hpp:1255
Definition: attributes.hpp:24
Slave * slave
Definition: slave.hpp:1063
LinkedHashMap< TaskID, Task * > launchedTasks
Definition: slave.hpp:1114
process::Future< Nothing > recover(const Try< state::State > &state)
Definition: slave.hpp:445
void ___statusUpdate(const process::Future< Nothing > &future, const StatusUpdate &update, const Option< process::UPID > &pid)
void shutdownFramework(const process::UPID &from, const FrameworkID &frameworkId)
Nothing detachFile(const std::string &path)
virtual void killTask(const process::UPID &from, const KillTaskMessage &killTaskMessage)
friend class Framework
Definition: slave.hpp:658
virtual void __recover(const process::Future< Nothing > &future)
Resources totalResources
Definition: slave.hpp:1279
std::vector< TaskGroupInfo > queuedTaskGroups
Definition: slave.hpp:1111
An abstraction of a Master detector which can be used to detect the leading master from a group...
Definition: detector.hpp:38
static Time now()
The current clock time for either the current process that makes this call or the global clock time i...
virtual void qosCorrections()
hashmap< UUID, Operation * > operations
Definition: slave.hpp:1296
void reregisterExecutorTimeout()
Definition: slave.hpp:1265
Definition: slave.hpp:1057
void ping(const process::UPID &from, bool connected)
Definition: metrics.hpp:32
void __statusUpdate(const Option< process::Future< Nothing >> &future, const StatusUpdate &update, const Option< process::UPID > &pid, const ExecutorID &executorId, const ContainerID &containerId, bool checkpoint)
void doReliableRegistration(Duration maxBackoff)
process::Promise< Nothing > recovered
Definition: slave.hpp:453
void drain(const process::UPID &from, DrainSlaveMessage &&drainSlaveMessage)
Definition: qos_controller.hpp:44
const std::string directory
Definition: slave.hpp:1072
void statusUpdate(StatusUpdate update, const Option< process::UPID > &pid)
void checkpointResourceState(const Resources &resources, bool changeTotal)
URI http(const std::string &host, const std::string &path="/", const Option< int > &port=None(), const Option< std::string > &query=None(), const Option< std::string > &fragment=None(), const Option< std::string > &user=None(), const Option< std::string > &password=None())
Creates an http URI with the given parameters.
Definition: http.hpp:35
State
Definition: slave.hpp:440
virtual void authenticate(Duration minTimeout, Duration maxTimeout)
virtual void runTask(const process::UPID &from, const FrameworkInfo &frameworkInfo, const FrameworkID &frameworkId, const process::UPID &pid, const TaskInfo &task, const std::vector< ResourceVersionUUID > &resourceVersionUuids, const Option< bool > &launchExecutor)
FrameworkInfo info
Definition: slave.hpp:1215
void shutdown(const process::UPID &from, const std::string &message)
process::Future< Nothing > _recoverOperations(const Option< state::SlaveState > &state)
Definition: slave.hpp:957
virtual void _qosCorrections(const process::Future< std::list< mesos::slave::QoSCorrection >> &correction)
Executor * getExecutor(const FrameworkID &frameworkId, const ExecutorID &executorId) const
void registerExecutor(const process::UPID &from, const FrameworkID &frameworkId, const ExecutorID &executorId)
Definition: slave.hpp:1206
PID< MetricsProcess > metrics
void updateFramework(const UpdateFrameworkMessage &message)
LinkedHashMap< TaskID, Task * > terminatedTasks
Definition: slave.hpp:1117
constexpr const char * name
Definition: shell.hpp:41
void killPendingTask(const FrameworkID &frameworkId, Framework *framework, const TaskID &taskId)
void registerExecutorTimeout(const FrameworkID &frameworkId, const ExecutorID &executorId, const ContainerID &containerId)
Definition: slave.hpp:1144
virtual void applyOperation(const ApplyOperationMessage &message)
Definition: authenticatee.hpp:29
Definition: state.hpp:340