You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Avinash sridharan <av...@mesosphere.io> on 2017/08/02 18:57:46 UTC
Re: Review Request 61237: Updated docker executor to return IPv6
address of a container.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61237/
-----------------------------------------------------------
(Updated Aug. 2, 2017, 6:57 p.m.)
Review request for mesos, Jie Yu and Qian Zhang.
Changes
-------
Addressed Qian's comments.
Bugs: MESOS-7807
https://issues.apache.org/jira/browse/MESOS-7807
Repository: mesos
Description
-------
A docker container can have a v4 and a v6 address. Currently the docker
executor was returning only the IPv4 address. This changes allows the
executor to return the IPv4 and IPv6 address of the container.
Diffs (updated)
-----
src/docker/docker.hpp 5593cb635e073334c6c2566be3d803cd7febb1c3
src/docker/docker.cpp 8081c0203bf62cf62aa3b93d745f0e829ad65509
src/docker/executor.cpp e03f24461ec7b19cacae79c020406f0a475f2d19
Diff: https://reviews.apache.org/r/61237/diff/2/
Changes: https://reviews.apache.org/r/61237/diff/1-2/
Testing
-------
Start agent:
sudo ./bin/mesos-agent.sh --ip=10.0.2.15 --master=10.0.2.15:5050 --work_dir=/tmp/mesos --containerizers=mesos,docker
Start master:
sudo ./bin/mesos-master.sh --ip=10.0.2.15 --work_dir=/tmp/mesos-master
Use mesos-execute to launch a docker container on an IPv6 network:
sudo src/mesos-execute --master=10.0.2.15:5050 --task=file:///home/vagrant/dev/mesos_tasks/docker.json 2> log.txt
cat /home/vagrant/dev/mesos_tasks/docker.json
{
"name": "test",
"task_id": {"value" : "test"},
"agent_id": {"value" : ""},
"resources": [
{
"name": "cpus",
"type": "SCALAR",
"scalar": {
"value": 0.1
}
},
{
"name": "mem",
"type": "SCALAR",
"scalar": {
"value": 32
}
}
],
"command": {
"shell": false
},
"container": {
"type": "DOCKER",
"docker": {
"image": "nginx",
"network": "USER"
},
"network_infos": [
{
"name": "ipv6"
}
]
}
}
Curl the Mesos state to make sure that the right IPv6 addresses are reflected for the container:
curl http://10.0.2.15:5051/state | jq
"role": "*",
"statuses": [
{
"state": "TASK_RUNNING",
"timestamp": 1501288232.79384,
"container_status": {
"container_id": {
"value": "59319a5b-a28b-46bf-a20f-8472e6598abd"
},
"network_infos": [
{
"ip_addresses": [
{
"protocol": "IPv4",
"ip_address": "172.19.0.2"
},
{
"protocol": "IPv6",
"ip_address": "fd00:0:0:1::2"
}
],
"name": "ipv6"
}
]
}
}
],
"container": {
"type": "DOCKER",
"docker": {
"image": "nginx",
"network": "USER",
"privileged": false
},
"network_infos": [
{
"name": "ipv6"
}
]
}
}
],
Thanks,
Avinash sridharan
Re: Review Request 61237: Updated docker executor to return IPv6
address of a container.
Posted by Avinash sridharan <av...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61237/
-----------------------------------------------------------
(Updated Aug. 25, 2017, 6:54 a.m.)
Review request for mesos, Jie Yu and Qian Zhang.
Changes
-------
Fixed Qian's comments.
Bugs: MESOS-7807
https://issues.apache.org/jira/browse/MESOS-7807
Repository: mesos
Description
-------
A docker container can have a v4 and a v6 address. Currently the docker
executor was returning only the IPv4 address. This changes allows the
executor to return the IPv4 and IPv6 address of the container.
Diffs (updated)
-----
src/docker/docker.hpp 95e60a7dbbd6ccc659f70ca3dca8d13433f3ea07
src/docker/docker.cpp 192e170acce895f80df6c83e437da020489de468
src/docker/executor.cpp 99a62244b7805d25b926d0293cb62574981d2878
Diff: https://reviews.apache.org/r/61237/diff/4/
Changes: https://reviews.apache.org/r/61237/diff/3-4/
Testing
-------
Start agent:
sudo ./bin/mesos-agent.sh --ip=10.0.2.15 --master=10.0.2.15:5050 --work_dir=/tmp/mesos --containerizers=mesos,docker
Start master:
sudo ./bin/mesos-master.sh --ip=10.0.2.15 --work_dir=/tmp/mesos-master
Use mesos-execute to launch a docker container on an IPv6 network:
sudo src/mesos-execute --master=10.0.2.15:5050 --task=file:///home/vagrant/dev/mesos_tasks/docker.json 2> log.txt
cat /home/vagrant/dev/mesos_tasks/docker.json
{
"name": "test",
"task_id": {"value" : "test"},
"agent_id": {"value" : ""},
"resources": [
{
"name": "cpus",
"type": "SCALAR",
"scalar": {
"value": 0.1
}
},
{
"name": "mem",
"type": "SCALAR",
"scalar": {
"value": 32
}
}
],
"command": {
"shell": false
},
"container": {
"type": "DOCKER",
"docker": {
"image": "nginx",
"network": "USER"
},
"network_infos": [
{
"name": "ipv6"
}
]
}
}
Curl the Mesos state to make sure that the right IPv6 addresses are reflected for the container:
curl http://10.0.2.15:5051/state | jq
"role": "*",
"statuses": [
{
"state": "TASK_RUNNING",
"timestamp": 1501288232.79384,
"container_status": {
"container_id": {
"value": "59319a5b-a28b-46bf-a20f-8472e6598abd"
},
"network_infos": [
{
"ip_addresses": [
{
"protocol": "IPv4",
"ip_address": "172.19.0.2"
},
{
"protocol": "IPv6",
"ip_address": "fd00:0:0:1::2"
}
],
"name": "ipv6"
}
]
}
}
],
"container": {
"type": "DOCKER",
"docker": {
"image": "nginx",
"network": "USER",
"privileged": false
},
"network_infos": [
{
"name": "ipv6"
}
]
}
}
],
Thanks,
Avinash sridharan
Re: Review Request 61237: Updated docker executor to return IPv6
address of a container.
Posted by Qian Zhang <zh...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61237/#review183719
-----------------------------------------------------------
src/docker/docker.cpp
Line 326 (original), 329 (patched)
<https://reviews.apache.org/r/61237/#comment259769>
Not yours. s/fail back/fallback/
- Qian Zhang
On Aug. 24, 2017, 8:48 a.m., Avinash sridharan wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/61237/
> -----------------------------------------------------------
>
> (Updated Aug. 24, 2017, 8:48 a.m.)
>
>
> Review request for mesos, Jie Yu and Qian Zhang.
>
>
> Bugs: MESOS-7807
> https://issues.apache.org/jira/browse/MESOS-7807
>
>
> Repository: mesos
>
>
> Description
> -------
>
> A docker container can have a v4 and a v6 address. Currently the docker
> executor was returning only the IPv4 address. This changes allows the
> executor to return the IPv4 and IPv6 address of the container.
>
>
> Diffs
> -----
>
> src/docker/docker.hpp 95e60a7dbbd6ccc659f70ca3dca8d13433f3ea07
> src/docker/docker.cpp 192e170acce895f80df6c83e437da020489de468
> src/docker/executor.cpp 99a62244b7805d25b926d0293cb62574981d2878
>
>
> Diff: https://reviews.apache.org/r/61237/diff/3/
>
>
> Testing
> -------
>
> Start agent:
> sudo ./bin/mesos-agent.sh --ip=10.0.2.15 --master=10.0.2.15:5050 --work_dir=/tmp/mesos --containerizers=mesos,docker
>
> Start master:
> sudo ./bin/mesos-master.sh --ip=10.0.2.15 --work_dir=/tmp/mesos-master
>
> Use mesos-execute to launch a docker container on an IPv6 network:
> sudo src/mesos-execute --master=10.0.2.15:5050 --task=file:///home/vagrant/dev/mesos_tasks/docker.json 2> log.txt
>
> cat /home/vagrant/dev/mesos_tasks/docker.json
> {
> "name": "test",
> "task_id": {"value" : "test"},
> "agent_id": {"value" : ""},
> "resources": [
> {
> "name": "cpus",
> "type": "SCALAR",
> "scalar": {
> "value": 0.1
> }
> },
> {
> "name": "mem",
> "type": "SCALAR",
> "scalar": {
> "value": 32
> }
> }
> ],
> "command": {
> "shell": false
> },
> "container": {
> "type": "DOCKER",
> "docker": {
> "image": "nginx",
> "network": "USER"
> },
> "network_infos": [
> {
> "name": "ipv6"
> }
> ]
> }
> }
>
>
> Curl the Mesos state to make sure that the right IPv6 addresses are reflected for the container:
> curl http://10.0.2.15:5051/state | jq
>
> "role": "*",
> "statuses": [
> {
> "state": "TASK_RUNNING",
> "timestamp": 1501288232.79384,
> "container_status": {
> "container_id": {
> "value": "59319a5b-a28b-46bf-a20f-8472e6598abd"
> },
> "network_infos": [
> {
> "ip_addresses": [
> {
> "protocol": "IPv4",
> "ip_address": "172.19.0.2"
> },
> {
> "protocol": "IPv6",
> "ip_address": "fd00:0:0:1::2"
> }
> ],
> "name": "ipv6"
> }
> ]
> }
> }
> ],
> "container": {
> "type": "DOCKER",
> "docker": {
> "image": "nginx",
> "network": "USER",
> "privileged": false
> },
> "network_infos": [
> {
> "name": "ipv6"
> }
> ]
> }
> }
> ],
>
>
> Thanks,
>
> Avinash sridharan
>
>
Re: Review Request 61237: Updated docker executor to return IPv6
address of a container.
Posted by Avinash sridharan <av...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61237/
-----------------------------------------------------------
(Updated Aug. 24, 2017, 12:48 a.m.)
Review request for mesos, Jie Yu and Qian Zhang.
Changes
-------
Rebased.
Bugs: MESOS-7807
https://issues.apache.org/jira/browse/MESOS-7807
Repository: mesos
Description
-------
A docker container can have a v4 and a v6 address. Currently the docker
executor was returning only the IPv4 address. This changes allows the
executor to return the IPv4 and IPv6 address of the container.
Diffs (updated)
-----
src/docker/docker.hpp 95e60a7dbbd6ccc659f70ca3dca8d13433f3ea07
src/docker/docker.cpp 192e170acce895f80df6c83e437da020489de468
src/docker/executor.cpp 99a62244b7805d25b926d0293cb62574981d2878
Diff: https://reviews.apache.org/r/61237/diff/3/
Changes: https://reviews.apache.org/r/61237/diff/2-3/
Testing
-------
Start agent:
sudo ./bin/mesos-agent.sh --ip=10.0.2.15 --master=10.0.2.15:5050 --work_dir=/tmp/mesos --containerizers=mesos,docker
Start master:
sudo ./bin/mesos-master.sh --ip=10.0.2.15 --work_dir=/tmp/mesos-master
Use mesos-execute to launch a docker container on an IPv6 network:
sudo src/mesos-execute --master=10.0.2.15:5050 --task=file:///home/vagrant/dev/mesos_tasks/docker.json 2> log.txt
cat /home/vagrant/dev/mesos_tasks/docker.json
{
"name": "test",
"task_id": {"value" : "test"},
"agent_id": {"value" : ""},
"resources": [
{
"name": "cpus",
"type": "SCALAR",
"scalar": {
"value": 0.1
}
},
{
"name": "mem",
"type": "SCALAR",
"scalar": {
"value": 32
}
}
],
"command": {
"shell": false
},
"container": {
"type": "DOCKER",
"docker": {
"image": "nginx",
"network": "USER"
},
"network_infos": [
{
"name": "ipv6"
}
]
}
}
Curl the Mesos state to make sure that the right IPv6 addresses are reflected for the container:
curl http://10.0.2.15:5051/state | jq
"role": "*",
"statuses": [
{
"state": "TASK_RUNNING",
"timestamp": 1501288232.79384,
"container_status": {
"container_id": {
"value": "59319a5b-a28b-46bf-a20f-8472e6598abd"
},
"network_infos": [
{
"ip_addresses": [
{
"protocol": "IPv4",
"ip_address": "172.19.0.2"
},
{
"protocol": "IPv6",
"ip_address": "fd00:0:0:1::2"
}
],
"name": "ipv6"
}
]
}
}
],
"container": {
"type": "DOCKER",
"docker": {
"image": "nginx",
"network": "USER",
"privileged": false
},
"network_infos": [
{
"name": "ipv6"
}
]
}
}
],
Thanks,
Avinash sridharan