k8s中port,targetPort,nodePort,containerPort的区别

一、说明
在 Kubernetes 中,port、targetPort、nodePort 和 containerPort 是用于定义服务(Service)和容器之间网络通信的不同参数。
它们各自的作用和含义如下:
1. port

  • 定义:这是服务对外暴露的端口号。
  • 作用:客户端通过这个端口号来访问 Kubernetes 服务。
  • 层面:服务层面的端口号。
  • 示例:
spec:ports:- port: 80

在上面的配置中,客户端可以通过集群中的服务 IP 和端口 80 访问服务。
2. targetPort

  • 定义:这是流量从 port 转发到后端 Pod 的端口号。
  • 作用:指定了服务将流量转发到后端容器的哪个端口。
  • 层面:容器层面的端口号。
  • 示例:
spec:ports:- port: 80targetPort: 8080

注:在上面的配置中,流量会从 port 80 转发到后端 Pod 的 targetPort 8080 上。
3. nodePort

  • 定义:这是将流量从集群外部路由到服务的端口号。
  • 作用:当服务类型是 NodePort 时,nodePort 定义了每个节点上暴露的端口,通过这个端口外部可以访问到服务。
  • 层面:集群外部访问服务的端口号。
  • 示例:
spec:type: NodePortports:- port: 80targetPort: 8080nodePort: 30007

在上面的配置中,客户端可以通过任何一个集群节点的端口 30007 访问服务,流量会转发到服务的 port 80,然后转发到后端 Pod 的 targetPort 8080。

总结表格
在这里插入图片描述
示例 YAML 配置

apiVersion: v1
kind: Service
metadata:name: my-service
spec:type: NodePortselector:app: my-appports:- port: 80           # 对外暴露的端口targetPort: 8080   # 转发到后端 Pod 的端口nodePort: 30007    # 集群外部访问的端口

注:在这个示例中,客户端可以通过 nodePort 30007 访问服务,服务会将流量转发到 port 80,并最终将流量发送到后端 Pod 的 targetPort 8080 上。

4. containerPort
定义:containerPort 是容器中应用程序运行的端口。
作用:将容器中应用程序的端口暴露给容器内外的通信。
层面:容器内的端口号。

二、总结
port 是服务对内部暴露的端口,nodePort 是服务对外部暴露的端口。
targetPort 是服务将流量转发到后端 Pod 的端口,containerPort 是容器中应用程序运行的端口。

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

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

相关文章

linux指令练习

二、touch、vi练习: 1、在root家目录下创建目录A1和B1 2、进入B1下同时创建三个文件m1, m2 , n1,单独创建目录N1 3、进入到A1目录中分别创建一个文件t1,k2,同时创建目录F1,F2 4、删除B1下的所有1结尾的文件或者目录 5、删除A1目录…

Python基础知识——(001)

文章目录 P4——3. 程序设计语言的分类 1. 程序设计语言 2. 编译与解释 P5——4. Python语言的简介与开发工具 1. Python语言的简介 2. Python语言的发展 3. Python语言的特点 4. Python的应用领域 5. Python的开发工具 P6——5. IPO编程方式 IPO程序编写方法 P7——6. print函…

【从0到1 在AMD显卡的win上安装stable-diffusion】

摘要: 终于换了台电脑了,这太电脑32G运行内存,4G核显(想买有独显的,不过好贵哦),AMD R7 8核处理器。看着这么高的配置,心有点痒痒的,不能浪费了这个配置呀,哈哈,于是就有了安装Stable-Diffusion的想法。 安装步骤: 1、环境搭建: 安装Python 3.10.6(较新版本的…

案例精选 | 聚铭综合日志分析系统为江苏省电子口岸构建高效安全的贸易生态

江苏省电子口岸有限公司,成立于2009年,由江苏省贸促会携手南京海关、江苏检验检疫局及江苏海事局等部门共同出资组建。公司承载着推动江苏乃至长三角地区国际贸易便利化的重大使命,致力于打造一个集先进性、创新性、高效性于一体的电子口岸综…

STM32初识HAL库(下载和使用)

初识HAL库(了解) ST 为了方便用户开发 STM32芯片开发提供了三种库: 标准外设库 (Standard Peripheral Libraries)HAL库(硬件抽象层):Hardware Abstraction LayerLL库:Low Layer 一、获取STM32Cube固件包 方式一&…

jQuery 笔记

一、什么是jQuery 框架:半成品软件 Jquery就是封装好的js 本质上还是js jQuery是一个快速、简洁的JavaScript**框架**,是继Prototype之后又一个优秀的**JavaScript代码库**(*或JavaScript框架*)。 JQuery:封装好的代码库。有一…

探索MySQL中DAYOFWEEK与WEEKDAY的差异与应用

在MySQL数据库中,处理日期和时间是常见的任务之一。为了准确地获取日期的星期几或工作日索引,MySQL提供了两个核心函数:DAYOFWEEK和WEEKDAY。尽管它们看似类似,但它们的功能和用法存在显著差异,适用于不同的场景和需求…

c#中将数据库中的文件导出为csv、xml文件的demo

1. 导出为CSV文件 /// <summary>/// 将mysql数据保存为csv文件/// </summary>/// <param name"connectionString">数据库连接字符串</param>/// <param name"query">sql语句</param>/// <param name"filePath…

【Proteus】按键的实现『⒉种』

&#x1f6a9; WRITE IN FRONT &#x1f6a9; &#x1f50e; 介绍&#xff1a;"謓泽"正在路上朝着"攻城狮"方向"前进四" &#x1f50e;&#x1f3c5; 荣誉&#xff1a;2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4、2021|2222年获评…

Qt 进程间通信(一)——QSharedMemory共享内存

QSharedMemory共享内存 序言环境理论—逻辑理解实战—代码读取示例写入示例 序言 讲讲Qt的共享内存吧&#xff0c;巩固下 环境 msvc2022 Qt5.15 参考文档&#xff1a;https://doc.qt.io/qt-5/qsharedmemory.html 理论—逻辑理解 看下面前&#xff0c;你需要将共享内存看成…

在 Linux/Debian/Ubuntu 上使用 Brasero 刻录光盘

在 Ubuntu 系统中&#xff0c;Brasero 是一个非常方便的光盘刻录工具。无论是创建数据光盘、音频光盘还是刻录光盘镜像文件&#xff0c;Brasero 都能轻松胜任。本文将介绍如何在 Ubuntu 上安装和使用 Brasero 进行光盘刻录。 安装 Brasero 在大多数 Ubuntu 版本中&#xff0c…

JS数据类型检测的方式有哪些 (常用)

typeof 其中数组、对象、null都会被判断为object&#xff0c;其他判断都正确typeof返回的类型都是字符串形式 instanceof instanceof &#xff1a;用于检测一个实例是否属于某个类&#xff0c;通过验证当前类的原型 prototype 是否出现在实例的原型链 __proto__ 上。它不能检测…

如何在Excel中对一个或多个条件求和?

在Excel中&#xff0c;基于一个或多个条件的求和值是我们大多数人的常见任务&#xff0c;SUMIF函数可以帮助我们根据一个条件快速求和&#xff0c;而SUMIFS函数可以帮助我们对多个条件求和。 本文&#xff0c;我将描述如何在Excel中对一个或多个条件求和&#xff1f; 在Excel中…

论文阅读:Large Language Models for Education: A Survey

论文由Hanyi Xu、Wensheng Gan、Zhenlian Qi、Jiayang Wu和Philip S. Yu撰写的 Large Language Models for Education: A Survey&#xff0c;是关于大型语言模型&#xff08;LLMs&#xff09;在教育领域应用的综合调查研究。 1. 引言 论文讨论了人工智能&#xff08;AI&#…

Python开发—— 异常处理:详细指南

以下是对Python中try语句及其相关用法的更详细解释&#xff0c;包括更多的示例和应用场景&#xff1a; 1. 异常处理的基本概念 异常是程序在运行过程中遇到的错误条件。处理异常可以防止程序在遇到错误时崩溃。Python 提供了 try、except、else 和 finally 语句来处理异常。 …

DataExcelServer局域网文件共享服务器增加两个函数

1、PFSUM合并指定路径下单元格ID的值 PFSUM("/103采购/8月采购名细","amount") 第一个参数为路径&#xff0c;第二个参数为单元格的ID 2、PFQuery 查询路径下 单元格ID值的列表 PFQuery("/103采购/8月采购名细","amount") 查询/103采…

【vue】JSON数据导出excel

前言 导出方式有很多种&#xff0c;但是若只需要数据导出成.xlsx文件并下载的话&#xff0c;只用xlsx一个插件就行 目标 1 实现数据导出excel 2 如何设置表格列宽 3 如何在文件中创建工作表 准备工作 1 安装 npm i xlsx -S 2 引入 npm i xlsx -S 二、导出excel 创建文件 con…

Windows总结

windows安装 Windows分类 旗舰版 不完整专业版 不完整服务器版 完整安装步骤 拔网线安装Windows系统 备份下载安装镜像制作启动U盘 推荐用大白菜加入BIOS系统设置为U盘启动优先重装Windows系统 U盘安装光盘安装 优点&#xff1a;一对一安装简单缺点&#xff1a;大量安装非常浪费…

LeetCode 算法:腐烂的橘子 c++

原题链接&#x1f517;&#xff1a;腐烂的橘子 难度&#xff1a;中等⭐️⭐️ 题目 在给定的 m x n 网格 grid 中&#xff0c;每个单元格可以有以下三个值之一&#xff1a; 值 0 代表空单元格&#xff1b;值 1 代表新鲜橘子&#xff1b;值 2 代表腐烂的橘子。 每分钟&#…

选择适合的220V转5V电源芯片,220V转5V非隔离降压电源ic

#### 问题&#xff1a; 在设计一个需要将220V交流电转换为5V直流电的电路时&#xff0c;我应该选择哪种型号的电源芯片&#xff1f;我需要输出电流在200mA以内&#xff0c;有没有推荐的型号&#xff1f; #### 答案&#xff1a; 在220V交流电转换为5V直流电的应用中&#xff0c…