[jira] [Commented] (MESOS-8497) Docker parameter `name` does not work with Docker Containerizer.
[ https://issues.apache.org/jira/browse/MESOS-8497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387460#comment-16387460 ] Qian Zhang commented on MESOS-8497: --- RR: https://reviews.apache.org/r/65918/ > Docker parameter `name` does not work with Docker Containerizer. > > > Key: MESOS-8497 > URL: https://issues.apache.org/jira/browse/MESOS-8497 > Project: Mesos > Issue Type: Bug > Components: containerization >Reporter: Jörg Schad >Assignee: Qian Zhang >Priority: Critical > Labels: containerizer > Attachments: agent.log, master.log > > > When deploying a marathon app with Docker Containerizer (need to check Mesos > Containerizer) and the parameter name set, Mesos is not able to > recognize/control/kill the started container. > Steps to reproduce > # Deploy the below marathon app definition > # Watch task being stuck in staging and mesos not being able to kill > it/communicate with it > ## > {quote}e.g., Agent Logs: W0126 18:38:50.00 4988 slave.cpp:6750] Failed > to get resource statistics for executor > ‘instana-agent.1a1f8d22-02c8-11e8-b607-923c3c523109’ of framework > 41f1b534-5f9d-4b5e-bb74-a0e387d5739f-0001: Failed to run ‘docker -H > unix:///var/run/docker.sock inspect > mesos-1c6f894d-9a3e-408c-8146-47ebab2f28be’: exited with status 1; > stderr=’Error: No such image, container or task: > mesos-1c6f894d-9a3e-408c-8146-47ebab2f28be{quote} > # Check on node and see container running, but not being recognized by mesos > {noformat} > { > "id": "/docker-test", > "instances": 1, > "portDefinitions": [], > "container": { > "type": "DOCKER", > "volumes": [], > "docker": { > "image": "ubuntu:16.04", > "parameters": [ > { > "key": "name", > "value": "myname" > } > ] > } > }, > "cpus": 0.1, > "mem": 128, > "requirePorts": false, > "networks": [], > "healthChecks": [], > "fetch": [], > "constraints": [], > "cmd": "sleep 1000" > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MESOS-8497) Docker parameter `name` does not work with Docker Containerizer.
[ https://issues.apache.org/jira/browse/MESOS-8497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16341667#comment-16341667 ] Gilbert Song commented on MESOS-8497: - The root cause is here: [https://github.com/apache/mesos/blob/1.5.0-rc1/src/docker/docker.cpp#L1083~#L1090] We define the name before the parameters, so the user defined `–name` from the parameters will overwrite the name Mesos gives to the docker container (background: Mesos relies on --name to identify docker containers, the docker container is named by Mesos as `mesos-`). So any new names passed into the parameters will result in Mesos could no longer find this container. Two solutions: 1. Validate the parameters in master::validate(), to make sure no --name exists in docker arbitrary parameters. 2. Return failure on docker containerizer if the name is overwritten by any other. #1 might be a preferable and straight forward solution. > Docker parameter `name` does not work with Docker Containerizer. > > > Key: MESOS-8497 > URL: https://issues.apache.org/jira/browse/MESOS-8497 > Project: Mesos > Issue Type: Bug >Reporter: Jörg Schad >Priority: Major > Attachments: agent.log, master.log > > > When deploying a marathon app with Docker Containerizer (need to check Mesos > Containerizer) and the parameter name set, Mesos is not able to > recognize/control/kill the started container. > Steps to reproduce > # Deploy the below marathon app definition > # Watch task being stuck in staging and mesos not being able to kill it > # Check on node and see container running, but not being recognized by mesos > {noformat} > { > "id": "/docker-test", > "instances": 1, > "portDefinitions": [], > "container": { > "type": "DOCKER", > "volumes": [], > "docker": { > "image": "ubuntu:16.04", > "parameters": [ > { > "key": "name", > "value": "myname" > } > ] > } > }, > "cpus": 0.1, > "mem": 128, > "requirePorts": false, > "networks": [], > "healthChecks": [], > "fetch": [], > "constraints": [], > "cmd": "sleep 1000" > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MESOS-8497) Docker parameter `name` does not work with Docker Containerizer.
[ https://issues.apache.org/jira/browse/MESOS-8497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16341655#comment-16341655 ] Jörg Schad commented on MESOS-8497: --- [^agent.log] [^master.log] > Docker parameter `name` does not work with Docker Containerizer. > > > Key: MESOS-8497 > URL: https://issues.apache.org/jira/browse/MESOS-8497 > Project: Mesos > Issue Type: Bug >Reporter: Jörg Schad >Priority: Major > Attachments: agent.log, master.log > > > When deploying a marathon app with Docker Containerizer (need to check Mesos > Containerizer) and the parameter name set, Mesos is not able to > recognize/control/kill the started container. > Steps to reproduce > # Deploy the below marathon app definition > # Watch task being stuck in staging and mesos not being able to kill it > # Check on node and see container running, but not being recognized by mesos > {noformat} > { > "id": "/docker-test", > "instances": 1, > "portDefinitions": [], > "container": { > "type": "DOCKER", > "volumes": [], > "docker": { > "image": "ubuntu:16.04", > "parameters": [ > { > "key": "name", > "value": "myname" > } > ] > } > }, > "cpus": 0.1, > "mem": 128, > "requirePorts": false, > "networks": [], > "healthChecks": [], > "fetch": [], > "constraints": [], > "cmd": "sleep 1000" > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (MESOS-8497) Docker parameter `name` does not work with Docker Containerizer.
[ https://issues.apache.org/jira/browse/MESOS-8497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16341588#comment-16341588 ] Vinod Kone commented on MESOS-8497: --- [~js84] Can you share the master and agent logs? > Docker parameter `name` does not work with Docker Containerizer. > > > Key: MESOS-8497 > URL: https://issues.apache.org/jira/browse/MESOS-8497 > Project: Mesos > Issue Type: Bug >Reporter: Jörg Schad >Priority: Major > > When deploying a marathon app with Docker Containerizer (need to check Mesos > Containerizer) and the parameter name set, Mesos is not able to > recognize/control/kill the started container. > Steps to reproduce > # Deploy the below marathon app definition > # Watch task being stuck in staging and mesos not being able to kill it > # Check on node and see container running, but not being recognized by mesos > {noformat} > { > "id": "/docker-test", > "instances": 1, > "portDefinitions": [], > "container": { > "type": "DOCKER", > "volumes": [], > "docker": { > "image": "ubuntu:16.04", > "parameters": [ > { > "key": "name", > "value": "myname" > } > ] > } > }, > "cpus": 0.1, > "mem": 128, > "requirePorts": false, > "networks": [], > "healthChecks": [], > "fetch": [], > "constraints": [], > "cmd": "sleep 1000" > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)