You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Joseph Wu (JIRA)" <ji...@apache.org> on 2017/11/06 19:35:00 UTC
[jira] [Commented] (MESOS-8146) Mesos agent fails containers on
restart if containers were started with memory-swap less than memory + 64mb
[ https://issues.apache.org/jira/browse/MESOS-8146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16240756#comment-16240756 ]
Joseph Wu commented on MESOS-8146:
----------------------------------
One important thing to note is that specifying arbitrary parameters to the DockerContainerizer is not guaranteed to work:
https://github.com/apache/mesos/blob/1.4.x/include/mesos/mesos.proto#L2850-L2854
The error here probably comes from a conflict between the underlying resource isolation. Under the covers, Mesos can resize the container's cpu/memory. The extra parameters you specify breaks the assumption Mesos is making (about how Docker works).
> Mesos agent fails containers on restart if containers were started with memory-swap less than memory + 64mb
> -----------------------------------------------------------------------------------------------------------
>
> Key: MESOS-8146
> URL: https://issues.apache.org/jira/browse/MESOS-8146
> Project: Mesos
> Issue Type: Bug
> Components: agent
> Affects Versions: 1.4.0
> Environment: Mesos 1.4.0
> Redhat 7.4
> Marathon 1.4.8
> docker 1.12.6
> docker api 1.24
> Reporter: Guchakov Nikita
>
> I'd have some strange behaviour with Mesos when trying to disable swap on docker containers. Our mesos version in use is 1.4.0
> When marathon deploys containers with
> ```
> "parameters": [
> {
> "key": "memory",
> "value": "1024m"
> },
> {
> "key": "memory-swap",
> "value": "1024m"
> }
> ]
> ```
> then it deploys successfully. BUT when mesos-slave restarts and tries to deregister executor it fails:
> ```E1027 11:11:47.367416 12626 slave.cpp:4287] Failed to update resources for container 6e3e07af-db09-4dc0-88f8-4e5599529cbe of executor 'templates-api.d72549fd-baed-11e7-9742-96b37b4eca54' of framework 20171020-202151-141892780-5050-1-0001, destroying container: Failed to set 'memory.limit_in_bytes': Invalid argument
> ```
> Things goes more weird when I tried different memory-swap configurations:
> Containers doesn't destroyed on slave's restart only when memory-swap >= memory + 64mb.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)