Kubernetes 的网络原理 (五)---CNI网络模型
一 CNM网络模型
1.1 网络模型
1.2 CNM模型
二 CNI模型
2.1 CNI模型
2.2 CNI规范概述
2.3 CNI Plugin插件详解
- Version:CNI版本号。
- ContainerID:容器ID。
- Network Namespace path:容器的网络命名空间路径,例如/proc/[pid]/ns/net。
- Network configuration:网络配置JSON文档,用于描述容器待加入的网络。
- Extra arguments:其他参数,提供基于容器的CNI插件简单配置机制。
- Name of the interface inside the container:容器内的网卡名,返回的信息如下:
- Interfaces list:网卡列表,根据Plugin的实现,可能包括Sandbox Interface名称、主机Interface名称、每个Interface的地址等信息。
- IPs assigned to the interface:IPv4或者IPv6地址、网关地址、路由信息等。
- DNS information:DNS相关的信息。
- Version:CNI版本号。
- ContainerID:容器ID。
- Network Namespace path:容器的网络命名空间路径,例如/proc/[pid]/ns/net。
- Network configuration:网络配置JSON文档,用于描述容器待加入的网络。
- Extra arguments:其他参数,提供基于容器的CNI插件简单配置机制。
- Name of the interface inside the container:容器内的网卡名。
- Version:CNI版本号。
- ContainerID:容器ID。
- Network Namespace path:容器的网络命名空间路径,例如/proc/[pid]/ns/net。
- Network configuration:网络配置JSON文档,用于描述容器待加入的网络。
- Extra arguments:其他参数,提供基于容器的CNI插件简单配置机制。
- Name of the interface inside the container:容器内的网卡名
2.4 IPAM Plugin插件详解
1 { 2 "cniVersion": "0.4.0", 3 "ips":[ 4 { 5 6 "version": "<4-or-6>", 7 "address": "<ip-and-prefix-in-CIDR>", 8 "gateway": "<ip-address-of-the-gateway>" (optional) 9 }, 10 .......... 11 ], 12 "routes":[ 13 { 14 "dst": "<ip-and-prefix-in-cidr>", 15 "gw": "<ip-of-next-hop>" 16 }, 17 ........ 18 ] 19 20 "dns":{ 21 "nameservers": <list-of-nameservers> (optional) 22 "domain": <name-of-local-domain> (optional) 23 "search": <list-of-options> (optional) 24 } 25 }
- ips段:分配给容器的IP地址(也可能包括网关)。
- routes段:路由规则记录。
- dns段:DNS相关的信息。
2.5 多网络插件
三 Kubernetes网络插件
3.1 Kubernetes网络插件
- --network-plugin-dir:kubelet启动时扫描网络插件的目录。
- --network-plugin:网络插件名称,对于CNI插件,设置为cni即可,无须关注--network-plugin-dir的路径。对于kubenet插件,设置为kubenet,目前仅实现了一个简单的cbr0 Linux网桥。
- --cni-conf-dir:CNI插件的配置文件目录,默认为/etc/cni/net.d。该目录下配置文件的内容需要符合CNI规范。
- --cni-bin-dir:CNI插件的可执行文件目录,默认为/opt/cni/bin。
Kubernetes 的网络原理 (五)---CNI网络模型相关推荐
- 带你玩转kubernetes-k8s(第46篇:深入分析k8s网络原理[CNM、CNI]网络模型)
随着容器技术在企业生产系统中的逐步落地,用户对容器云的网络特性要求也越来越高.跨主机容器间的网络互通已经成为基本要求,更高的要求包括容器固定IP地址.一个容器多个IP地址.多个子网隔离.ACL控制策略 ...
- Kubernetes容器网络及网络模型
1.Docker 网络模型 在讨论Kubernetes网络之前,让我们先来看一下Docker网络.Docker采用插件化的网络模式,默认提供bridge.host.none.overlay.macla ...
- Kubernetes 网络原理
Docker网络基础 由于Kubernetes是基于Docker容器作为应用发布的载体,而Docker本身的网络特性也决定了Kubernetes在构建一个容器互通网络必须要解决Docker自身网络的缺 ...
- Kubernetes容器网络(二):Calico网络原理
1.前置网络知识 1).BGP 自治系统AS:在单一的技术管理下的一组路由器,而这些路由器使用一种AS内部的路由选择协议和共同的度量以确定分组在该AS内的路由,同时还使用一种AS之间的路由协议以确定在 ...
- Kubernetes(k8s)底层网络原理刨析
目录 1 典型的数据传输流程图 2 3种ip说明 3 Docker0网桥和flannel网络方案 4 Service和DNS 4.1 service 4.2 DNS 5 外部访问集群 5.1 外部访问 ...
- kubernetes pod infra container网络原理
刚开始接触kubernetes时,对kubelet的--pod-infra-container-image参数非常不能理解,不理解为什么我的业务应用需要依赖一个第三方的容器: 上文入门级kuberne ...
- Kubernetes容器网络(一):Flannel网络原理
前言 本文主要分享Flannel如何解决跨主机容器之间通信问题的,如果你对主机内容器之间通信流程还不了解,建议先看下这篇文章:Docker网络原理 1.前置网络知识 1).tun/tap设备 tun/ ...
- Kubernetes网络原理
1. kubernetes网络模型 1.1. 基础原则 每个Pod都拥有一个独立的IP地址,而且假定所有Pod都在一个可以直接连通的.扁平的网络空间中,不管是否运行在同一Node上都可以通过Pod的I ...
- 深入理解Kubernetes容器网络
在Kubernetes中要保证容器之间网络互通,网络至关重要.而Kubernetes本身并没有自己实现容器网络,而是通过插件化的方式自由接入进来.在容器网络接入进来需要满足如下基本原则: Pod无论运 ...
- Kubernetes学习总结(18)—— Kubernetes 容器网络
前言 在 Kubernetes 中要保证容器之间网络互通网络至关重要.Kubernetes 本身并没有实现容器网络而是通过插件化的方式自由接入,容器网络接入需要满足如下基本原则: pod 无论运行在任 ...
最新文章
- Qt5:为窗口 创建工具栏 toobar
- 【中级软考】多态与继承的概念
- python相关性分析的散点图怎么做_Python:matplotlib 和 Seaborn 之散点图和相关性 (三十二)...
- NumPy之:ndarray中的函数
- 如何在WhatsApp中将群聊静音
- 入门机器学习(十四)--编程作业-支持向量机(Python实现)
- ArcGIS的文件结构
- 研究生怎么看 ,怎么写论文
- Redis异常JedisConnectionException:Read timed out解决笔记
- php5.4 mcrypt.so,PHP安装mcrypt.so报错 mcrypt.h not found 的解决方法
- C语言解释器的实现--让脚本跑起来(六)
- Pygame下载教程
- [短线是银]条件选股公式集源码!
- c语言fprintf段错误,fprintf由于突然地址更改导致段错误
- 无需开发!阿里大于推出全新短信群发助手
- CityEngine引用别人做好的规则文件
- file对象转换为Muti文件对象工具类
- 北京的互联网公司有哪些?
- 群环域,理想商环,原根复习
- 2021秋招CVTE面经
热门文章
- Operator ‘==‘ cannot be applied to operands of type ‘byte[]‘ and ‘string‘
- 智能电视机顶盒开发记录
- 最好用的五个黑科技搜索引擎推荐
- wps去除登陆_如何去掉wps中的登录页面
- LFS8.0完全安装搭建制作教程
- 福禄克FLUKE网络光纤测试仪OFP2-100-Q CH系列
- 联通计算机用户名和密码,终极:联通路由器的默认登录密码是什么?
- 个人主页网页设计模板
- Chrome 浏览器访问不了任何网页
- 全面了解#中国加密艺术圈、元宇宙和就业