CNI 插件支持

了解 CNI 插件支持

DC/OS 可配合任何类型的容器网络接口 (CNI) 网络使用。使用 CNI 可以让容器在与它们运行所在的主机隔离时相互通信。

为 CNI 配置群集

将插件和配置文件添加到群集上的每个代理节点。参阅 CNI 规范,进一步了解 CNI 插件和配置。

  1. 将插件文件添加到 /opt/mesosphere/active/cni/ 目录。

  2. 将配置文件添加到 /opt/mesosphere/etc/dcos/network/cni/ 目录。 典型的配置文件看起来像这样。

    1. {
    2. "name": "dcos",
    3. "type": "bridge",
    4. "bridge": "m-dcos",
    5. "isGateway": true,
    6. "ipMasq": false,
    7. "mtu": 1420,
    8. "ipam": {
    9. "type": "host-local",
    10. "subnet": "9.0.1.0/25",
    11. "routes": [
    12. {
    13. "dst": "0.0.0.0/0"
    14. }
    15. ]
    16. }
    17. }

    type 参数指定插件的名称。此处,插件名称为 bridge. name 参数是网络的名称,您也可以稍后在服务定义中使用。

配置服务以使用 CNI 插件

您的服务必须使用 通用容器运行时 (UCR).

添加 ipAddress.networkName 参数到服务定义。networkName 必须匹配在上一步中配置文件的 name 参数。此例中,它是 dcos.

  1. "ipAddress": {
  2. "networkName": "dcos"
  3. }

已知局限

  • 在带有 dcos-cni 插件和 UCR(通用运行时容器)的 RHEL 7.5 上使用 DC/OS 时,第 4 层负载均衡功能将无法正常工作。