[ 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)