提交 f887e96c 编写于 作者: A amyMaYun 提交者: Gitee

命令更新

上级 2ace61f5
......@@ -2,12 +2,12 @@
## 功能描述<a name="zh-cn_topic_0182200848_section14614727134812"></a>
docker-tools工具可以对系统容器进行动态添加/删除路由表。
iSulad-tools工具可以对系统容器进行动态添加/删除路由表。
## 命令格式<a name="zh-cn_topic_0182200848_section9239248135514"></a>
```
docker-tools [COMMADN][OPTIONS] <container_id> [ARG...]
isulad-tools [COMMADN][OPTIONS] <container_id> [ARG...]
```
其中:
......@@ -23,82 +23,82 @@ ARG:命令对应的参数。
## 接口说明<a name="zh-cn_topic_0182200848_section17597144212486"></a>
<a name="zh-cn_topic_0182200848_table1869210387418"></a>
<table><thead align="left"><tr id="zh-cn_topic_0182200848_row1569373816419"><th class="cellrowborder" valign="top" width="16.028397160283973%" id="mcps1.1.5.1.1"><p id="zh-cn_topic_0182200848_p106936387415"><a name="zh-cn_topic_0182200848_p106936387415"></a><a name="zh-cn_topic_0182200848_p106936387415"></a>命令</p>
</th>
<th class="cellrowborder" valign="top" width="22.187781221877813%" id="mcps1.1.5.1.2"><p id="zh-cn_topic_0182200848_p43193341215"><a name="zh-cn_topic_0182200848_p43193341215"></a><a name="zh-cn_topic_0182200848_p43193341215"></a>功能说明</p>
</th>
<th class="cellrowborder" valign="top" width="30.45695430456954%" id="mcps1.1.5.1.3"><p id="zh-cn_topic_0182200848_p2170152961216"><a name="zh-cn_topic_0182200848_p2170152961216"></a><a name="zh-cn_topic_0182200848_p2170152961216"></a>选项说明</p>
</th>
<th class="cellrowborder" valign="top" width="31.326867313268675%" id="mcps1.1.5.1.4"><p id="zh-cn_topic_0182200848_p15693173814112"><a name="zh-cn_topic_0182200848_p15693173814112"></a><a name="zh-cn_topic_0182200848_p15693173814112"></a>参数说明</p>
</th>
</tr>
</thead>
<tbody><tr id="zh-cn_topic_0182200848_row12693163810415"><td class="cellrowborder" valign="top" width="16.028397160283973%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0182200848_p8603174842418"><a name="zh-cn_topic_0182200848_p8603174842418"></a><a name="zh-cn_topic_0182200848_p8603174842418"></a>add-route</p>
</td>
<td class="cellrowborder" valign="top" width="22.187781221877813%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0182200848_p43636507713"><a name="zh-cn_topic_0182200848_p43636507713"></a><a name="zh-cn_topic_0182200848_p43636507713"></a>将网络路由规则添加到容器中。</p>
</td>
<td class="cellrowborder" valign="top" width="30.45695430456954%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0182200848_p11701929151216"><a name="zh-cn_topic_0182200848_p11701929151216"></a><a name="zh-cn_topic_0182200848_p11701929151216"></a>支持的选项如下:</p>
<p id="zh-cn_topic_0182200848_p0431852201310"><a name="zh-cn_topic_0182200848_p0431852201310"></a><a name="zh-cn_topic_0182200848_p0431852201310"></a>--update-config-only:添加此参数,只更新配置文件,不做实际的更新路由表的动作。</p>
</td>
<td class="cellrowborder" valign="top" width="31.326867313268675%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0182200848_p4970743143512"><a name="zh-cn_topic_0182200848_p4970743143512"></a><a name="zh-cn_topic_0182200848_p4970743143512"></a>参数格式:[{rule1},{rule2}]</p>
<p id="zh-cn_topic_0182200848_p615914310354"><a name="zh-cn_topic_0182200848_p615914310354"></a><a name="zh-cn_topic_0182200848_p615914310354"></a>rule样例:</p>
<p id="zh-cn_topic_0182200848_p12159163116357"><a name="zh-cn_topic_0182200848_p12159163116357"></a><a name="zh-cn_topic_0182200848_p12159163116357"></a>'[{"dest":"default", "gw":"192.168.10.1"},{"dest":"192.168.0.0/16","dev":"eth0","src":"192.168.1.2"}]'</p>
<a name="zh-cn_topic_0182200848_ul1058312615818"></a><a name="zh-cn_topic_0182200848_ul1058312615818"></a><ul id="zh-cn_topic_0182200848_ul1058312615818"><li>dest:目标网络,如果为空则是默认网关。</li><li>src:路由源IP。</li><li>gw:路由网关。</li><li>dev:网络设备。</li></ul>
</td>
</tr>
<tr id="zh-cn_topic_0182200848_row12634059013"><td class="cellrowborder" valign="top" width="16.028397160283973%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0182200848_p17486195414355"><a name="zh-cn_topic_0182200848_p17486195414355"></a><a name="zh-cn_topic_0182200848_p17486195414355"></a>remove-route</p>
</td>
<td class="cellrowborder" valign="top" width="22.187781221877813%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0182200848_p9398191102119"><a name="zh-cn_topic_0182200848_p9398191102119"></a><a name="zh-cn_topic_0182200848_p9398191102119"></a>从容器中删除路由。</p>
</td>
<td class="cellrowborder" valign="top" width="30.45695430456954%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0182200848_p1217002917127"><a name="zh-cn_topic_0182200848_p1217002917127"></a><a name="zh-cn_topic_0182200848_p1217002917127"></a>支持的选项如下:</p>
<p id="zh-cn_topic_0182200848_p9642651372"><a name="zh-cn_topic_0182200848_p9642651372"></a><a name="zh-cn_topic_0182200848_p9642651372"></a>--update-config-only:设置此参数,只更新配置文件,不做实际从容器中删除路由的动作。</p>
</td>
<td class="cellrowborder" valign="top" width="31.326867313268675%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0182200848_p185861042134216"><a name="zh-cn_topic_0182200848_p185861042134216"></a><a name="zh-cn_topic_0182200848_p185861042134216"></a>参数格式:[{rule1},{rule2}]</p>
<p id="zh-cn_topic_0182200848_p19384145193619"><a name="zh-cn_topic_0182200848_p19384145193619"></a><a name="zh-cn_topic_0182200848_p19384145193619"></a>rule样例:</p>
<p id="zh-cn_topic_0182200848_p7384252365"><a name="zh-cn_topic_0182200848_p7384252365"></a><a name="zh-cn_topic_0182200848_p7384252365"></a>'[{"dest":"default", "gw":"192.168.10.1"},{"dest":"192.168.0.0/16","dev":"eth0","src":"192.168.1.2"}]'</p>
<a name="zh-cn_topic_0182200848_ul208756521426"></a><a name="zh-cn_topic_0182200848_ul208756521426"></a><ul id="zh-cn_topic_0182200848_ul208756521426"><li>dest:目标网络,如果为空则是默认网关。</li><li>src:路由源IP。</li><li>gw:路由网关。</li><li>dev:网络设备。</li></ul>
</td>
</tr>
<tr id="zh-cn_topic_0182200848_row915811441301"><td class="cellrowborder" valign="top" width="16.028397160283973%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0182200848_p1512713135379"><a name="zh-cn_topic_0182200848_p1512713135379"></a><a name="zh-cn_topic_0182200848_p1512713135379"></a>list-route</p>
</td>
<td class="cellrowborder" valign="top" width="22.187781221877813%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0182200848_p144972610376"><a name="zh-cn_topic_0182200848_p144972610376"></a><a name="zh-cn_topic_0182200848_p144972610376"></a>列出容器中所有的路由规则。</p>
</td>
<td class="cellrowborder" valign="top" width="30.45695430456954%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0182200848_p1517092931217"><a name="zh-cn_topic_0182200848_p1517092931217"></a><a name="zh-cn_topic_0182200848_p1517092931217"></a>支持的选项如下:</p>
<a name="zh-cn_topic_0182200848_ul2807411144318"></a><a name="zh-cn_topic_0182200848_ul2807411144318"></a><ul id="zh-cn_topic_0182200848_ul2807411144318"><li>--pretty:按照json格式输出。</li><li>--filter:按照过滤格式输出,比如--filter '{"ip":"192.168.3.4/24", "Mtu":1500}'。</li></ul>
</td>
<td class="cellrowborder" valign="top" width="31.326867313268675%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0182200848_p174731584319"><a name="zh-cn_topic_0182200848_p174731584319"></a><a name="zh-cn_topic_0182200848_p174731584319"></a></p>
</td>
</tr>
</tbody>
<table><thead align="left"><tr id="zh-cn_topic_0182200848_row1569373816419"><th class="cellrowborder" valign="top" width="16.028397160283973%" id="mcps1.1.5.1.1"><p id="zh-cn_topic_0182200848_p106936387415"><a name="zh-cn_topic_0182200848_p106936387415"></a><a name="zh-cn_topic_0182200848_p106936387415"></a>命令</p>
</th>
<th class="cellrowborder" valign="top" width="22.187781221877813%" id="mcps1.1.5.1.2"><p id="zh-cn_topic_0182200848_p43193341215"><a name="zh-cn_topic_0182200848_p43193341215"></a><a name="zh-cn_topic_0182200848_p43193341215"></a>功能说明</p>
</th>
<th class="cellrowborder" valign="top" width="30.45695430456954%" id="mcps1.1.5.1.3"><p id="zh-cn_topic_0182200848_p2170152961216"><a name="zh-cn_topic_0182200848_p2170152961216"></a><a name="zh-cn_topic_0182200848_p2170152961216"></a>选项说明</p>
</th>
<th class="cellrowborder" valign="top" width="31.326867313268675%" id="mcps1.1.5.1.4"><p id="zh-cn_topic_0182200848_p15693173814112"><a name="zh-cn_topic_0182200848_p15693173814112"></a><a name="zh-cn_topic_0182200848_p15693173814112"></a>参数说明</p>
</th>
</tr>
</thead>
<tbody><tr id="zh-cn_topic_0182200848_row12693163810415"><td class="cellrowborder" valign="top" width="16.028397160283973%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0182200848_p8603174842418"><a name="zh-cn_topic_0182200848_p8603174842418"></a><a name="zh-cn_topic_0182200848_p8603174842418"></a>add-route</p>
</td>
<td class="cellrowborder" valign="top" width="22.187781221877813%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0182200848_p43636507713"><a name="zh-cn_topic_0182200848_p43636507713"></a><a name="zh-cn_topic_0182200848_p43636507713"></a>将网络路由规则添加到容器中。</p>
</td>
<td class="cellrowborder" valign="top" width="30.45695430456954%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0182200848_p11701929151216"><a name="zh-cn_topic_0182200848_p11701929151216"></a><a name="zh-cn_topic_0182200848_p11701929151216"></a>支持的选项如下:</p>
<p id="zh-cn_topic_0182200848_p0431852201310"><a name="zh-cn_topic_0182200848_p0431852201310"></a><a name="zh-cn_topic_0182200848_p0431852201310"></a>--update-config-only:添加此参数,只更新配置文件,不做实际的更新路由表的动作。</p>
</td>
<td class="cellrowborder" valign="top" width="31.326867313268675%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0182200848_p4970743143512"><a name="zh-cn_topic_0182200848_p4970743143512"></a><a name="zh-cn_topic_0182200848_p4970743143512"></a>参数格式:[{rule1},{rule2}]</p>
<p id="zh-cn_topic_0182200848_p615914310354"><a name="zh-cn_topic_0182200848_p615914310354"></a><a name="zh-cn_topic_0182200848_p615914310354"></a>rule样例:</p>
<p id="zh-cn_topic_0182200848_p12159163116357"><a name="zh-cn_topic_0182200848_p12159163116357"></a><a name="zh-cn_topic_0182200848_p12159163116357"></a>'[{"dest":"default", "gw":"192.168.10.1"},{"dest":"192.168.0.0/16","dev":"eth0","src":"192.168.1.2"}]'</p>
<a name="zh-cn_topic_0182200848_ul1058312615818"></a><a name="zh-cn_topic_0182200848_ul1058312615818"></a><ul id="zh-cn_topic_0182200848_ul1058312615818"><li>dest:目标网络,如果为空则是默认网关。</li><li>src:路由源IP。</li><li>gw:路由网关。</li><li>dev:网络设备。</li></ul>
</td>
</tr>
<tr id="zh-cn_topic_0182200848_row12634059013"><td class="cellrowborder" valign="top" width="16.028397160283973%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0182200848_p17486195414355"><a name="zh-cn_topic_0182200848_p17486195414355"></a><a name="zh-cn_topic_0182200848_p17486195414355"></a>remove-route</p>
</td>
<td class="cellrowborder" valign="top" width="22.187781221877813%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0182200848_p9398191102119"><a name="zh-cn_topic_0182200848_p9398191102119"></a><a name="zh-cn_topic_0182200848_p9398191102119"></a>从容器中删除路由。</p>
</td>
<td class="cellrowborder" valign="top" width="30.45695430456954%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0182200848_p1217002917127"><a name="zh-cn_topic_0182200848_p1217002917127"></a><a name="zh-cn_topic_0182200848_p1217002917127"></a>支持的选项如下:</p>
<p id="zh-cn_topic_0182200848_p9642651372"><a name="zh-cn_topic_0182200848_p9642651372"></a><a name="zh-cn_topic_0182200848_p9642651372"></a>--update-config-only:设置此参数,只更新配置文件,不做实际从容器中删除路由的动作。</p>
</td>
<td class="cellrowborder" valign="top" width="31.326867313268675%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0182200848_p185861042134216"><a name="zh-cn_topic_0182200848_p185861042134216"></a><a name="zh-cn_topic_0182200848_p185861042134216"></a>参数格式:[{rule1},{rule2}]</p>
<p id="zh-cn_topic_0182200848_p19384145193619"><a name="zh-cn_topic_0182200848_p19384145193619"></a><a name="zh-cn_topic_0182200848_p19384145193619"></a>rule样例:</p>
<p id="zh-cn_topic_0182200848_p7384252365"><a name="zh-cn_topic_0182200848_p7384252365"></a><a name="zh-cn_topic_0182200848_p7384252365"></a>'[{"dest":"default", "gw":"192.168.10.1"},{"dest":"192.168.0.0/16","dev":"eth0","src":"192.168.1.2"}]'</p>
<a name="zh-cn_topic_0182200848_ul208756521426"></a><a name="zh-cn_topic_0182200848_ul208756521426"></a><ul id="zh-cn_topic_0182200848_ul208756521426"><li>dest:目标网络,如果为空则是默认网关。</li><li>src:路由源IP。</li><li>gw:路由网关。</li><li>dev:网络设备。</li></ul>
</td>
</tr>
<tr id="zh-cn_topic_0182200848_row915811441301"><td class="cellrowborder" valign="top" width="16.028397160283973%" headers="mcps1.1.5.1.1 "><p id="zh-cn_topic_0182200848_p1512713135379"><a name="zh-cn_topic_0182200848_p1512713135379"></a><a name="zh-cn_topic_0182200848_p1512713135379"></a>list-route</p>
</td>
<td class="cellrowborder" valign="top" width="22.187781221877813%" headers="mcps1.1.5.1.2 "><p id="zh-cn_topic_0182200848_p144972610376"><a name="zh-cn_topic_0182200848_p144972610376"></a><a name="zh-cn_topic_0182200848_p144972610376"></a>列出容器中所有的路由规则。</p>
</td>
<td class="cellrowborder" valign="top" width="30.45695430456954%" headers="mcps1.1.5.1.3 "><p id="zh-cn_topic_0182200848_p1517092931217"><a name="zh-cn_topic_0182200848_p1517092931217"></a><a name="zh-cn_topic_0182200848_p1517092931217"></a>支持的选项如下:</p>
<a name="zh-cn_topic_0182200848_ul2807411144318"></a><a name="zh-cn_topic_0182200848_ul2807411144318"></a><ul id="zh-cn_topic_0182200848_ul2807411144318"><li>--pretty:按照json格式输出。</li><li>--filter:按照过滤格式输出,比如--filter '{"ip":"192.168.3.4/24", "Mtu":1500}'。</li></ul>
</td>
<td class="cellrowborder" valign="top" width="31.326867313268675%" headers="mcps1.1.5.1.4 "><p id="zh-cn_topic_0182200848_p174731584319"><a name="zh-cn_topic_0182200848_p174731584319"></a><a name="zh-cn_topic_0182200848_p174731584319"></a></p>
</td>
</tr>
</tbody>
</table>
## 约束限制<a name="zh-cn_topic_0182200848_section161147375512"></a>
- 使用docker-tools向容器添加网卡和路由时,建议先执行add-nic添加网卡,然后执行add-route添加路由;使用docker-tools从容器删除网卡和路由时,建议先执行remove-route删除路由,然后执行remove-nic删除网卡。
- 使用isulad-tools向容器添加网卡和路由时,建议先执行add-nic添加网卡,然后执行add-route添加路由;使用isulad-tools从容器删除网卡和路由时,建议先执行remove-route删除路由,然后执行remove-nic删除网卡。
- 向容器内添加路由规则时,需确保所添加的路由规则与容器内现有的路由规则不会产生冲突。
## 使用示例<a name="zh-cn_topic_0182200848_section1936515521548"></a>
- 启动一个系统容器,指定hook spec为docker hook执行配置脚本:
- 启动一个系统容器,指定hook spec为isulad hook执行配置脚本:
```
[root@localhost ~]# lcrc run -tid --hook-spec /etc/docker-tools/hookspec.json --system-container --external-rootfs /root/root-fs none init
[root@localhost ~]# lcrc run -tid --hook-spec /etc/isulad-tools/hookspec.json --system-container --external-rootfs /root/root-fs none init
0d2d68b45aa0c1b8eaf890c06ab2d008eb8c5d91e78b1f8fe4d37b86fd2c190b
```
- docker-tools向系统容器添加一块物理网卡:
- isulad-tools向系统容器添加一块物理网卡:
```
[root@localhost ~]# docker-tools add-nic --type "eth" --name enp4s0:eth123 --ip 172.17.28.6/24 --mtu 1300 --qlen 2100 0d2d68b45aa0
[root@localhost ~]# isulad-tools add-nic --type "eth" --name enp4s0:eth123 --ip 172.17.28.6/24 --mtu 1300 --qlen 2100 0d2d68b45aa0
Add network interface (enp4s0) to container (0d2d68b45aa0,eth123) done
```
- docker-tools添加一条路由规则到系统容器,注意格式需按照'\[\{"dest":"default", "gw":"192.168.10.1"\},\{"dest":"192.168.0.0/16","dev":"eth0","src":"192.168.1.2"\}\]'来配置。如果dest为空会自动填成default。
- isulad-tools添加一条路由规则到系统容器,注意格式需按照'\[\{"dest":"default", "gw":"192.168.10.1"\},\{"dest":"192.168.0.0/16","dev":"eth0","src":"192.168.1.2"\}\]'来配置。如果dest为空会自动填成default。
```
[root@localhost ~]# docker-tools add-route 0d2d68b45aa0 '[{"dest":"172.17.28.0/32", "gw":"172.17.28.5","dev":"eth123"}]'
[root@localhost ~]# isulad-tools add-route 0d2d68b45aa0 '[{"dest":"172.17.28.0/32", "gw":"172.17.28.5","dev":"eth123"}]'
Add route to container 0d2d68b45aa0, route: {dest:172.17.28.0/32,src:,gw:172.17.28.5,dev:eth123} done
```
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册