You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Jie Yu (JIRA)" <ji...@apache.org> on 2017/05/23 22:56:04 UTC

[jira] [Updated] (MESOS-7492) Introduce a daemon manager in the agent.

     [ https://issues.apache.org/jira/browse/MESOS-7492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jie Yu updated MESOS-7492:
--------------------------
    Description: 
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}
class DaemonManager
{
public:
  Future<Nothing> register(
    const ContainerID& containerId,
    const ContainerInfo& containerInfo,
    const CommandInfo& command);

  Future<Nothing> unregister(const ContainerID& containerId);

  Future<hashset<ContainerID>> ps();

  Future<ContainerStatus> status(const ContainerID& containerId);
};
{code}

  was:
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. 


> 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
>
> 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}
> class DaemonManager
> {
> public:
>   Future<Nothing> register(
>     const ContainerID& containerId,
>     const ContainerInfo& containerInfo,
>     const CommandInfo& command);
>   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.3.15#6346)