Kubernetes 集群架构

news2024/10/7 2:29:29

etcd

集群状态存储:etcd 存储所有 Kubernetes 对象的状态,例如部署、pod、服务、配置映射和机密。
配置管理:集群配置的更改存储在 etcd 中,允许 Kubernetes 管理和维护集群的所需状态。
注意:etcd 可能位于 kube-system 中

Kube-api 服务器

Kubernetes API 服务器是 Kubernetes 控制平面的核心组件,它公开 Kubernetes API 并作为与集群所有交互的网关。

Kubernetes 控制器

Kubernetes 控制器管理器是一个运行控制器的守护进程,负责监视集群的状态并进行或请求更改以实现所需状态。(通过注册的 etcd 变量达到所需状态)

库贝莱特

kubelet 是 Kubernetes 代理,负责管理节点上的 pod、报告其状态并确保实现所需状态。

库贝代理

简单来说,kube-proxy 通过管理每个节点上必要的网络配置和规则,确保 Kubernetes 集群(pod、服务等)不同组件之间的网络通信按预期工作。

服务网络:kube-proxy 确保所有用于 Kubernetes 服务的网络流量都可以正确路由到提供该服务的适当 pod。
负载平衡:kube-proxy 可以在服务的各个 pod 之间执行基本的负载平衡,在它们之间分配传入流量。
网络代理:kube-proxy 充当网络代理,根据服务配置将流量转发到正确的 pod。
网络规则:kube-proxy 负责在节点上设置必要的 iptables 规则或其他网络规则,以实现所需的网络行为。

中国国际广播电台

通过使用 CRI,Kubernetes 可以维护一个一致的容器管理接口,同时允许用户选择最适合其需求和基础设施的容器运行时。
(有选项)

调度器

Kubernetes 调度程序对于确保高效利用集群资源以及将 Pod 调度到能够处理其资源需求和约束的节点上至关重要。

工作节点或节点 1 和节点 2

简单来说,工作节点是 Kubernetes 集群的“主力”,实际的应用程序工作负载在此执行。它们提供运行容器化应用程序所需的计算资源(CPU、内存、存储),而 Kubernetes 控制平面则管理整个集群中这些工作负载的整体编排和调度。

简单来说,Kubernetes 中的 Pod 是您可以在 Kubernetes 系统中创建和管理的最小、最基本的计算单元。

Pod 是一组部署在同一主机(工作节点)上并共享相同资源的一个或多个容器,例如:

互动场景:

1.定义应用程序配置
创建一个 YAML 文件,描述简单 Web 应用程序的部署。

# my-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-web-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web
  template:
    metadata:
      labels:
        app: web
    spec:
      containers:
      - name: web-container
        image: nginx
        ports:
        - containerPort: 80

2.应用配置
使用 kubectl 在集群中创建部署。

kubectl apply -f my-deployment.yaml

相互作用

  • kubectl 将配置文件发送到 Kubernetes API 服务器。
  • API 服务器验证配置并将其存储在集群的键值存储 etcd 中。

3. API 服务器处理请求

  • API 服务器在 etcd 中创建一个新的部署对象。
  • API 服务器向 kubectl 响应请求的状态。

4.部署控制器操作

  • 作为控制器管理器的一部分,部署控制器注意到了新的部署对象。
  • 它创建 ReplicaSet 对象以匹配部署中指定的所需状态。

5. ReplicaSet 控制器操作

  • ReplicaSet 控制器看到新的 ReplicaSet 并确保正在运行正确数量的 pod。
  • 它在 etcd 中创建新的 Pod 对象以匹配所需的副本。

6.调度程序操作

调度程序检测新的未调度的 pod 并将其分配给集群中的适当节点。

7.Kubelet操作

  • 每个分配节点上的 kubelet 都会看到新的 Pod 对象。
  • 它指示容器运行时(如 Docker 或 containerd)拉取 nginx 镜像并启动容器。

8. Pod 正在运行

  • Web 应用程序现在正在指定的多个节点上运行。
  • kubelet 持续监控 pod,以确保它们保持所需的状态

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

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

相关文章

【ARM Cache 与 MMU/MPU 系列文章 2.1 -- 什么是 Cache PoP 及 PoDP ?】

请阅读【ARM Cache 及 MMU/MPU 系列文章专栏导读】 及【嵌入式开发学习必备专栏】 文章目录 PoP 及 PoDPCache PoDPCache PoP应用和影响PoP 及 PoDP Cache PoDP 点对深度持久性(Point of Deep Persistence, PoDP)是内存系统中的一个点,在该点达到的任何写操作即使在系统供电…

git下载项目登录账号或密码填写错误不弹出登录框

错误描述 登录账号或密码填写错误不弹出登录框 二、解决办法 控制面板\用户帐户\凭据管理器 找到对应的登录地址进行更新或者删除 再次拉取或者更新就会提示输入登录信息

Linux服务器安装Jupyter,并设置公网访问详细教程

本章教程,主要介绍如何在Linux服务器上安装jupyter,并可以通过公网地址进行访问。 一、安装jupyter pip install jupyter二、生成jupyter配置文件 jupyter notebook --generate-config三、编辑这个配置文件 找到配置文件并修改以下配置项: # 允许所有 IP 地址访问 c.Noteb…

nodejs湖北省智慧乡村旅游平台-计算机毕业设计源码 00232

摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,旅游行业当然也不能排除在外。智慧乡村旅游平台是以实际运用为开发背景,运用软件工程开发方法,采…

【ai】blender4.1 安装插件

开源软件,所以资料充足插件及配置 下载插件插件是python开发的 编辑中的偏好设置 点击选中 点击一键切换中文英文 切换主题 插件源码

卸载MySQL5.0,安装MySQL8.0

卸载MySQL 1、以管理员身份运行cmd,删除MySQL服务 2、卸载MySQL 3、删除残余文件 4、清楚注册表 winR -> regedit 5、删除环境变量 安装MySQL步骤 官方下载地址 https://www.mysql.com/downloads/ 以上步骤即完成MySQL数据库安装。

XSKY 在金融行业:新一代分布式核心信创存储解决方案

近日,国家金融监督管理总局印发了《关于银行业保险业做好金融“五篇大文章”的指导意见》,在数字金融领域提出明确目标,要求银行业保险业数字化转型成效明显,数字化经营管理体系基本建成,数字化服务广泛普及&#xff0…

SaaS企业营销:如何通过联盟计划实现销售增长?

联盟营销计划在国外saas行业非常盛行,国内如何借鉴国外的成功案例运用联盟计划实现销售增长呢?林叔今天以最近新发现的leadpages为例分享下经验。 Leadpages是一款用户友好的落地页制作工具,提供多种预设计模板、A/B测试和分析功能&#xff0…

【嵌入式DIY实例】-Nokia 5110显示DHT11/DHT22传感器数据

Nokia 5110显示DHT11/DHT22传感器数据 文章目录 Nokia 5110显示DHT11/DHT22传感器数据1、硬件准备2、代码实现2.1 显示DHT11数据2.2 显示DHT22数据本文介绍如何将 ESP8266 NodeMCU 开发板 (ESP-12E) 与 DHT11 数字湿度和温度传感器以及诺基亚 5110 LCD 连接。 NodeMCU 从 DHT11…

EMI电路

PFC 功率部分 1 、整流桥是串联 2 、 PFC 电感串联 3 、二极管并联 4 、 MOSFET 并联 EMI电路图

2024年山西泵管阀展览会11月8日开展

2024中国(山西)国际水务科技博览会 暨水处理技术设备与泵管阀展览会 时间:2024年11月8-10日 地点:山西潇河国际会展中心 经研究,由山西省水处理行业协会、山西省水暖阀门商会、山西省固废产业协会联合主办的2024…

SpringBoot+MyBatis批量插入数据的三种方式

文章目录 1. 背景介绍2. 方案介绍2.1 第一种方案,用 for语句循环插入(不推荐)2.2 第二种方案,利用mybatis的foreach来实现循环插入(不推荐)2.3 第三种方案,使用sqlSessionFactory实现批量插入&a…

3.00003 postmaster守护线程的启动流程调用以及辅助流程的启动流程调用是怎样的

文章目录 架构图相关数据结构child_process_kinds[]数组 (launch_backend.c:179)相关函数main.cPostmasterMain(postmaster.c:489)ServerLoop(postmaster.c:1624)BackendStartup(postmaster.c:3544)postmaster_child_launch (launch_backend.c:265)StartChildProcess (postma…

肾合能量不足?揭秘手心热出汗的真相

想象一下,我们的身体如同一座精密的城堡,城堡内的每一个房间都代表着一个器官,而城堡的守卫——气血,则是维系城堡和谐稳定的重要力量。当城堡中的守卫力量不足,或是城堡内的环境出现紊乱时,城堡的某个角落…

C# 生成解决方案时出现的一些异常及解决方法

一、ResolveAssemblyReference任务意外失败 在使用VS2022生成C#解决方案时,出现如下错误: 解决方法: 项目的依赖项出现问题,重新更新一下依赖项即可 二、生成Win32资源时出错 产生这个原因的主要原因是配置的应用程序的图标文…

计算机视觉全系列实战教程:(八)图像变换-点运算、灰度变换、直方图变换

图像变换:点运算、灰度变换、直方图变换 1.点运算(1)What(2)Why 2.灰度变换(1)What(2)Why(作用)(3)Which(有哪些灰度变换) 3.直方图修正(1)直方图均衡化 1.点运算 (1)What 通过点运算,输出图像的每个像素的灰度值仅仅取决于输入图像中相对应…

AI预测体彩排3采取888=3策略+和值012路或双胆下一测试6月11日新模型预测第1弹

很抱歉各位小伙伴,端午节三天去了趟外地,没有按时更新3D和排三的预测。前面跟大家说过,8码定位是关键,8码定位能稳定在80%的命中率,才有望通过缩号缩至200-250注以内通过等额方式进行投资。由于前面的模型对8码定位的效…

家用洗地机怎么选?四大行业精品集合,识别度超高

家用洗地机,作为一种能够高效清洁地面的清洁工具,不仅减轻了人们家务的轻度,也给人们腾出了很多空闲的时间去享受生活。但是洗地机那么多,我们在面对洗地机选购的时候,我们应该要注意哪些呢?下面就为大家详…

每日一练:攻防世界:base64stego

base64stego: 打开压缩包发现被加密,用winhex查看,发现是伪加密,修改文件目录区的全局方式位标记,成功打开压缩包,得到一个文本 这里我想的有三种情况:1.直接base64解码,然后看解码…

搭建个人知识库 | 手把手教你本地部署大模型

一、引言 今天给大家分享的是手把手教你如何部署本地大模型以及搭建个人知识库 读完本文,你会学习到 如何使用Ollama一键部署本地大模型通过搭建本地的聊天工具,了解ChatGPT的信息是如何流转的RAG的概念以及所用到的一些核心技术如何通过AnythingLLM这…