云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

京东云_浪潮服务器_促销

小七 141 0

Nomad0.12中的多接口网络和CNI插件

nomad0.12为Nomad托管服务提供了显著的网络改进。两个最重要的网络改进是多接口网络和CNI插件支持。Nomad集群管理员可以启用这两个特性,然后Nomad作业作者可以利用这两个特性。现有的集群和工作负载将继续像今天一样工作。»容器网络接口插件CNI,Container Networking Interface,是一个标准化容器网络插件的CNCF项目。不仅流行的虚拟网络产品如Calico和Weave提供CNI插件,云也可能通过CNI公开网络功能,比如AWS的ECS插件。CNI插件对于配置Linux的固有网络特性也很有用:Nomad在引入网桥网络来配置网桥网络和端口转发时,就开始在版本0.10中使用CNI插件。nomad0.12扩展了Nomad的CNI支持,允许集群管理员定义节点上可用的CNI插件供作业作者使用。例如,macvlan是一种Linux网络技术,其操作方式类似于虚拟交换机:允许单个物理网络接口具有多个MAC和IP地址。CNI插件是通过Nomad节点上的JSON配置的。macvlan插件可以配置在名为/opt/cni/config的文件中/我的网络冲突列表:{"cniVersion":"0.4.0","name":"我的网络","插件":[{"type":"macvlan","master":"enp1s0f1","ipam":{"type":"dhcp"}},{"type":"portmap","能力":{"portMappings":真},"snat":正确}]}注意,上面配置了macvlan和portmap插件。这使得作业作者不仅可以使用macvlan设备,还可以在作业文件中使用Nomad的端口分配和转发:作业"api""api"组{网络{mode="cni/mynet"端口"http"{至=8080}}任务"http"{。。。}}}Nomad将执行组网络模式(mynet)指定的CNI插件,并适当配置端口。»多接口联网在nomad0.12之前,Nomad只支持每个Nomad代理一个网络接口。虽然用户可以通过主机网络或任务驱动程序特定的功能来克服这一限制,但每种解决方法都有明显的缺点。主机网络带来了许多安全挑战:Nomad无法实施只使用分配给它的ip和端口的服务。基于任务驱动的解决方案,如Docker的网络模式,需要仔细的主机配置,并打破与Nomad的其他网络概念(如Nomad0.10中引入的网桥组网络)的互操作性。在内部,Nomad调度器一直支持在每个节点上跨多个IP地址进行调度。然而,作业作者缺乏选择作业所需地址的能力,因此这种调度功能在很大程度上是不可用的。nomad0.12中的多接口网络解决了所有这些问题,它为集群管理员提供了按节点配置命名网络的能力,并允许作业作者选择其作业所需的网络。所有这些功能都是向后兼容的:现有的工作负载将继续像以前一样工作。多接口网络在诸如将流量从公共互联网路由到内部服务的入口服务的情况下非常有用。这些前端工作负载(例如负载平衡器或身份验证网关)可能有两个逻辑网络接口:1个具有公共IP地址,1个具有专用IP地址。公共接口将在Nomad 0.12客户端代理的配置文件中指定:主机网络"公共"{cidr="203.0.113.0/24"}然后,作业作者可以在其入口作业规范中引用该网络要求:网络{mode="网桥"端口"https"{静态=443host_network="公共"}端口"指标"{至=9100}}入口作业随后将在端口443上接收公共互联网流量,并将指标暴露到端口9100上的内部网络。由于该服务在其自己的网络名称空间内运行,它可以简单地对端口443和9100进行硬编码。主机上和网络名称空间内的所有IP地址和端口都可以作为服务的环境变量使用。»下一步有关如何开始使用我们的新网络功能的更多信息,请参阅此处的文档。要观看这些功能的实时演示,请在此处注册网络研讨会。