[
https://issues.apache.org/jira/browse/MESOS-7492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jie Yu reassigned MESOS-7492:
-----------------------------
Assignee: Joseph Wu
> Introduce a daemon manager in the agent.
> ----------------------------------------
>
> Key: MESOS-7492
> URL: https://issues.apache.org/jira/browse/MESOS-7492
> Project: Mesos
> Issue Type: Task
> Reporter: Jie Yu
> Assignee: Joseph Wu
> Labels: mesosphere, storage
>
> Once we have standalone container support from the containerizer, we should
> consider adding a daemon manager inside the agent. It'll be like 'monit',
> 'upstart' or 'systemd', but with very limited functionalities. For instance,
> as a start, the manager will simply always restart the daemons if the daemon
> fails. It'll also try to cleanup unknown daemons.
> This feature will be used to manage CSI plugin containers on the agent.
> The daemon manager should have an interface allowing operators to "register"
> a daemon with a name and a config of the daemon. The daemon manager is
> responsible for restarting the daemon if it crashes until some one explicitly
> "unregister" it. Some simple backoff and health check functionality should be
> provided.
> We probably need a small design doc for this.
> {code}
> message DaemonConfig {
> optional ContainerInfo container;
> optional CommandInfo command;
> optional uint32 poll_interval;
> optional uint32 initial_delay;
> optional CheckInfo check; // For health check.
> }
> class DaemonManager
> {
> public:
> Future<Nothing> register(
> const ContainerID& containerId,
> const DaemonConfig& config;
> Future<Nothing> unregister(const ContainerID& containerId);
> Future<hashset<ContainerID>> ps();
> Future<ContainerStatus> status(const ContainerID& containerId);
> };
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)