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

K8S:开源容器编排平台,助力高效稳定的容器化应用管理

云计算de小白

Kubernetes(简称K8s)是一个开源容器编排平台,用于自动化部署、扩展和管理容器化应用程序。

K8S诞生于Google,基于其多年在生产环境运行容器的经验,目前已成为现代微服务架构和云原生应用的核心技术。

790910603c3e44a4bac3bc8f57558f99.jpeg

图片

K8S对容器的生命周期进行管理,保证系统在大规模生产环境中高效稳定地运行。

K8S 组件

K8s采用主从架构,集群内所有节点都由控制平面进行管理和调度。

如下图所示:

8c691936d8334f5c931e204e3e7cd2ae.jpeg

图片

K8S组件主要包括两个核心组件:Control Plane、Worker Nodes。

Control Plane:负责管理整个集群的状态,调度任务,监控集群的正常运行;

Worker Nodes:运行实际的应用程序容器,并负责:容器的运行和管理。

如果想掌握K8s,最重要的就是掌握:Control Plane 和 Worker Nodes。

接下来我会详细讲解:Control Plane 和 Worker Node@mikechen

控制平面组件

控制平面:负责管理 Kubernetes 集群中的所有节点和 Pod。

它由以下几个部分组成,重点关注下图中的“黄色框”:

cafaaa2902e54e9ab6bbdc287c975469.jpeg

图片

“黄色框”涉及以下组件:API Server,Scheduler,Controller……等核心组件。

API 服务器

API Server:集群的入口,类似微服务网关,所有的操作都要经过API Server。

负责接收用户和其他组件的请求,并通过REST API提供集群管理功能。

控制器管理器

控制器管理器(Controller Manager):是集群管理中的重要组件,负责保证集群的实际状态和预期状态的一致性。

Controller Manager由多个控制器组成,每个控制器负责处理集群中一个或多个资源对象的状态管理。

如下图所示:

c488aaa5168349428b3296d5d6fd187e.jpeg

图片

每个控制器负责:特定类型的资源或功能。

常见的控制器有:

总之,控制器的设计使得K8S能够在大规模环境下自动管理容器和服务。

调度器

负责根据调度策略(如资源利用率、亲和性等)将新创建的Pod分配到合适的节点。

例如:通过CPU、内存、GPU等的需求,Scheduler保证节点有足够的可用资源来满足Pod的需求。

另外通过公平调度、优先级等调度策略,保证资源的合理分配和高效利用。

etcd

用于存储集群所有配置信息和状态数据的分布式键值存储系统。

etcd 专注于保证数据的一致性和持久性。

并且,提供快速读取和修改集群状态的能力。

工作节点的组件

工作节点组件:运行实际的应用程序容器,并负责:容器的执行和管理。

每个工作节点包含以下绿色框中所示的组件:

8f0a02d5b9b249fab7b6f8209c013cbf.jpeg

图片

工作节点是实际应用程序运行的地方。它从 API Server 接收调度指令并运行 Pod。

工作节点上的核心组件包括:

库贝莱特

每个节点上的agent负责保证Pod正常运行。

Pod是K8S中最小的可部署单元,通常由一个或多个紧耦合的容器组成。

如下图所示:

c24eefbab05047c58b7df19290d40171.jpeg

图片

Pod是Kubernetes中的基本构建块,提供容器的封装和管理功能。

它们可以包含一个或多个共享网络和存储资源并在同一环境中运行的容器。

当Pod被创建之后,K8S调度器会把该Pod调度到合适的工作节点上。

调度程序根据资源需求、节点负载和调度策略选择节点。

一旦 Pod 被调度到某个节点,kubelet 就会启动并运行该节点上 Pod 中的容器。

Kube-proxy

网络代理,管理网络规则并确保容器和服务之间的网络通信。

例如:使用iptables或者ipvs来维护网络规则,将流量转发到相应的Pod。

容器运行时

负责运行容器,例如Docker、containerd等。

主复制:拉取容器镜像,创建并运行容器。

并且,提供容器的生命周期管理,比如:启动、停止、监控容器……等等。

总之,K8S 的控制平面和工作节点是集群正常运行的核心,通过这两部分的协同工作,K8S 可以实现高效的容器编排、管理和自动化运维。

相关文章:

K8S:开源容器编排平台,助力高效稳定的容器化应用管理

云计算de小白 Kubernetes(简称K8s)是一个开源容器编排平台,用于自动化部署、扩展和管理容器化应用程序。 K8S诞生于Google,基于其多年在生产环境运行容器的经验,目前已成为现代微服务架构和云原生应用的核心技术。 图…...

STM32嵌入式编程学习到提高:【4】UART串口打印

------------------------------------------------------------------------------------------------------------------------- 工程文件:放在百度云盘里,需要的自行下载!!! 链接: https://pan.baidu.com/s/14gRne…...

C 标准库 - <ctype.h>

C 标准库 - <ctype.h> 概述 <ctype.h> 是 C 语言标准库中的一个头文件,它提供了一系列用于测试和操作字符的函数。这些函数主要用于检查字符是否属于特定的字符类别,如字母、数字、标点符号等,以及进行字符的大小写转换。<ctype.h> 中的函数通常在处理文…...

linux:chown用法详解

文章目录 1. 描述2. 语法3. 参数4. 例子 1. 描述 chown 是 Linux 中用于更改文件或目录的所有者和所有者组的命令。 2. 语法 chown [选项] 所有者[:组] 文件名详细用法&#xff1a; Usage: chown [OPTION]... [OWNER][:[GROUP]] FILE...or: chown [OPTION]... --reference…...

介绍GPT-o1:一系列解决困难问题( science, coding, and math )的推理模型

openai o1介绍 一、官方技术报告要点剖析实验1 benchmark分析实验2:和phd比赛技术细节&#xff1a;Chain of Thought的使用人类偏好评估Human preference evaluationsatety技术细节&#xff1a;隐藏思维链为监控模型提供了机会:)openai的几点conclusion 二、官方介绍剖析 Intro…...

2024 Python3.10 系统入门+进阶(十六):正则表达式

目录 一、认识正则表达式二、正则表达式基本语法2.1 行界定符2.2 单词定界符2.3 字符类2.4 选择符2.5 范围符2.6 排除符2.7 限定符2.8 任意字符2.9 转义字符2.10 反斜杠2.11 小括号2.11.1 定义独立单元2.11.2 分组 2.12 反向引用2.13 特殊构造2.14 匹配模式 三、re模块3.1 comp…...

书生大模型实战营学习[7] InternLM + LlamaIndex RAG 实践

环境配置 选择30%A100做本次任务 conda create -n llamaindex python3.10 conda activate llamaindex conda install pytorch2.0.1 torchvision0.15.2 torchaudio2.0.2 pytorch-cuda11.7 -c pytorch -c nvidia pip install einops pip install protobuf安装Llamaindex cond…...

【MySQL】数据库--索引

索引 1.索引 在数据中索引最核心的作用就是&#xff1a;加速查找 1.1 索引原理 索引的底层是基于BTree的数据存储结构 如图所示&#xff1a; 很明显&#xff0c;如果有了索引结构的查询效率比表中逐行查询的速度要快很多且数据越大越明显。 数据库的索引是基于上述BTree的…...

[大语言模型-论文精读] ACL2024-长尾知识在检索增强型大型语言模型中的作用

ACL2024-长尾知识在检索增强型大型语言模型中的作用 On the Role of Long-tail Knowledge in Retrieval Augmented Large Language Models Authors: Dongyang Li, Junbing Yan, Taolin Zhang, Chengyu Wang, Xiaofeng He, Longtao Huang, Hui Xue, Jun Huang 1.概览 问题解决&…...

“迷茫野路子到AI大模型高手:一张图解产品经理晋升之路和能力构建“

前言 在探寻成功之路上&#xff0c;若你向20位业界顶尖的产品经理或运营专家请教&#xff0c;他们可能会向你展示一条条各异的路径&#xff0c;正如那句古老的格言&#xff1a;“条条大路通罗马”。但是&#xff0c;我们必须认识到&#xff0c;这些路径虽多&#xff0c;却并非…...

可看见车辆行人的高清实时视频第2辑

我们在《看见车辆行人的高清实时视频第2辑》分享了10处可看见车辆行人的实时动态高清视频。 现在我们又整理10处为你分享可看见车辆行人的实时动态高清视频&#xff0c;一共有30个摄像头数据&#xff0c;这些视频来自公开的高清摄像头实时直播画面。 我们在文末为你分享了这些…...

基于饥饿游戏搜索优化随机森林的数据回归预测 MATLAB 程序 HGS-RF

1. 引言 随着人工智能和机器学习的飞速发展&#xff0c;回归预测在各个领域得到了广泛应用。回归模型用于预测连续变量的值&#xff0c;如金融市场的价格走势、气象预报中的温度变化等。本文提出了一种基于**饥饿游戏搜索&#xff08;Hunger Games Search, HGS&#xff09;优化…...

一天面了8个Java后端,他们竟然还在背5年前的八股文!

今天面了8个Java候选人&#xff0c;在面试中我发现他们还停留在面试背八股文的阶段&#xff0c;5年前面试背八股文没问题&#xff0c;随着市场竞争越来越激烈&#xff0c;再问普通的Java八股文已经没有意义了&#xff0c;因为考察不出来获选人的真实实力&#xff01; 现在面试…...

python功能测试

文章目录 unnittest1. 基本结构2. 常用断言方法3. 测试生命周期方法4. 跳过测试5. 运行测试 pytest1. 基本测试用法2. 安装 pytest3. 运行测试4. 使用 assert 断言5. 异常测试6. 参数化测试7. 测试前后设置8. 跳过测试和标记失败9. 测试夹具 (Fixtures)10. 生成测试报告11. 插件…...

【秋招笔试】09.25华子秋招(已改编)-三语言题解

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 大厂实习经历 ✨ 本系列打算持续跟新 春秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 🍒 本专栏已收集…...

【中级通信工程师】终端与业务(四):通信产品

【零基础3天通关中级通信工程师】 终端与业务(四)&#xff1a;通信产品 本文是中级通信工程师考试《终端与业务》科目第四章《通信产品》的复习资料和真题汇总。终端与业务是通信考试里最简单的科目&#xff0c;有效复习通过率可达90%以上&#xff0c;本文结合了高频考点和近几…...

数据科学 - 字符文本处理

1. 字符串的基本操作 1.1 结构操作 1.1.1 拼接 • 字符串之间拼接 字符串之间的拼接使用进行字符串的拼接 a World b Hello print(b a) • 列表中的字符串拼接 将以分隔符‘,’为例子 str [apple,banana] print(,.join(str)); • 字符串中选择 通过索引进行切片操…...

python之装饰器、迭代器、生成器

装饰器 什么是装饰器&#xff1f; 用来装饰其他函数&#xff0c;即为其他函数添加特定功能的函数。 装饰器的两个基本原则&#xff1a; 装饰器不能修改被装饰函数的源码 装饰器不能修改被装饰函数的调用方式 什么是可迭代对象&#xff1f; 在python的任意对象中&#xff…...

Go语言实现后台管理系统如何根据角色来动态显示栏目

实现要点 根据不同的用户显示不同的栏目是后台管理的重要内容,那么如何实现这些功能呢? 栏目有很多分级这些需要递归查出来新增和删除也要满足层级规则且不影响其他层级各节点之间的关系因该明确,方便添加和删除数据库设置 存储栏目的数据库设计,要明确节点的关系最常用的…...

【深度学习】【TensorRT】【C++】模型转化、环境搭建以及模型部署的详细教程

【深度学习】【TensorRT】【C】模型转化、环境搭建以及模型部署的详细教程 提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 文章目录 【深度学习】【TensorRT】【C】模型转化、环境搭建以及模型部署的详细教程前言模型转换--pytorch转engineWindows平台搭…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

逻辑回归暴力训练预测金融欺诈

简述 「使用逻辑回归暴力预测金融欺诈&#xff0c;并不断增加特征维度持续测试」的做法&#xff0c;体现了一种逐步建模与迭代验证的实验思路&#xff0c;在金融欺诈检测中非常有价值&#xff0c;本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...

破解路内监管盲区:免布线低位视频桩重塑停车管理新标准

城市路内停车管理常因行道树遮挡、高位设备盲区等问题&#xff0c;导致车牌识别率低、逃费率高&#xff0c;传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法&#xff0c;正成为破局关键。该设备安装于车位侧方0.5-0.7米高度&#xff0c;直接规避树枝遮…...

【QT控件】显示类控件

目录 一、Label 二、LCD Number 三、ProgressBar 四、Calendar Widget QT专栏&#xff1a;QT_uyeonashi的博客-CSDN博客 一、Label QLabel 可以用来显示文本和图片. 核心属性如下 代码示例: 显示不同格式的文本 1) 在界面上创建三个 QLabel 尺寸放大一些. objectName 分别…...