前言
网络的职责是将散落在不同范围的终端实体相互联通,并提供复杂的策略管理能力。根据终端实体散布的范围不同,可以由不同的网络设备和功能进行辅助,而路由和封装是最为常见的网络连接手段。路由方式适合大规模动态扩展并且发送效率较高,但是管理复杂度也更高,单个网络接入点需要感知周围网络的状态;封装方式配置相对简单,但是需要有耗费计算资源的封装步骤,并且不太利于创建动态可扩展的大规模网络。Container网络互联方案也不外乎点对点、路由和封装等方式,这些方式对应的解决方案在可管理性、性能和可扩展性方便各有长短。对于一个container实例,它的网络接入解决方案可以是如下几种之一:
- none模式
- host模式
- bridge方式
- overlay方式
- underlay方式
转载自https://blog.youkuaiyun.com/cloudvtech
none模式
在这种模式下,container实例在建立的时候不具有任何网络虚拟设备和网络功能,可以通过命令行或者类似pipework之类工具对container的network namespace进行网络配置。这种方式下,可以根据需求对container的网络进行定制,但是难以维护。
像kubernetes这样的container管理框架就是以这种方式先建立none模式的container,然后再利用CNI动态配置container的网络。
转载自https://blog.youkuaiyun.com/cloudvtech