我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Kubernetes中的网络类型有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Kubernetes中的网络类型有哪些

小编给大家分享一下Kubernetes中的网络类型有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

Pod内容器之间的通信:localhost

在同一个pod内由pause镜像启动的容器。所有运行于同一个Pod内的容器与同一主机上的多个进程类似,彼此之间可通过lo接口完成交互。

Kubernetes中的网络类型有哪些
Kubernetes 网络类型Kubernetes 网络类型

同一node上的Pod之间的通信:overlay network

同一个Node内的不同Pod之间可以直接采用对方Pod的IP地址通信,而且不需要使用其他发现机制,例如DNS、Consul或者etcd。

Pod1和Pod2都是通信veth:pair连接到同一个docker0网桥上,它们的IP地址IP1、IP2都是从docker0网段上动态获取的,它们和网桥本身的IP3是同一个网段的。由于Pod1和Pod2处于同一局域网内,它们之间可以通过docker0作为路由量进行通信。

Kubernetes中的网络类型有哪些
Kubernetes 网络类型Kubernetes 网络类型

不同node上的Pod之间的通信:iptables规则

在Kubernetes的网络世界中,Pod之间假设是通过访问对方的Pod IP进行通信的,而不同Node之间的通信只能通过Node的物理网卡进行,Pod的IP地址是由各Node上的docker0网桥动态分配的。我们想要实现跨Node的Pod之间的通信,至少需要满足下面三个条件:

知道Pod IP 和Node IP之间的映射关系,通过Node IP转发到Pod IP;

在整个Kubernetes集群中对Pod的IP分配不能出现冲突;

从Pod中发出的数据包不应该进行NAT地址转换。

Kubernetes会记录所有正在运行的Pod的IP分配信息,并将这些信息保存到etcd中(作为Service的Endpoint),这样我们就可以知道PodIP和Node IP之间的映射关系。

以Flannel为例,Flannel实现的容器的跨主机通信通过如下过程实现:

每个主机上安装并运行etcd和flannel;

在etcd中规划配置所有主机的docker0子网范围;

每个主机上的flanneld根据etcd中的配置,为本主机的docker0分配子网,保证所有主机上的docker0网段不重复,并将结果(即本主机上的docker0子网信息和本主机IP的对应关系)存入etcd库中,这样etcd库中就保存了所有主机上的docker子网信息和本主机IP的对应关系;

当需要与其他主机上的容器进行通信时,查找etcd数据库,找到目的容器的子网所对应的outip(目的宿主机的IP);

将原始数据包封装在VXLAN或UDP数据包中,IP层以outip为目的IP进行封装;

由于目的IP是宿主机IP,因此路由是可达的;

VXLAN或UDP数据包到达目的宿主机解封装,解出原始数据包,最终到达目的容器。

Kubernetes中的网络类型有哪些
Kubernetes 网络类型Kubernetes 网络类型

Service与Pod间的通信:iptables规则

集群网络需要在启动kube-apiserver时经由“—service-cluster-ip-range”选项进行指定,如10.96.0.0/12,而每个Service对象在此网络中均拥一个称为Cluster-IP的固定地址。

管理员或用户对Service对象的创建或更改操作由API Server存储完成后触发各节点上的kube-proxy,并根据代理模式的不同将其定义为相应节点上的iptables规则或ipvs规则,借此完成从Service的Cluster-IP与Pod-IP之间的报文转发

Kubernetes中的网络类型有哪些
Kubernetes 网络类型Kubernetes 网络类型

集群外部到Pod对象之间的通信

将集群外部的流量引入到Pod对象的方式有受限于Pod所在的工作节点范围的节点端口(nodePort)和主机网络(hostNetwork)两种,以及工作于集群级别的NodePort或LoadBalancer类型的Service对象。

即便是四层代理的模式也要经由两级转发才能到达目标Pod资源:请求流量首先到达外部负载均衡器,由其调度至某个工作节点之上,而后再由工作节点的netfilter(kube-proxy)组件上的规则(iptables或ipvs)调度至某个目标Pod对象。

看完了这篇文章,相信你对“Kubernetes中的网络类型有哪些”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Kubernetes中的网络类型有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Kubernetes中的网络类型有哪些

小编给大家分享一下Kubernetes中的网络类型有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Pod内容器之间的通信:localhost在同一个pod内由pause镜像启动的容器。所有运行于同一个Pod内的容器与同
2023-06-27

网络攻击的类型有哪些

网络攻击的类型有哪些?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。外网攻击就是公网的一些木马、病毒、垃圾邮件等攻击,直接打到的是防火墙上内网攻击的话是局域网中的一些本身是正
2023-06-14

美国服务器的网络类型有哪些

美国服务器的网络类型有以下几种:1. 以太网(Ethernet):以太网是一种常用的有线网络连接方式,通过使用以太网卡和网线连接服务器和网络交换机来实现网络连接。2. 虚拟专用网络(Virtual Private Network):允许用户
2023-10-11

主流云服务器有哪些类型的网络

主流云服务器的网络有以下几种类型:公共云:公共云是由许多互联网公司、政府机构和公共事业公司共同建立的云存储网络,这些机构通常共享数据和计算资源,例如数据存储、计算、网络和其他服务。这种云存储网络通常是基于云计算基础设施的,它可以支持多种云服务,例如Web应用程序、游戏、社交媒体、视频流媒体等。私有云:私有云是由专门的公司或组织拥有和管理的云计算平台,这些组织拥有自己的数据和计算资源。私有云通常专注于企业数据...
2023-10-27

常用的云服务器有哪些类型的网络

AmazonWebServicesAmazonWebServices是亚马逊公司的云服务平台,提供了广泛的云计算服务,包括基础云计算、扩展云计算、大数据、人工智能、物联网等。AmazonWebServices的网络结构包括多种服务和存储,如AmazonElasticBeanstalk、AmazonS3、AmazonWe
2023-10-27

裸金属服务器网络类型有哪些

服务器网络类型有很多种,包括裸金属网络、星形网络、环形网络、网桥、交换机等不同类型。以下是其中一些可能的选择:裸金属网络:裸金属服务器网络使用裸金属材料作为网络主要材料,通过网络连接到外部网络,如互联网。这种类型的服务器网络通常由单独的服务器组成,没有外部的网络连接。星形网络:星形网络是一种环形网络,连接到多个服务器的网络。星形网络通常由多个服务器组成,每个服务器都有一个专用的网络端口,以
2023-10-26

做亚马逊的网络服务器有哪些类型

亚马逊提供了多种类型的云服务器,以满足不同的业务需求。以下是一些常见的亚马逊网络服务器类型:EC2(弹性云服务器):这是亚马逊最常用的云服务器类型,它提供了多种不同的实例类型,包括通用、计算优化、存储优化、内存优化和GPU实例等。EC2实例可以根据需要进行启动、停止和调整,使其非常适合需要灵活性和可扩展性的应用程序。Lambda:这是一种无服务器计算服务,可以让开发人员在不需要管理服务器的情况下运行代码。...
2023-10-27

BMS裸金属服务器的网络类型有哪些

BMS裸金属服务器的网络类型主要分为以下几种:传统TCP/IP网络模型:这种模型下,裸金属服务器通过网络层(传输层)连接互联网,通过应用层和其他服务器进行通信。这通常适用于较小的服务器,并且需要在一个网络上部署多个服务器。无TCP/IP网络模型:这种模型下,服务器直接连接到本地网络中的某个网络接口。这种模型适用于较大的服务器,并且需要在一个网络上部署多个服务器,以便在多个服务器之间共享资源
2023-10-26

高带宽的云服务器有哪些类型的网络

高带宽的云服务器通常采用了高速网络连接技术,以确保服务器能够处理高流量、高吞吐量的访问。下面列出了常见的高带宽的云服务器类型:VPN和专线连接(VPNCrossLayerService):这类网络连接可以使您的网络连接到互联网上的其他节点,从而提高云服务器的性能。CDN和内容分发网络(ContentDeliveryNetwork):这类网络连接可以通过互联网将云服务器上的内容自动加载到互联网上的其他节点上,从而降低服务器的响应延迟。本地网络...
2023-10-27

网站建设中有哪些网站类型

网站建设中有哪些网站类型?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。第一类:产品(服务)展示型网站。该类网站的目的是将企业的产品或者服务充分展现给新老客户,使
2023-06-10

kubernetes中网络模型的示例分析

这篇文章主要介绍kubernetes中网络模型的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Kubernetes从Docker默认的网络模型中独立出来形成一套自己的网络模型。模型的基础原则是:每个Pod都拥
2023-06-04

云服务器网络搭建方法有哪些类型的

私有云网络:将所有用户的数据和应用程序集中放在一个中心位置,只有经过认证的用户才能访问它们。公共云网络:将用户分配到不同的物理位置,用户可以通过互联网访问其应用程序和数据。公共云网络通常具有高可用性和安全性,并提供可扩展性和负载均衡。混合云网络:将私有云网络与公共云网络相结合,以提供更好的灵活性和可扩展性。混合云网络包括私有云和公共云网络,它们可以共存于同一网络中。专有云网络:将应用程序和数据存储...
2023-10-27

多台云服务器组网方法有哪些类型的网络

多台云服务器通过网络互联组网这种组网方法是将多个云服务器通过网络互相连接,实现资源共享和互相协作的方式。在这种组网方式中,多个云服务器可以通过不同的网络设备接入互联网,并通过网络交换机共享数据和应用程序。这种方法的优点是可以将多个云服务器的计算资源和存储资源集中管理和调度,提高资源利用率,降低成本。缺点是,由于多个云服
2023-10-27

亚马逊的网络服务器有哪些类型的产品

AWSEC2(亚马逊弹性计算服务):AWSEC2是亚马逊的弹性计算服务,它汲取了全行业在处理器、内存、存储和网络等方面最新技术,以处理器来说,包括了英特尔、AMD的数据中心中央处理器(CPU),AWS自己基于Arm开发的处理器;AmazonEC3(亚马逊AWSLake2):AmazonEC3是亚马逊AWSLake2的进一步升级版本,它可以在云端存储和处理大量数据,以满足用户的需求;AmazonS3(亚马逊AWSGlue3):AmazonS3是亚马逊...
2023-10-27

云服务器网络搭建方法有哪些类型

云服务器网络搭建方法可以有多种不同的类型,以下是一些常见的方法:传统网络搭建方法:使用传统的路由协议或IP地址实现局域网之间的互连。这需要在每个节点上添加一条链路并配置IP地址。这种方法的优点是简单易懂,缺点是速度较慢。VLAN划分:使用一种特殊的网络协议或逻辑来划分网络,使得每个节点之间可以通过不同的VLAN进行通信。这可以帮助减少网络流量并提高网络的可用性。NAT地址转换
2023-10-26

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录