容器网络-Underlay和Overlay

一、主机网络

前面讲了容器内部网络,但是容器最终是要部署在主机上,跨主机间的网络访问又是怎么样的,跨主机网络主要有两种方案。

二、 Underlay

使用现有底层网络,为每一个容器配置可路由的网络IP。也就是说容器网络和主机网络没什么区别,主机都能识别容器ip。

2.1 部署

  1. 采用Linux 网桥设备(sbrctl),通过物理网络连通容器;
  2. 创建新的网桥设备 mydr0;
  3. 将主机网卡加入网桥;
  4. 把主机网卡的地址配置到网桥,并把默认路由规则转移到网桥mydr0;
  5. 启动容器;
  6. 创建veth对,并且把一个 peer 添加到网桥 mydr0;
  7. 配置容器把veth的另一个peer分配给容器网卡;

2.1 架构图

在这里插入图片描述

Underlay网络使用现有底层网络,为每一个容器配置可路由的网络IP。但是有一个局限性,我们知道容器会使用很多的ip,如果使用Underlay网络,会占用很多底层网络的ip,所以,使用Underlay网络需要提前合理规划ip分配。

三、Overlay

Overlay网络是通过网络封包技术实现的。

3.1 VXLAN

在这里插入图片描述
在每个主机上都有一个VTEP设备,用于对原始数据包的封包和解包。
在这里插入图片描述

VTEP设备对容器发送的原始数据包进行了以下“包装”:

  1. VXLAN Header
    增加VXLAN头(8字节),其中包含24比特的VNI字段,用来定义VXLAN网络中不同的租户。此外,还包含VXLAN
    Flags(8比特,取值为00001000)和两个保留字段(分别为24比特和8比特)。
  2. UDP Header VXLAN头和原始以太帧一起作为UDP的数据。UDP头中,目的端口号(VXLAN
    Port)固定为4789,源端口号(UDP Src. Port)是原始以太帧通过哈希算法计算后的值。
  3. Outer IP Header 封装外层IP头。其中,源IP地址(Outer Src.
    IP)为源VM所属VTEP的IP地址,目的IP地址(Outer Dst. IP)为目的VM所属VTEP的IP地址。
  4. Outer MAC Header 封装外层以太头。其中,源MAC地址(Src. MAC
    Addr.)为源VM所属VTEP的MAC地址,目的MAC地址(Dst. MAC
    Addr.)为到达目的VTEP的路径中下一跳设备的MAC地址。

3.2 Flannel

Flannel网络插件使用的就是VXLAN技术
在这里插入图片描述
flanneld相当于VTEP设备,用来封包解包。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/187862.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三掌柜第2期赠书活动:《计算机考研精炼1000题》

引言 各位朋友大家好,我是三掌柜。今天,三掌柜赠书第2期启动,本次为大家精选了《计算机考研精炼1000题》这本书。关于这本书的内容,非常丰富,涵盖计算机考研的高频知识内容,不管是正在备考,还是…

Python Opencv实践 - 车牌定位(纯练手,存在失败场景,可以继续优化)

使用传统的计算机视觉方法定位图像中的车牌,参考了部分网上的文章,实际定位效果对于我目前使用的网上的图片来说还可以。实测发现对于车身本身是蓝色、或是车牌本身上方有明显边缘的情况这类图片定位效果较差。纯练手项目,仅供参考。代码中im…

科研检测机构服务预约小程序的效果如何

科研检测机构涵盖的业务比较广,比如水质检测、农产品检测、食品检测等,对相关从业者来说,可能需要频繁使用这些业务,或者个人偶尔需要一些东西检测。 对用户和检测机构来说,由于行业的特殊性,在实际发展中…

keepalived+Nginx+邮件

实验场景: 我使用keepalived保证nginx的高可用,我想知道什么时候ip发生漂移,可以让ip发生漂移的时候 我的邮箱收到消息. 如果对keepalived不了解,这有详细解释:keepalived与nginx与MySQL-CSDN博客https://blog.csdn.ne…

竞赛 行人重识别(person reid) - 机器视觉 深度学习 opencv python

文章目录 0 前言1 技术背景2 技术介绍3 重识别技术实现3.1 数据集3.2 Person REID3.2.1 算法原理3.2.2 算法流程图 4 实现效果5 部分代码6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习行人重识别(person reid)系统 该项目…

【Copilot】登录报错 Extension activation failed: “No auth flow succeeded.“(VSCode)

问题描述 Visual Studio Code 登录 GitHub Copilot 插件报错。 在浏览器中成功授权 GitHub 账户,返回 VSCode 后仍然报错。 [ERROR] [default] [2023-11-06T12:34:56.185Z] Extension activation failed: "No auth flow succeeded."原因分析 网络环境问…

山西电力市场日前价格预测【2023-11-12】

日前价格预测 预测说明: 如上图所示,预测明日(2023-11-12)山西电力市场全天平均日前电价为224.59元/MWh。其中,最高日前电价为434.30元/MWh,预计出现在18:00。最低日前电价为0.00元/MWh,预计出…

SpringBoot 缓存之 @Cacheable 详细介绍

一、简介 1、缓存介绍 Spring 从 3.1 开始就引入了对 Cache 的支持。定义了 org.springframework.cache.Cache 和 org.springframework.cache.CacheManager 接口来统一不同的缓存技术。并支持使用 JCache(JSR-107)注解简化我们的开发。 其…

c语言,将奇数和偶数分类

题目:输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。 思路:像冒泡排序那样,相邻两个数比较,两个都是偶数则不…

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:

错误描述如下所示: 我们将错误拉到最下面如下所示为导致异常的原因: Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type com.example.reviewmybatisplus.Service.UserService available: expec…

Perl语言用多线程爬取商品信息并做可视化处理

首先,我们需要使用Perl的LWP::UserAgent模块来发送HTTP请求。然后,我们可以使用HTML::TreeBuilder模块来解析HTML文档。在这个例子中,我们将使用BeautifulSoup模块来解析HTML文档。 #!/usr/bin/perl use strict; use warnings; use LWP::User…

班级新闻管理系统asp.net+sqlserver

班级新闻管理系统 附加功能 新闻图片,点击次数访问自增,每个人都只能增删改查自己发布的新闻,并可以看到所有人发布的新闻 运行前附加数据库.mdf(或sql生成数据库) 主要技术: 基于asp.net架构和sql serve…

内存条选购注意事项(电脑,笔记本)

电脑内存条的作用、选购技巧以及注意事项详解 - 郝光明的个人空间 - OSCHINA - 中文开源技术交流社区 现在的电脑直接和内存条联系 电脑上的所有输入和输出都只能依靠内存条 现在买双条而不是单条 买两个相同的内存条最好 笔记本先分清是低电压还是标准电压,DD…

前端和空字符串、零比较时请务必使用===

在前端开发中遇到一个问题,以下两条语句的结果都是true。 console.log(0 ""); console.log(false ""); 这就导致了editingId为0的时候,if分支并没有执行,而我的本意是当editingId不是空也不是空字符串的时候执行分支…

可视化 | 3D文字球状标签云

文章目录 📚改编点📚final 改编自echarts 3d词云(指向滑动、拖动、缩放、点击、自转 ) 📚改编点 背景透明:background:rgb(0,0,0,0);不用链接,用span,重点span标class"star&q…

3d max软件中的缓存垃圾该如何清理?

使用3d max建模到渲染操作,来回对效果图调整的次数过多时,就会出现一下看不到的垃圾缓存,影响保存的速度,影响效率! 对于这类的3d垃圾清理的有什么高效方法呢? 3dmax垃圾清理的常规操作如下: 1、…

跨镜头目标融合__追踪之目标重识别研究(跨镜头目标追踪)

文章目录 标题:跨镜头目标融合;目标重识别;跨镜头目标追踪; 1 目的:2 实现方法/策略:2.1 目标类型位置匹配(或考虑结合目标轨迹)2.2 目标重识别2.3 目标类型位置匹配(轨迹)目标重识别…

14 # 手写 debounce 防抖方法

什么是防抖 防抖: n 秒后再去执行该事件,若在 n 秒内被重复触发,则重新计时,这个效果跟英雄联盟里的回城技能差不多。 本质上是优化高频率执行代码的一种手段,目的就是降低回调执行频率、节省计算资源。 应用场景: …

使用 huggingface_hub 镜像下载 大模型

download.py 👇 import os # 配置 hf镜像 os.environ[HF_ENDPOINT] https://hf-mirror.com# 设置保存的路径 local_dir "XXXXXX"# 设置仓库id model_id "sensenova/piccolo-large-zh"cmd f"huggingface-cli download --resume-downlo…

Python 列表元素里面含有字典或者列表进行排序

大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 如果有什么疑惑/资料需要的可以点击文章末尾名片领取源码 示例1:列表里面含有列表进行排序 s [[1, 2], [100, 2], [33, 3], [25, 6]] s.sort(keylambda k: k[0]) print(s)结果: [[1, 2], [25, 6], [33, 3…