You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by Olivier Sallou <ol...@irisa.fr> on 2014/10/21 11:58:12 UTC
use of docker containerizer
Hi,
I try to use the default docker containizer but I can't get it work... :-(
My Task is correctly executed when using default executor with CommandInfo.
If I add a ContainerInfo it fails.
I launch my slave with options: –-containerizers=docker,mesos
(this is a source install, not system wide installed)
I see in slave logs:
E1021 11:50:26.392259 12748 slave.cpp:2656] Container
'4460417c-1f78-4d99-ab07-8524c73ab35c' for executor '0' of framework
'20141021-113729-16777343-5050-12670-0003' failed to start: None of the
enabled containerizers (mesos) could create a container for the provided
TaskInfo/ExecutorInfo message.
and Tasks ends in FAILED state.
My Task looks like:
...
command {
value: "ls"
shell: false
arguments: "-l"
arguments: "/etc"
}
container {
type: DOCKER
docker {
image: "docker:///dockerimages/centos-core"
}
}
It acts as if the docker option on slave is not taken into account.
I found on Internet that a file need to be created:
echo 'docker,mesos' > /etc/mesos-slave/containerizers
to activate the flag, but I do not know where this file should be
created when mesos is not system-wide installed.
Thanks
Olivier
--
gpg key id: 4096R/326D8438 (keyring.debian.org)
Key fingerprint = 5FB4 6F83 D3B9 5204 6335 D26D 78DC 68DB 326D 8438
Re: use of docker containerizer
Posted by Adam Bordelon <ad...@mesosphere.io>.
Hmm, you're right that it should include "docker" in the "enabled
containerizers (mesos)" log message.
Maybe you could try setting the MESOS_CONTAINERIZERS environment variable
instead, or wrap "docker,mesos" in quotes?
On Wed, Oct 22, 2014 at 2:33 AM, Olivier Sallou <ol...@irisa.fr>
wrote:
>
> On 10/22/2014 11:02 AM, Adam Bordelon wrote:
> > Olivier,
> >
> > You should only need to create the /etc/mesos-slave/containerizers OR
> > specify --containerizers on the mesos-slave command-line. Either should
> > work.
> > - Is dockerd installed and running on the slave?
> yes docker is running on slave
> > - You could be running into MESOS-1873
> > <https://issues.apache.org/jira/browse/MESOS-1873>. Try setting your
> value:
> > "ls -l /etc" instead of using the arguments fields with shell: false
> I tried too, my Task contains:
>
> command {
> shell: true
> arguments: "ls"
> arguments: "-l"
> arguments: "/etc"
> }
> container {
> type: DOCKER
> docker {
> image: "dockerimages/centos-core"
> }
> }
>
> but I have the same error:
>
> Container '3f98b4ee-3417-407f-8717-b60a1ab6f359' for executor '0' of
> framework '20141022-112627-16777343-5050-6219-0000' failed to start:
> None of the enabled containerizers (mesos) could create a container for
> the provided TaskInfo/ExecutorInfo message.
>
> I find strange to find "enabled containerizers (mesos)" instead of
> something like "enabled containerizers (docker,mesos)"
> >
> > On Tue, Oct 21, 2014 at 2:58 AM, Olivier Sallou <olivier.sallou@irisa.fr
> >
> > wrote:
> >
> >> Hi,
> >> I try to use the default docker containizer but I can't get it work...
> :-(
> >>
> >> My Task is correctly executed when using default executor with
> CommandInfo.
> >>
> >> If I add a ContainerInfo it fails.
> >>
> >>
> >> I launch my slave with options: –-containerizers=docker,mesos
> >> (this is a source install, not system wide installed)
> >>
> >> I see in slave logs:
> >>
> >> E1021 11:50:26.392259 12748 slave.cpp:2656] Container
> >> '4460417c-1f78-4d99-ab07-8524c73ab35c' for executor '0' of framework
> >> '20141021-113729-16777343-5050-12670-0003' failed to start: None of the
> >> enabled containerizers (mesos) could create a container for the provided
> >> TaskInfo/ExecutorInfo message.
> >>
> >> and Tasks ends in FAILED state.
> >>
> >> My Task looks like:
> >>
> >> ...
> >> command {
> >> value: "ls"
> >> shell: false
> >> arguments: "-l"
> >> arguments: "/etc"
> >> }
> >> container {
> >> type: DOCKER
> >> docker {
> >> image: "docker:///dockerimages/centos-core"
> >> }
> >> }
> >>
> >>
> >> It acts as if the docker option on slave is not taken into account.
> >>
> >> I found on Internet that a file need to be created:
> >>
> >> echo 'docker,mesos' > /etc/mesos-slave/containerizers
> >>
> >> to activate the flag, but I do not know where this file should be
> >> created when mesos is not system-wide installed.
> >>
> >> Thanks
> >>
> >> Olivier
> >>
> >> --
> >>
> >>
> >> gpg key id: 4096R/326D8438 (keyring.debian.org)
> >> Key fingerprint = 5FB4 6F83 D3B9 5204 6335 D26D 78DC 68DB 326D 8438
> >>
> >>
>
> --
> Olivier Sallou
> IRISA / University of Rennes 1
> Campus de Beaulieu, 35000 RENNES - FRANCE
> Tel: 02.99.84.71.95
>
> gpg key id: 4096R/326D8438 (keyring.debian.org)
> Key fingerprint = 5FB4 6F83 D3B9 5204 6335 D26D 78DC 68DB 326D 8438
>
>
>
Re: use of docker containerizer
Posted by Olivier Sallou <ol...@irisa.fr>.
On 10/22/2014 11:02 AM, Adam Bordelon wrote:
> Olivier,
>
> You should only need to create the /etc/mesos-slave/containerizers OR
> specify --containerizers on the mesos-slave command-line. Either should
> work.
> - Is dockerd installed and running on the slave?
yes docker is running on slave
> - You could be running into MESOS-1873
> <https://issues.apache.org/jira/browse/MESOS-1873>. Try setting your value:
> "ls -l /etc" instead of using the arguments fields with shell: false
I tried too, my Task contains:
command {
shell: true
arguments: "ls"
arguments: "-l"
arguments: "/etc"
}
container {
type: DOCKER
docker {
image: "dockerimages/centos-core"
}
}
but I have the same error:
Container '3f98b4ee-3417-407f-8717-b60a1ab6f359' for executor '0' of
framework '20141022-112627-16777343-5050-6219-0000' failed to start:
None of the enabled containerizers (mesos) could create a container for
the provided TaskInfo/ExecutorInfo message.
I find strange to find "enabled containerizers (mesos)" instead of
something like "enabled containerizers (docker,mesos)"
>
> On Tue, Oct 21, 2014 at 2:58 AM, Olivier Sallou <ol...@irisa.fr>
> wrote:
>
>> Hi,
>> I try to use the default docker containizer but I can't get it work... :-(
>>
>> My Task is correctly executed when using default executor with CommandInfo.
>>
>> If I add a ContainerInfo it fails.
>>
>>
>> I launch my slave with options: –-containerizers=docker,mesos
>> (this is a source install, not system wide installed)
>>
>> I see in slave logs:
>>
>> E1021 11:50:26.392259 12748 slave.cpp:2656] Container
>> '4460417c-1f78-4d99-ab07-8524c73ab35c' for executor '0' of framework
>> '20141021-113729-16777343-5050-12670-0003' failed to start: None of the
>> enabled containerizers (mesos) could create a container for the provided
>> TaskInfo/ExecutorInfo message.
>>
>> and Tasks ends in FAILED state.
>>
>> My Task looks like:
>>
>> ...
>> command {
>> value: "ls"
>> shell: false
>> arguments: "-l"
>> arguments: "/etc"
>> }
>> container {
>> type: DOCKER
>> docker {
>> image: "docker:///dockerimages/centos-core"
>> }
>> }
>>
>>
>> It acts as if the docker option on slave is not taken into account.
>>
>> I found on Internet that a file need to be created:
>>
>> echo 'docker,mesos' > /etc/mesos-slave/containerizers
>>
>> to activate the flag, but I do not know where this file should be
>> created when mesos is not system-wide installed.
>>
>> Thanks
>>
>> Olivier
>>
>> --
>>
>>
>> gpg key id: 4096R/326D8438 (keyring.debian.org)
>> Key fingerprint = 5FB4 6F83 D3B9 5204 6335 D26D 78DC 68DB 326D 8438
>>
>>
--
Olivier Sallou
IRISA / University of Rennes 1
Campus de Beaulieu, 35000 RENNES - FRANCE
Tel: 02.99.84.71.95
gpg key id: 4096R/326D8438 (keyring.debian.org)
Key fingerprint = 5FB4 6F83 D3B9 5204 6335 D26D 78DC 68DB 326D 8438
Re: use of docker containerizer
Posted by Adam Bordelon <ad...@mesosphere.io>.
Olivier,
You should only need to create the /etc/mesos-slave/containerizers OR
specify --containerizers on the mesos-slave command-line. Either should
work.
- Is dockerd installed and running on the slave?
- You could be running into MESOS-1873
<https://issues.apache.org/jira/browse/MESOS-1873>. Try setting your value:
"ls -l /etc" instead of using the arguments fields with shell: false
On Tue, Oct 21, 2014 at 2:58 AM, Olivier Sallou <ol...@irisa.fr>
wrote:
> Hi,
> I try to use the default docker containizer but I can't get it work... :-(
>
> My Task is correctly executed when using default executor with CommandInfo.
>
> If I add a ContainerInfo it fails.
>
>
> I launch my slave with options: –-containerizers=docker,mesos
> (this is a source install, not system wide installed)
>
> I see in slave logs:
>
> E1021 11:50:26.392259 12748 slave.cpp:2656] Container
> '4460417c-1f78-4d99-ab07-8524c73ab35c' for executor '0' of framework
> '20141021-113729-16777343-5050-12670-0003' failed to start: None of the
> enabled containerizers (mesos) could create a container for the provided
> TaskInfo/ExecutorInfo message.
>
> and Tasks ends in FAILED state.
>
> My Task looks like:
>
> ...
> command {
> value: "ls"
> shell: false
> arguments: "-l"
> arguments: "/etc"
> }
> container {
> type: DOCKER
> docker {
> image: "docker:///dockerimages/centos-core"
> }
> }
>
>
> It acts as if the docker option on slave is not taken into account.
>
> I found on Internet that a file need to be created:
>
> echo 'docker,mesos' > /etc/mesos-slave/containerizers
>
> to activate the flag, but I do not know where this file should be
> created when mesos is not system-wide installed.
>
> Thanks
>
> Olivier
>
> --
>
>
> gpg key id: 4096R/326D8438 (keyring.debian.org)
> Key fingerprint = 5FB4 6F83 D3B9 5204 6335 D26D 78DC 68DB 326D 8438
>
>