本质的东西了解容器联网

网络是容器生态系统中的一个重要组件,它提供了运行在相同主机和不同主机上的容器之间的连接。

NoLimit46 / Getty Images

集装箱已经出现在过去的几年中,提供存储和跨不同的计算环境中可靠地交付应用程序的有效方法。通过集装化应用平台和它的依赖,在OS分布和底层基础设施的差异抽象化了。

迈克尔勒图尔勒,一个IT架构师说,网络已经成为容器生态系统中的关键要素,提供相同的主机上运行的容器之间的连通性,以及在不同的主机利宝互助保险。Letourneau说:“将一个应用程序放到一个容器中会自动驱动对该容器的网络连接的需求。”他的主要关注点是构建和操作利宝互助银行的容器平台。

虚拟化演进

容器联网是虚拟化十多年前PC/机器虚拟化开始的存储、计算和网络技术。“在早期,人们认识到物理机器的虚拟化在成本、速度和开发的方便性方面有各种各样的好处,”ibm的技术总监Thomas Nadeau说网络虚拟化功能在开源软件提供商,IBM子公司 红色的帽子

使用虚拟化,硬件资源由虚拟机共享,每个虚拟机都包含一个应用程序和一个完整的操作系统实例。例如,一个运行三个vm的物理服务器将具有一个hypervisor,并在其上运行三个独立的操作系统。另一方面,支持三个容器化应用程序的服务器只需要一个操作系统,每个容器与它的容器共享操作系统内核。

虽然拥有完整操作系统的VM可能会消耗几个gb的存储空间,但是一个容器的大小可能只有几十兆。因此,单个服务器可以承载比vm多得多的容器,这大大提高了数据中心的效率,同时降低了设备、维护、电源和其他成本。

继右容器联网的方法是长期成功的关键。

选择正确的容器联网方法主要取决于应用程序需求、部署类型、编排器的使用和底层操作系统类型。“目前最流行的容器技术是基于Docker和Kubernetes,它们使用驱动程序提供可插入的网络子系统,”网络安全技术提供商Palo Alto Networks的产品管理、容器和无服务器安全副总裁John Morello解释说。“根据您的网络和部署类型,您将选择最适用于您的环境的驱动程序来处理容器到容器或容器到主机的通信。”

“网络解决方案必须能够满足企业的需求,扩展到潜在的大量容器,以及管理短暂的容器”,一起解释说。

限定初始的要求,确定满足这些要求的选项,然后实施解决方案的过程中也能是重要选择正确编排剂提供和负载平衡的容器。“在今天的世界上,要与一Kubernetes基于编制器是一个相当安全的决定,”Letourneau说。“使用什么作为网络层的问题是一个更微妙的问题,它不仅由规模决定,而且由所需的功能决定。”

在转换到容器时,主要的目标是创建一个由微服务组成的分布式体系结构,这些微服务是作为松散耦合服务集合的应用程序,高级集成架构师Chris Meyer说BlueCat网络一个IP地址管理、DNS和DHCP服务提供商。他表示:“通过利用微服务,人们可以拥有一个容错能力更强、易于升级的应用程序,而这个应用程序可以分解成多个核心部分。”

这就是网络起着重要的作用。“传统上,人们将不得不每个集装箱连接在一起,就好像它是一个正常的网络设备,达到了通过网络和支付需要离开的界面和回来的费用,”迈尔说。

这种方法引入了额外的复杂性,比如必须担心防火墙所创建的问题。他表示:“通过利用最新的容器网络技术,可以将容器链接在一起,使它们看起来是在同一界面上运行的。”“这是一个巨大的好处,因为不仅可以让架构的所有部分轻松快速地相互通信,还可以将它们分布在不同数据中心的不同机器上。”2020欧洲杯预赛

一些常见的容器网络选项有桥接、覆盖、主机和Macvlan,如an中所述信息世界文章塞尔达尔Yegulalp:

桥网络允许在同一主机上运行的容器彼此通信,但是分配给每个容器的IP地址不能从主机外部访问。Docker的一个新实例带有一个默认的桥接网络,所有新启动的容器都会自动连接到它。开箱即用的默认设置将需要在生产中进行微调。例如,自定义桥支持默认模式下不自动的功能,包括DNS解析;在自定义桥上添加和删除容器的能力;以及在容器之间共享环境变量的能力。

覆盖网络是用于在不同的主机,诸如那些在一个泊坞群运行的容器。在覆盖网络中,在主机容器能自动发现彼此并从一个主机到下通过隧道网络子网通信;企业不必设置为每个单独的参与容器。生产系统通常需要创建一个自定义的覆盖网络。

在一个主机网络,主机网络驱动程序允许容器的网络堆栈与主机上的堆栈并排运行。主机网络容器中的80端口上的web服务器可以从主机本身的80端口获得。速度是主机联网的最大吸引力,但它是以灵活性为代价的:如果将端口80映射到一个容器,则没有其他容器可以在该主机上使用它。

一个Macvlan网络用于直接与底层物理网络工作的应用程序,如网络流量监视应用程序。macvlan驱动程序不仅将一个IP地址分配给一个容器,而且还将一个物理MAC地址分配给它。Macvlan通常是为那些除非依赖物理网络地址否则无法工作的应用程序保留的。

连通性是不是唯一的考虑。不同模式的容器网络支持不同的网络功能。例如,桥接网络杠杆网络地址转换(NAT),其配备了性能成本。主机网络消除了NAT的需要,但引入了潜在的端口冲突。是联网的方式各不相同其他功能包括IP地址管理(IPAM),IPv6的负载均衡和服务质量。

此外,企业需要处理容器运行时、协调器和插件处理网络的方式上的差异。例如,Docker和Kubernetes对于如何分配和管理网络资源有不同的模型。基于kubernets的容器网络接口(CNI)插件可以与Docker的网络控制一起工作,有助于弥补这一差距。CNI插件的设计目的是将容器运行时链接到数十种不同的容器网络实现。

开始使用容器网络

考虑到一个功能良好的容器生态系统最终可以发展到的规模,通过开发详细的网络策略为这项技术做好准备是很重要的。“没有规划的容器生态系统的蔓延可能会给网络管理员带来麻烦,”Letourneau说。例如,错误配置的容器编制解决方案可能导致上游服务中的拒绝服务事件。

就像当一个企业开始成长,其企业网络的策略成为必要,同为不断增长的集装箱环境也是如此。如果正在使用基于Kubernetes配器解决方案,例如,有无数的CNI实现可供选择,勒图尔勒说。“每种实现都有不同的功能和方面,使人们对于不同的使用情况有吸引力。”

随着企业从内部数据中心过渡到云提供商,它们应该识别和评估它们的网络架构和现代化目2020欧洲杯预赛标,即使目前还没有考虑迁移到容器技术。Letourneau说:“云提供商网络与数据中心网络的集成可能会对云提供商管理的容器解决方案的未来使用造成网络复杂性。”

传统网络关注

采用容器需要重新考虑企业的整个网络体系结构。Meyer说:“不能假设容器网络与传统网络是一样的,因为这样就失去了以一种易于维护的方式将架构连接在一起的好处。”

例如,当需要时(如添加新服务器),必须手动更改遗留网络。如果没有正确地验证更改,则可能会发生停机。

“遗留数据中心网络配置是作为物理设备上的静态配置实现的,因此如果服务器需要移动,那么配置需要更改,”数据恢复服务提供商的高级CTO架构师Greg Cox说SunGard公司AS。更改验证需要许多IT部门在挤满了昂贵的测量和监控设备的实验室进行大量投资。随着集装箱联网,变更和验证成为一个自动化的过程,他说。

采用集装箱战略,并转向基于微服务,成语标志着传统的数据中心运营和实践的显著变化。“网络团队通常熟悉的相对静止不变的基础设施,规划子网和能力测量的标准方法,”勒图尔勒说。“DHCP和DNS要求是基于最终用户的台式机和系统设计时考虑了缓存和静态资源。”

容器化可以有效地通过数据中心的大门将那些受人尊敬的工作负载足迹抛出去。他解释说,在容器生态系统中,经常会发生网络配置和服务位置的更改,而且不存在对网络的直接人工控制。“这超出了‘软件定义’的概念;这是由业务流程调度器算法管理的应用程序定义的网络。”

随着容器技术的采用持续不断地增长,消除了经过时间考验的技术和实践,网络团队将不得不适应和前进。由于容器网络主要是由软件控制的,IT人员需要将他们的手从日益过时的控制中解放出来,对服务器系统和流程有更深入的了解。集装箱网络……当在单一服务器之外进行通信时,网络流量来自特定的容器,”Cox解释说。服务器封装通信流并将其发送到需要它去的任何地方。他表示:“正是这种封装,使得我们可以构建全新的网络架构,而不必触及服务器实际所在的物理网络。”

另外倒放传统网络是集装箱网络使传统的网络管理和监控工具过时的事实。“能见度...将是有限的,因为用于监视网络性能的工具,以前不太可能帮助球队集装箱化的生态系统中的导航问题,”勒图尔勒说。

网络安全问题

网络容器可以增强安全性,而且还可以打开门新的危险。“随着集装箱的动态特性,它采用一种安全工具,它能够自动学习网络的......微服务行为,并提供完整的可视性他们很重要,”莫雷洛说。

2020年法国欧洲杯 2 第1页
第1页共2页
工资调查:结果在