当前位置: 首页 > news >正文

【kubernetes的三种网络】

kubernetes的三种网络

  • 一、三种网络
    • service网络(service是虚拟IP地址)
    • pod网络(pod的IP地址 docker容器的IP)
    • 节点网络(网络服务器上的物理网卡IP)
  • 二、其他网络
    • flannel
      • 一、vxlan(隧道方案)
        • 1.定义
        • 2.优势
        • 3.工作原理
      • 二、host-gw路由网关
      • 三、UDP

一、三种网络

service网络(service是虚拟IP地址)

pod网络(pod的IP地址 docker容器的IP)

节点网络(网络服务器上的物理网卡IP)

在这里插入图片描述

二、其他网络

flannel

一、vxlan(隧道方案)

1.定义

默认配置利用内核级别的vxlan封装host主机之间传送包(好用)
将源数据包封装到UDP中,并使用基础网络的IP/MAC作为外层报文头进行封装,然后在以太网上传输,到达目的地后由隧道端点解封装并将数据发送给目标地址。

2.优势

1.24位长度的VNI字段值可以支持更多数量的虚拟网络,解决了VLAN数目上限为4094的局限性问题
2.VXLAN技术通过隧道技术在物理的三层网络中虚拟二层网络,处于VXLAN网络的终端无法察觉到VXLAN的通信过程,这样也就使得逻辑网络拓扑和物理网络拓扑实现了一定程度的解耦,网络拓扑的配置对于物理设备的配置依赖程度有所降低,配置更灵活方便
3.解决了二层网络广播域分割的问题,二VXLAN技术还具有很多租户支持的特性,通过VXLAN分割各个租户可以独立组网、通信,地址分配方面和多个租户之间地址冲突的问题也得到了解决

3.工作原理

1.数据帧从主机A上Pod的源容器中发出后,经由所在主机的docker0/cni0网络接口转发到flannel.1接口
2.flannel.1收到数据帧后添加VXLAN头部,封装在UDP报文中
3.主机A通过物理网卡发送封装包到主机B的物理网卡中
4.主机B的物理网卡再通过VXLAN默认端口4789转发到flannel.1接口将进行解封装
5.解封装后,内核将数据帧发送到cni0,最后由cni发送到桥接到此接口的容器B中

二、host-gw路由网关

二层网络配置不支持云环境,通过在host路由表中直接创建到其他主机subnet路由条目配置麻烦

三、UDP

通过三层转发用户态实现数据的封装和解封装性能稍微较差
默认网段 10.244.0.0/16
在这里插入图片描述
源目标:10.1.15.2
目的目标:10.1.20.2
pod1和pod3通信:首先到docker0这个网桥上,通过flannel0这个网关,把数据存入到etcd.然后封装,把源地址和目的地址都放进去。然后开始解封装。然后目的地址是10.1.20.2,通过路由表信息返回给flanneld,发给网关flannel0,flannel0再发给docker0,docker0再发给pod3
在这里插入图片描述
通过node1发送给container1,通过cni插件到flannel0里面,flannel0里面有他的网段,flanneld是一个服务,在这里,把内部IP头进行封装到UDP报文当中。eth0与eth0根据路由表通过物理网卡发送到目标节点主机,这个服务找到相应的网络网卡,通过
服务网络段找到cni,找到container

相关文章:

【kubernetes的三种网络】

kubernetes的三种网络 一、三种网络service网络(service是虚拟IP地址)pod网络(pod的IP地址 docker容器的IP)节点网络(网络服务器上的物理网卡IP) 二、其他网络flannel一、vxlan(隧道方案)1.定义2.优势3.工作…...

Java中树形菜单的实现方式(超全详解!)

前言 这篇文中,我一共会用两种方式来实现目录树的数据结构,两种写法逻辑是一样的,只是一种适合新手理解,一种看着简单明了但是对于小白不是很好理解。在这里我会很详细的讲解每一步代码,主要是方便新人看懂&#xff0…...

基于Uniswap V3的去中心化前端现货交易平台Oku正式登陆Moonbeam

波卡上的Uniswap v3合约由Moonbeam智能合约、Oku前端,以及Wormhole远程路由技术共同实现。 跨链互连应用的最佳去中心化开发平台Moonbeam宣布Uniswap现已正式登陆。此次是Uniswap产品作为一个主流的DEX首次涉足Polkadot生态。用户可以通过新的、易于使用的Oku界面与…...

leetcode 每日一题复盘(10.9~10.15)

leetcode 101 对称二叉树 这道题一开始想是用层序遍历,看每一层是否都对称,遇到一个问题就是空指针(子树为空)无法记录下来,同时会导致操作空指针的问题,因此需要修改入队条件,并用一个标志去表示空指针 vector<int>numv;for(int i0;i<size;i){TreeNode*frontque.fro…...

【云计算网络安全】DDoS 缓解解析:DDoS 攻击缓解策略、选择最佳提供商和关键考虑因素

文章目录 一、前言二、什么是 DDoS 缓解三、DDoS 缓解阶段四、如何选择 DDoS 缓解提供商4.1 网络容量4.2 处理能力4.3 可扩展性4.4 灵活性4.5 可靠性4.6 其他考虑因素4.6.1 定价4.6.2 所专注的方向 文末送书《数据要素安全流通》本书编撰背景本书亮点本书主要内容 一、前言 云…...

如何巧用AI智能技术,让文物不再“无人问津”?

文物是文化与传统的象征&#xff0c;而博物馆则是展现文物的载体。传统的博物馆监控体系只是利用摄像头进行监控&#xff0c;无法将人工智能融入其中&#xff0c;使其更加智能化、信息化。那么&#xff0c;如何将AI技术与传统视频监控相融合呢&#xff1f;TSINGSEE青犀智能分析…...

一天一八股——SSL/TLS协议

早期设计的http协议存在诸多的问题&#xff0c;SSL/TLS在http的基础上保证了数据的保密&#xff0c;验证和身份验证 https的保密性通过混合加密的方式保证&#xff0c;解决窃听问题https数据的完整性通过摘要算法保证&#xff0c;通过数字证书CA的方式进行数据来源和数据可靠性…...

SpringCloud学习笔记-Eureka服务的搭建

目录 1.首先引入依赖2.main中配置注解3.src/main/resources/application.yml配置文件 本文的主要工作是介绍如何搭建一个Eureka服务 1.首先引入依赖 pom文件中加入依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring…...

css如何实现页面布局与五种实现方式

CSS布局实现的主要方式有以下几种&#xff1a; 一、盒模型布局&#xff1a;CSS中&#xff0c;每个元素都是一个盒子&#xff0c;包括内容、内边距、边框和外边距。通过设置盒子的属性&#xff08;如宽度、高度、内边距、边框、定位等&#xff09;&#xff0c;可以实现不同的布…...

cv2.split函数与cv2.merge函数

split函数用于图像BGR通道的分离 merge函数用于可将分开的图像通道合并到一起 1.split函数的使用 这是原图&#xff0c;我们使用split函数对其三个通道进行分离。 注意&#xff1a;split函数分离通道的顺序是B、G、R。 以下方法是将三个通道的值都设置为与某一个通道相同。…...

Vue--1.7watch侦听器(监视器)

作用&#xff1a;监视数据变化&#xff0c;执行一些业务逻辑或异步操作。 语法&#xff1a; 1.简单写法->简单类型数据&#xff0c;直接监视 const app new Vue({el: #app,data: {words:},watch:{words(newValue,oldValue){}}}) const app new Vue({el: #app,data: {obj…...

序列:全序关系

一个序列满足全序关系必须满足以下条件&#xff1a; 反对称性&#xff1a;若 a ≤ b a\le b a≤b&#xff0c;则 b ≥ a b\ge a b≥a传递性&#xff1a;若 a ≤ b a\le b a≤b 且 b ≤ c b\le c b≤c&#xff0c;则 a ≤ c a\le c a≤c完全性&#xff1a; a ≤ b a\le b …...

100M服务器能同时容纳多少人访问?

100M的服务器带宽能够同时容纳的用户访问量需要考虑以下几个关键因素: &#x1f449;1.单个用户的平均访问流量大小 这取决于网站内容,是否有多媒体等。一般文本类网站每用户每次访问在50-100KB。 &#x1f449;2.每个用户的平均访问页面 通常每次访问会打开多个页面 &…...

Javascript 笔记:函数调用与函数上下文

在 JavaScript 中&#xff0c;函数上下文通常指的是函数在执行时的当前对象的引用&#xff0c;这通常用 this 关键字表示。this 关键字在不同的执行上下文中可能引用到不同的对象。 1 全局上下文 当 this 关键字用在全局上下文&#xff08;不在任何函数内部&#xff09;&#…...

【WebService】C#搭建的标准WebService接口,在使ESB模版作为参数无法获取参数数据

一、问题说明 1.1 问题描述 使用C# 搭建WebService接口&#xff0c;并按照ESB平台人员的要求&#xff0c;将命名空间改为"http://esb.webservice",使用PostmanESB平台人员提供的入参示例进行测试时&#xff0c;callBussiness接口参数message始终为null。 以下是ES…...

Sqlserver关于tempdb临时数据库文件个数的最佳实践

官方文档 https://learn.microsoft.com/zh-cn/sql/relational-databases/databases/tempdb-database?viewsql-server-ver16 https://learn.microsoft.com/en-US/troubleshoot/sql/database-engine/performance/recommendations-reduce-allocation-contention 一般而言&#x…...

【Java】微服务——微服务介绍和Eureka注册中心

目录 1.微服务介绍2.服务拆分和远程调用2.1.提供者与消费者 3.Eureka注册中心3.1.Eureka的结构和作用3.2.Eureka的结构3.3.搭建Eureka服务3.3.1.引入eureka依赖3.3.2.编写配置文件 3.4.服务注册及拉1&#xff09;引入依赖2&#xff09;配置文件3&#xff09;启动多个user-servi…...

C++ virtual 虚函数 虚基类

https://blog.csdn.net/xbb123456rt/article/details/81986691 基类指针可以指向一个派生类对象&#xff0c;但派生类指针不能指向基类对象。 可以在基类中将被重写的成员函数设置为虚函数&#xff0c;其含义是&#xff1a;当通过基类的指针或者引用调用该成员函数时&#xf…...

redis分布式秒杀锁

-- 获取锁标识&#xff0c;是否与当前线程一致&#xff1f; if(redis.call(get, KEYS[1]) ARGV[1]) then-- 一致&#xff0c;删除return redis.call(del, KEYS[1]) end -- 不一致&#xff0c;直接返回 return 0package com.platform.lock;public interface ILock {/*** 获取锁…...

【Redis】String内部编码方式

String内部编码方式 int: 8个字节的长整型embstr: 小于等于39个字节的字符串raw: 大于39个字节的字符串...

CODE-II:百万级心电图AI评估基准与深度学习模型实践

1. 项目概述&#xff1a;当心电图遇上AI&#xff0c;我们如何量化“看懂”的能力&#xff1f;心电图&#xff0c;这个在临床诊断中司空见惯的波形图&#xff0c;背后是心脏每一次搏动的电生理活动记录。医生们通过识别P波、QRS波群、T波的形态、间期和节律&#xff0c;来判断心…...

基于Ollama构建本地大模型智能体:从原理到工程实践

1. 项目概述&#xff1a;当本地大模型遇上智能体框架最近在折腾本地大模型应用开发的朋友&#xff0c;估计都绕不开一个核心问题&#xff1a;如何让一个“聪明”的模型&#xff0c;不仅能回答问题&#xff0c;还能像真正的助手一样&#xff0c;自主调用工具、处理复杂任务&…...

虚拟工业仿真软件能模拟实操吗?看完你就懂了

在高端制造与复杂工程场景中&#xff0c;工业仿真软件是否只是“纸上谈兵”&#xff1f;它能否真正模拟出真实的物理过程、操作流程与系统行为&#xff1f;答案是&#xff1a;可以&#xff0c;而且正在改变工业研发的逻辑。秩益科技自主研发的DIMAXER工业仿真软件&#xff0c;正…...

ANSI转义序列封装:cursor-reset库实现终端光标精准控制

1. 项目概述与核心价值 最近在折腾一些自动化工具链&#xff0c;发现一个挺有意思的小项目&#xff0c;叫 zhitrend/cursor-reset 。乍一看名字&#xff0c;你可能会觉得这只是一个重置光标位置的小工具&#xff0c;但实际用下来&#xff0c;我发现它解决的痛点非常精准&…...

Arduino Uno R3 bootloader烧写避坑全记录:从USBasp驱动安装到熔丝位设置(Win10/11实测)

Arduino Uno R3 bootloader烧写实战指南&#xff1a;从驱动配置到熔丝位安全操作 当一块全新的Atmega328P芯片静静躺在工作台上时&#xff0c;它就像一张白纸&#xff0c;等待着被赋予生命。作为硬件开发者&#xff0c;我们常常需要为这些空白芯片注入灵魂——烧写bootloader。…...

AI原生图计算不是“加个GNN层”那么简单:SITS 2026定义的5层工程化成熟度模型(附自测清单+迁移路线图)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI原生图计算应用&#xff1a;SITS 2026图神经网络工程化方案 SITS 2026 是面向大规模动态图场景的AI原生图计算框架&#xff0c;深度融合GNN训练、图拓扑实时更新与边缘-云协同推理能力。其核心设计摒…...

苹果W1芯片如何通过低功耗无线技术重塑TWS耳机体验

1. 无线音频的功耗困局与苹果的破局思路 2016年9月&#xff0c;当苹果在发布会上首次亮出那对剪掉线缆的AirPods时&#xff0c;整个消费电子行业都在问同一个问题&#xff1a;它是怎么做到的&#xff1f;更具体地说&#xff0c;它如何解决了无线耳机领域最核心、也最令人头疼的…...

AI建站工具从0到1全流程保姆级攻略:零代码生成网站就这么简单

AI建站工具从0到1全流程保姆级攻略&#xff1a;零代码生成网站就这么简单被外包公司几万块的报价劝退&#xff1f;被老板催着下周上线活动页却连域名是什么都不清楚&#xff1f;别慌&#xff0c;用AI建站工具&#xff0c;不写一行代码、不学复杂技术&#xff0c;普通人也能在两…...

别再只调参了!搞懂MaxPool2D的padding=‘same‘和‘valid‘,让你的CNN模型效果立竿见影

别再只调参了&#xff01;搞懂MaxPool2D的paddingsame和valid&#xff0c;让你的CNN模型效果立竿见影 在构建卷积神经网络&#xff08;CNN&#xff09;时&#xff0c;许多开发者习惯性地将注意力集中在卷积核大小、激活函数选择等显性参数上&#xff0c;却常常忽略池化层中padd…...

告别编译警告!MDK AC6编译器下STM32Cube FreeRTOS工程的__packed等语法适配指南

ARM Compiler v6下STM32Cube FreeRTOS工程的零警告优化实战 当你从ARM Compiler v5切换到v6时&#xff0c;可能会发现原本运行良好的STM32CubeMX生成的FreeRTOS工程突然冒出几十个编译警告。这些黄色的小三角虽然不会阻止程序编译&#xff0c;但对于追求代码质量的开发者来说&a…...