Kubernetes必备知识: 主流网络方案

简介: 常见的容器网络方案可以从协议栈层级、穿越形态、隔离方式这三种形式进行划分。协议栈层级:第一种:协议栈二层。第二种:协议栈三层(纯路由转发)。 第三种:协议栈二层加三层。

所属技术领域:

K8s

|名词定义|

常见的容器网络方案可以从协议栈层级、穿越形态、隔离方式这三种形式进行划分。
协议栈层级:
第一种:协议栈二层。
第二种:协议栈三层(纯路由转发)。
第三种:协议栈二层加三层。
穿越形态:
按穿越的形态划分,这个与实际部署环境十分相关。穿越形态分为两种:Underlay、Overlay。
Underlay:在一个较好的一个可控的网络场景下,我们一般利用 Underlay。可以这样通俗的理解,无论下面是裸机还是虚拟机,只要网络可控,整个容器的网络便可直接穿过去 ,这就是 Underlay。
Overlay:Overlay 在云化场景比较常见。Overlay 下面是受控的 VPC 网络,当出现不属于 VPC 管辖范围中的 IP 或者 MAC,VPC 将不允许此 IP/MAC 穿越。出现这种情况时,我们都利用 Overlay 方式来做。
隔离方式:
隔离方式与多种户型相关(用户与用户之间的隔离方式),隔离方式分为 FLAT、VLAN、VXLAN 三种:
 FLAT:纯扁平网络,无隔离;
 VLAN:VLAN 机房中使用偏多,但实际上存在一个问题?就是它总的租户数量受限。众所周知,VLAN 具有数量限制。
 VXLAN:VXLAN 是现下较为主流的一种隔离方式。因为它的规模性较好较大,且它基于 IP 穿越方式较好。

|技术特点|

 典型的容器网络实现方案
容器网络可能时Kubernetes领域最为百花齐放的一个领域,依照IaaS层的配置、外部物理网络的设备、性能or灵活优先,可以有不同的实现:
Flannel,最为普遍的实现,提供多种网络backend实现,覆盖多种场景
Calico,采用BGP提供网络直连,功能丰富,对底层网络有要求
Canal(Flannel for network + Calico for Firewalling),嫁接型创新项目
Ciilium,基于eBPF和XDP的高性能Overlay网络方案
Kube-router,同时采用BGP提供网络直连,集成基于LVS的负载均衡能力
Pomana,才赢BGP or OSPF 提供网络直连能力的方案
WeaveNet,采用UDP封装实现L2 Overlay,支持用户态(慢,可加密)/内内核态(快,不能加密)两种实现
 Flannel 方案
图片.png

Flannel 方案是目前使用最为普遍的。如上图所示,可以看到一个典型的容器网方案。它首先要解决的是 container 的包如何到达 Host,这里采用的是加一个 Bridge 的方式。它的 backend 其实是独立的,也就是说这个包如何离开 Host,是采用哪种封装方式,还是不需要封装,都是可选择的。
现在来介绍三种主要的 backend:
 一种是用户态的 udp,这种是最早期的实现;
 然后是内核的 Vxlan,这两种都算是 overlay 的方案。Vxlan 的性能会比较好一点,但是它对内核的版本是有要求的,需要内核支持 Vxlan 的特性功能;
 如果你的集群规模不够大,又处于同一个二层域,也可以选择采用 host-gw 的方式。这种方式的 backend 基本上是由一段广播路由规则来启动的,性能比较高。

|资料来源|

名词定义:https://blog.csdn.net/bbwangj/article/details/82355337

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
1月前
|
安全 虚拟化
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力。通过具体案例,展示了方案的制定和实施过程,强调了目标明确、技术先进、计划周密、风险可控和预算合理的重要性。
42 5
|
11天前
|
人工智能 弹性计算 运维
ACK Edge与IDC:高效容器网络通信新突破
本文介绍如何基于ACK Edge以及高效的容器网络插件管理IDC进行容器化。
|
2月前
|
安全 网络架构
MPLS线路构建稳定、高效网络的优选方案
【10月更文挑战第17天】MPLS线路构建稳定、高效网络的优选方案
70 5
|
13天前
|
人工智能 Kubernetes 安全
赋能加速AI应用交付,F5 BIG-IP Next for Kubernetes方案解读
赋能加速AI应用交付,F5 BIG-IP Next for Kubernetes方案解读
53 13
|
2月前
|
运维 监控 安全
连锁药店网络优化策略:一站式融合方案提升竞争力
在数字化浪潮下,线上药店通过技术创新和线上线下融合,正重塑购药体验,提供24小时服务和医保结算便利。面对激烈竞争,连锁药店和中小药店纷纷通过优化网络架构、提升服务质量和加强合规管理来增强竞争力,实现高效、安全的数字化转型。
|
2月前
|
Kubernetes 网络协议 网络安全
k8s中网络连接问题
【10月更文挑战第3天】
201 7
|
2月前
|
Kubernetes 应用服务中间件 nginx
搭建Kubernetes v1.31.1服务器集群,采用Calico网络技术
在阿里云服务器上部署k8s集群,一、3台k8s服务器,1个Master节点,2个工作节点,采用Calico网络技术。二、部署nginx服务到k8s集群,并验证nginx服务运行状态。
937 1
|
3月前
|
Kubernetes API Docker
跟着iLogtail学习容器运行时与K8s下日志采集方案
iLogtail 作为开源可观测数据采集器,对 Kubernetes 环境下日志采集有着非常好的支持,本文跟随 iLogtail 的脚步,了解容器运行时与 K8s 下日志数据采集原理。
|
2月前
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
160 0
|
2月前
|
Kubernetes 监控 测试技术
k8s学习--OpenKruise详细解释以及原地升级及全链路灰度发布方案
k8s学习--OpenKruise详细解释以及原地升级及全链路灰度发布方案