Kubernetes学习篇之组件

news2024/11/14 20:37:27

Kubernetes学习篇之组件

文章目录

  • Kubernetes学习篇之组件
  • 前言
  • 概述
  • 控制平面组件(Control Plane Components)
      • kube-apiserver
      • etcd
      • kube-scheduler
      • kube-controller-manager
      • cloud-controller-manager
  • Node 组件
      • kubelet
      • kube-proxy
      • 容器运行时(Container Runtime)
  • 插件(Addons)
      • DNS
      • Web界面(仪表盘)
      • 容器资源监控
      • 集群层面日志
      • 网络插件

前言

今天聊一下Kubernetes集群中有哪些组件,顺便聊聊这些组件各自是干啥的

概述

运行容器化应用程序的机器称为节点(Node),工作节点托管Pod,Pod就是应用负载的组件,控制平面(Control Plane)管理集群中的工作节点和Pod

生产环境中,控制平面通常跨多台计算机运行,一个集群通常运行多个节点,提供容错性和高可用性

组成

控制平面组件(Control Plane Components)

控制平面组件在集群执行全局决策,例如(资源调度,接受和响应集群事件)

kube-apiserver

处理请求的工作,采用水平扩缩的设计,可通过部署多个实例来进行扩缩,并在其之间平衡负载

etcd

一致且高可用的键值存储,Kubernetes所有集群数据的后台数据库

kube-scheduler

负责监视新创建的未指定运行节点(node)的Pods,并选择节点来让Pod在上面运行,调度决策考虑的因素包括单个Pod及Pods集合的资源需求,软硬件及策略约束,亲和性及反亲和性规范,数据位置,工作负载间的干扰及最后时限

kube-controller-manager

负责运行控制器进程

从逻辑上讲,每个控制器都是一个单独的进程,但是为了降低复杂性,它们都被编译到同一个可执行文件,并在一个进程中运行

有不同类型的控制器,例如:

节点控制器(Node Controller):负责节点出现故障后通知和响应

任务控制器(Job Controller):监测代表一次性任务的Job对象,然后创建 Pods来运行这些任务直至完成

端点分片控制器(EndpointSlice Controller):填充端点分片(EndpointSlice)对象,以提供Service和Pod之间的链接

服务账号控制器(ServiceAccount Controller):为新的命名空间创建默认的服务账号(ServiceAccount)

cloud-controller-manager

仅运行特定于云平台的控制器,允许将集群连接到云提供商的API上,并将与该云平台交互的组件同与你的集群交互的组件分离开来

与kube-controller-manager类似,cloud-controller-manager将若干逻辑上独立的控制回路组合到同一个可执行文件中,在一个进程上运行,可执行水平扩容来提升性能或增强容错能力

下面的控制器依赖于云平台驱动:

节点控制器(Node Controller):用于在节点终止响应后检查云提供商以确定节点是否已被删除

路由控制器(Route Controller):用于在底层云基础架构中设置路由

服务控制器(Service Controller):用于创建、更新和删除云提供商负载均衡器

Node 组件

负责维护运行的Pod并提供Kubernetes运行环境

kubelet

在集群中每个节点上运行,保证容器运行在Pod中,接收一组通过各类机制提供给它的PodSpecs,确保这些PodSpecs中描述的容器状态正常,kubelet只管理Kubernetes创建的容器

kube-proxy

集群中每个节点上运行的网络代理,维护节点上的一些网络规则,允许从集群内部或外部的网络会话与Pod进行网络通信

若操作系统提供了可用的数据包过滤层,则kube-proxy会通过它来实现网络规则,否则kube-proxy只做流量转发

容器运行时(Container Runtime)

负责管理Kubernetes环境中容器的执行和生命周期

Kubernetes支持许多容器运行环境,例如containerd,CRI-O以及Kubernetes CRI(容器运行环境接口)的实现

插件(Addons)

使用Kubernetes资源(DaemonSet,Deployment等)实现集群功能,这些插件提供集群级别的功能,插件中命名空间域的资源属于kube-system命名空间

下面介绍几种插件

DNS

集群DNS是一个DNS服务器,和环境中的其他DNS服务器一起工作,Kubernetes启动的容器自动将此DNS服务器包含在其DNS搜索列表中

Web界面(仪表盘)

Dashboard是Kubernetes集群的Web的用户界面,它使用户可以管理集群中运行的应用程序以及集群本身,并进行故障排除

容器资源监控

将关于容器的一些常见的时间序列度量值保存到一个集中的数据库中,并提供浏览这些数据的界面

集群层面日志

将容器的日志数据保存到一个集中的日志存储中,这种集中日志存储提供搜索和浏览接口

网络插件

实现容器网络接口(CNI)规范,负责为Pod分配IP地址,并使这些Pod能在集群内部相互通信

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

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

相关文章

驱动开发,IO多路复用实现过程,epoll方式

1.框架图 被称为当前时代最好用的io多路复用方式; 核心操作:一棵树(红黑树)、一张表(内核链表)以及三个接口; 思想:(fd代表文件描述符) epoll要把检测的事件…

Ubuntu安装深度学习环境相关(yolov8-python部署)

Ubuntu安装深度学习环境相关(yolov8-python部署) 本文将从如下几个方面总结相关的工作过程: Ubuntu系统安装(联想小新pro16) 2.显卡驱动安装3.测试深度学习模型 1. Ubunut 系统安装 之前在台式机上安装过Ubuntu,以为再在笔记本上安装会是小菜一碟&…

Linux内核源码分析 (B.x)Linux内存布局

一、32位系统的内存布局 为什么要将进程地址空间划分成内核空间和用户空间? 这个和处理器的体系结构有关。比如X86分为ring0~ring3级别,ring0给内核空间使用,ring3给用户空间使用;同样的,ARMv7也是如此,svc…

openGauss学习笔记-70 openGauss 数据库管理-创建和管理普通表-查看表数据

文章目录 openGauss学习笔记-70 openGauss 数据库管理-创建和管理普通表-查看表数据70.1 查询数据库所有表的信息70.2 查询表的属性70.3 查询表的数据量70.4 查询表的所有数据70.5 查询字段的数据70.6 过滤字段的重复数据70.7 查询字段为某某的所有数据70.8 按照字段进行排序 o…

C++之unordered_map,unordered_set模拟实现

unordered_map,unordered_set模拟实现 哈希表源代码哈希表模板参数的控制仿函数增加正向迭代器实现*运算符重载->运算符重载运算符重载! 和 运算符重载begin()与end()实现 unordered_set实现unordered_map实现map/set 与 unordered_map/unordered_set对比哈希表…

python 自(3)1使用urlencode多个参数请求使用 2百度翻译post请求post无法添加路径 3百度翻译全部数据获取 4豆瓣get请

1 使用urlencode 多个参数请求使用 # 使用urlencode 多个参数请求使用 # https://www.baidu.com/s?wd周杰伦&sex男 网页 import urllib.request import urllib.parsebase_url https://www.baidu.com/s?data {wd: 周杰伦,sex: 男,sing:歌曲 }new_data urllib.par…

牛客: BM3 链表中的节点每k个一组翻转

牛客: BM3 链表中的节点每k个一组翻转 文章目录 牛客: BM3 链表中的节点每k个一组翻转题目描述题解思路题解代码 题目描述 题解思路 用一个[]int保存一组节点的val,一个快节点先遍历k个节点将节点的val顺序保存在[]int中,然后慢节点再遍历k个节点,逆序将[]int的val设置给节点的…

北斗导航 | 基于奇异值分解的接收机自主完好性监测算法

===================================================== github:https://github.com/MichaelBeechan CSDN:https://blog.csdn.net/u011344545 ===================================================== 基于奇异值分解的接收机自主完好性监测算法 摘 要:基于最小二乘法残差…

Python Opencv实践 - 视频文件操作

参考资料: 视频处理VideoCapture类---OpenCV-Python开发指南(38)_python opencv videocapture_李元静的博客-CSDN博客 OpenCV VideoCapture.get()参数详解 - 简书FOURCC四字符码对照表_4fvcc_Kellybook的博客-CSDN博客 import cv2 as cv im…

【计算机网络】传输层协议——TCP(下)

文章目录 1. 三次握手三次握手的本质是建立链接,什么是链接?整体过程三次握手过程中报文丢失问题为什么2次握手不可以?为什么要三次握手? 2. 四次挥手整体过程为什么要等待2MSL 3. 流量控制4. 滑动窗口共识滑动窗口的一般情况理解…

星际争霸之小霸王之小蜜蜂(十三)--接着奏乐接着舞

系列文章目录 星际争霸之小霸王之小蜜蜂(十二)--猫有九条命 星际争霸之小霸王之小蜜蜂(十一)--杀杀杀 星际争霸之小霸王之小蜜蜂(十)--鼠道 星际争霸之小霸王之小蜜蜂(九)--狂鼠之…

国家网络安全周 | 天空卫士荣获“2023网络安全优秀创新成果大赛优胜奖”

9月11日上午,四川省2023年国家网络安全宣传周在泸州开幕。在开幕式上,为2023年网络安全优秀创新成果大赛——成都分站赛暨四川省“熊猫杯”网络安全优秀作品大赛中获奖企业颁奖,天空卫士银行数据安全方案获得优秀解决方案奖。 本次比赛由四川…

免费好用的天翎bpm流程引擎,实现生产管理系统

1.什么是生产管理系统 针对中小型制造企业的生产应用而开发,能够帮助企业建立一个规范准确即时的生产数据库,同时实现轻松、规范、细致的生产业务、库存业务一体化管理工作。提高管理效率(企业管理的科学方法)、掌握及时、准确、全…

Mysql高级——索引创建和使用

索引的创建 1. 索引的声明与使用 1.1 索引的分类 MySQL的索引包括普通索引、唯一性索引、全文索引、单列索引、多列索引和空间索引等。 从功能逻辑上说,索引主要有 4 种,分别是普通索引、唯一索引、主键索引、全文索引。 按照物理实现方式&#xff…

Spring之IOC容器(依赖注入)基本介绍基本配置多模块化

标题一:什么是spring,它能够做什么? Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的…

【计算机视觉 | CNN】Image Model Blocks的常见算法介绍合集(一)

文章目录 一、Residual Block二、Bottleneck Residual Block三、Dense Block四、Squeeze-and-Excitation Block五、Inception Module六、Non-Local Block七、Spatial Attention Module八、Spatial Transformer九、ResNeXt Block十、Fire Module十一、Inception-v3 Module十二、…

数据结构与算法(C语言版)P2---线性表之顺序表

前景回顾 #mermaid-svg-sXTObkmwPR34tOT4 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-sXTObkmwPR34tOT4 .error-icon{fill:#552222;}#mermaid-svg-sXTObkmwPR34tOT4 .error-text{fill:#552222;stroke:#552222;}#…

拥有这个中文版CustomGPT,你也能定制自己的AI问答机器人

人工智能技术的快速发展为各行各业带来了前所未有的机会,其中之一就是定制化的问答机器人。这些机器人可以用于客户支持、知识管理、虚拟助手等多个领域,帮助企业提高效率,提供更好的用户体验。很多人可能都知道通过CustomGPT能够设计自己的人…

Golang使用sqlx报错max_prepared_stmt_count超过16382

文章目录 背景mysql的预处理查看实例预处理详情com_stmt_prepare开启performance_schema 本地查看预处理语句 预处理语句飙升的原因生成预处理语句但是不close执行sql过程中发生错误 go服务分析抓包分析发送给mysql的包debug查看预处理细节sqlx发送statement command指令sqlx关…

伦敦银时走势与获利机会

交易时间灵活、资金杠杆充沛是伦敦银交易的主要优势,投资者应该充分利用这个品种的制度优势,结合自己个人的作息时间,在工作、投资与生活三者之间取得平衡的前提下,借助国际白银市场的波动,通过交易逐步实现自己的财富…