集装箱已经出现在过去的几年中,提供存储和跨不同的计算环境中可靠地交付应用程序的有效方法。通过集装化应用平台和它的依赖,在OS分布和底层基础设施的差异抽象化了。
迈克尔勒图尔勒,一个IT架构师说,网络已经成为容器生态系统中的关键要素,提供相同的主机上运行的容器之间的连通性,以及在不同的主机利宝互助保险。“把一个应用到一个容器自动驱动的网络连接该容器的需要,”勒图尔勒,其主要重点是建设和运营利宝互助的集装箱平台说。
虚拟化演进
容器联网是虚拟化存储,计算和网络技术的,始于十年前与PC /机虚拟化。“在早期,人们认识到物理机的虚拟化有各种各样的周围成本,速度和易于开发的好处,”托马斯·纳多,技术总监网络虚拟化功能在开源软件提供商,IBM子公司 红帽。
通过虚拟化,硬件资源由虚拟机,其中的每一个包括一个应用程序和一个完整的操作系统实例共享。运行三个VM的物理服务器,将,例如,功能伴随着跑在最前面三个独立的操作系统,管理程序。在另一方面,支持三台集装箱应用程序的服务器只需要一个单一的操作系统,每个容器及其配套容器共享的操作系统内核。
虽然拥有完整操作系统的VM可能会消耗几个gb的存储空间,但是一个容器的大小可能只有几十兆。因此,单个服务器可以承载比vm多得多的容器,这大大提高了数据中心的效率,同时降低了设备、维护、电源和其他成本。
继右容器联网的方法是长期成功的关键。
选择正确的容器联网方法主要取决于应用程序需求、部署类型、编排器的使用和底层操作系统类型。“目前最流行的容器技术是基于Docker和Kubernetes,它们使用驱动程序提供可插入的网络子系统,”网络安全技术提供商Palo Alto Networks的产品管理、容器和无服务器安全副总裁John Morello解释说。“根据您的网络和部署类型,您将选择最适用于您的环境的驱动程序来处理容器到容器或容器到主机的通信。”
“网络解决方案必须能够满足企业的需求,扩展到潜在的大量容器,以及管理短暂的容器”,一起解释说。
限定初始的要求,确定满足这些要求的选项,然后实施解决方案的过程中也能是重要选择正确编排剂提供和负载平衡的容器。“在今天的世界上,要与一Kubernetes基于编制器是一个相当安全的决定,”Letourneau说。“使用什么作为网络层的问题是一个更微妙的问题,它不仅由规模决定,而且由所需的功能决定。”
当过渡到集装箱,主要目标是创建一个分布式体系结构由微服务,这是结构为松散耦合的服务集合应用的克里斯·迈尔,资深集成架构师说,BlueCat网络一个IP地址管理、DNS和DHCP服务提供商。他表示:“通过利用微服务,人们可以拥有一个容错能力更强、易于升级的应用程序,而这个应用程序可以分解成多个核心部分。”
这就是网络起着重要的作用。“传统上,人们将不得不每个集装箱连接在一起,就好像它是一个正常的网络设备,达到了通过网络和支付需要离开的界面和回来的费用,”迈尔说。
这样的方法引入了额外的复杂性,例如不必担心由防火墙创建的问题。“通过利用容器联网技术最新的,可以一起以这样一种方式,它似乎是在同一界面上运行链接的容器,”他说。“这是一个巨大的好处,因为不仅可以将所有的架构谈话的片相互方便迅速,所以可以在不同的机器在不同的数据中心分布。”雷竞技电脑网站
一些常见的容器联网选项可供选择的桥,覆盖,主机和Macvlan,如在描述InfoWorld的文章塞尔达尔Yegulalp:
桥网络使同一台主机上运行的相互沟通容器,但分配给每个容器中的IP地址不是从主机外部访问。泊坞窗的新实例带有默认桥接网络,所有新开工的集装箱自动连接到它。出的现成的默认值,需要在生产微调。例如,自定义桥启用不在默认模式,包括DNS解析自动功能;从当他们运行一个定制的桥接添加和删除容器的能力;并有能力容器之间共享的环境变量。
覆盖网络是用于在不同的主机,诸如那些在一个泊坞群运行的容器。在覆盖网络中,在主机容器能自动发现彼此并从一个主机到下通过隧道网络子网通信;企业不必设置为每个单独的参与容器。生产系统通常需要创建一个自定义的覆盖网络。
在一个主机网络,主机网络驱动程序允许容器的网络堆栈与主机上的堆栈并排运行。主机网络容器中的80端口上的web服务器可以从主机本身的80端口获得。速度是主机联网的最大吸引力,但它是以灵活性为代价的:如果将端口80映射到一个容器,则没有其他容器可以在该主机上使用它。
一个Macvlan网络用于直接与底层物理网络工作的应用程序,如网络流量监视应用程序。macvlan驱动程序不仅将一个IP地址分配给一个容器,而且还将一个物理MAC地址分配给它。Macvlan通常是为那些除非依赖物理网络地址否则无法工作的应用程序保留的。
连通性是不是唯一的考虑。不同模式的容器网络支持不同的网络功能。例如,桥接网络杠杆网络地址转换(NAT),其配备了性能成本。主机网络消除了NAT的需要,但引入了潜在的端口冲突。是联网的方式各不相同其他功能包括IP地址管理(IPAM),IPv6的负载均衡和服务质量。
此外,企业需要处理容器运行时、协调器和插件处理网络的方式上的差异。例如,Docker和Kubernetes对于如何分配和管理网络资源有不同的模型。基于kubernets的容器网络接口(CNI)插件可以与Docker的网络控制一起工作,有助于弥补这一差距。CNI插件的设计目的是将容器运行时链接到数十种不同的容器网络实现。
开始使用容器联网
考虑到一个功能良好的容器生态系统最终可以发展到的规模,通过开发详细的网络策略为这项技术做好准备是很重要的。“没有规划的容器生态系统的蔓延可能会给网络管理员带来麻烦,”Letourneau说。例如,错误配置的容器编制解决方案可能导致上游服务中的拒绝服务事件。
就像当一个企业开始成长,其企业网络的策略成为必要,同为不断增长的集装箱环境也是如此。如果正在使用基于Kubernetes配器解决方案,例如,有无数的CNI实现可供选择,勒图尔勒说。“每种实现都有不同的功能和方面,使人们对于不同的使用情况有吸引力。”
随着企业从内部数据中心过渡到云提供商,它们应该识别和评估它们的网络架构和现代化目雷竞技电脑网站标,即使目前还没有考虑迁移到容器技术。Letourneau说:“云提供商网络与数据中心网络的集成可能会对云提供商管理的容器解决方案的未来使用造成网络复杂性。”
传统网络关注
集装箱通过需要地面行动重新思考企业的整个网络架构。“一个人不能进入容器联网假设,这将是一样的传统网络,因为你失去的是能够将您的架构在一个易于维护的方式连接在一起的好处,”迈尔说。
传统网络,例如,必须手动更改每当需要时,如添加新的服务器。如果变更未正确验证,可能会出现中断。
“传统数据中心网络配置中实现为在物理设备上静态配置,因此,如果一台服务器需要移动,配置需要改变,”格雷格·考克斯,在数据恢复服务提供商的高级CTO建筑师说SunGard公司AS。更改验证需要许多IT部门在挤满了昂贵的测量和监控设备的实验室进行大量投资。随着集装箱联网,变更和验证成为一个自动化的过程,他说。
采用集装箱战略,并转向基于微服务,成语标志着传统的数据中心运营和实践的显著变化。“网络团队通常熟悉的相对静止不变的基础设施,规划子网和能力测量的标准方法,”勒图尔勒说。“DHCP和DNS要求是基于最终用户的台式机和系统设计时考虑了缓存和静态资源。”
集装箱有效地通过数据中心的门扔那古老的工作量足迹了。在容器中,生态系统,更改网络配置和服务地点经常发生,且有网络没有直接的人为控制,他解释说。“这超出了‘软件定义’的观念,这是应用程序所定义的业务流程调度的算法联网管理。”
随着容器技术的采用持续不断地增长,消除了经过时间考验的技术和实践,网络团队将不得不适应和前进。由于容器网络主要是由软件控制的,IT人员需要将他们的手从日益过时的控制中解放出来,对服务器系统和流程有更深入的了解。集装箱网络……当在单一服务器之外进行通信时,网络流量来自特定的容器,”Cox解释说。服务器封装通信流并将其发送到需要它去的任何地方。他表示:“正是这种封装,使得我们可以构建全新的网络架构,而不必触及服务器实际所在的物理网络。”
另外倒放传统网络是集装箱网络使传统的网络管理和监控工具过时的事实。“能见度...将是有限的,因为用于监视网络性能的工具,以前不太可能帮助球队集装箱化的生态系统中的导航问题,”勒图尔勒说。
网络安全问题
网络容器可以增强安全性,而且还可以打开门新的危险。“随着集装箱的动态特性,它采用一种安全工具,它能够自动学习网络的......微服务行为,并提供完整的可视性他们很重要,”莫雷洛说。