K8S 角色/组件及部署方式的简单概述

1.宏观架构图

2.角色详情

2.1 Master(Controller Plane)

早期是叫 Master 节点,后期改名为 Controller Plane,负责整个集群的控制和管理

Master 不会干活的(当然你让它干也是会干的,涉及到污点容忍),而是起到访问入口(API Server)、调度协调(Scheduler)、管理作用(Control Manager)。

  • API Server

    kube-apiserver,集群的统一入口,各组件协调者,以RESTFUL API提供接口服务,所有对象资源的增删改查和监听操作都交给APIServer处理后再提交给etcd存储。

  • Scheduler

    kube-scheduler 根据调度算法为新创建的Pod选择一个Node节点,可以任意部署,可以部署在同一个节点上,也可以部署在不同的节点上。调度决策考虑的因素包括单个 Pod 及 Pods 集合的资源需求、软硬件及策略约束、 亲和性及反亲和性规范、数据位置、工作负载间的干扰及最后时限。

  • Control Manager

    Kube-controller-manager,处理集群中常规后台任务,一个资源对应一个控制器,而ControllerManager就是负责管理这些控制器的。

    • 节点控制器(Node Controller):负责在节点出现故障时进行通知和响应
    • 任务控制器(Job Controller):监测代表一次性任务的 Job 对象,然后创建 Pod 来运行这些任务直至完成
    • 还有其他,rs,rc,sts, CronJob等
  • Cloud Controller Manager

    用在云平台上的Kube-controller-manager组件。如果我们直接在物理机上部署的话,可以不使用该组件。

  • Etcd

    分布式键值存储系统,用于保存集群状态元数据信息,比如Pod,Service等对象信息。这个数据库是可以单独拿出来部署,只需要API server可以连接到该分布式数据库集群即可

2.2 Slave(worker node)

        早期叫 slave 节点,后期改名为 Worker node,负责执行和运行工作负载的节点

        slave(worker node) 节点默认不得超过 5000个,也就是集群中不能超过5000台机器,如果超过则多集群管理

        容器不得超过 30W个

        单个节点的Pod数量默认不能超过 110 个,服务器规格高的话,可以调大,默认是不需要修改的

  • kubelet

    可以理解为Master在工作节点上的Agent,管理本机运行容器的生命周期,比如创建容器,Pod挂载数据卷,下载secret,获取容器的节点状态等工作。kubelet 将每一个Pod转换成一组容器。会定期收集这些信息上报给API Server,APIserver收到后会存储到etcd存储中。

  • kube-proxy

    在工作节点上实现Pod网络代理,维护网络规则和四层负载均衡工作。换句话说,就是用于负责Pod网络路由,用于对外提供访问的实现。可以找到你关心的项目所在的pod节点。

  • POD

    用户划分容器的最小单位,一个POD可以存在多个容器

3. kubernets 部署方式

3.1 目前生产环境部署kubernetes集群主要由两种方式

3.1.1 kubeadm 方式部署

        kubeadm是一个K8S部署工具,提供kubeadm init和kubeadm join,用于快速部署kubernetes集群。

        kubeadm init 初始化一套集群

        kubeadm join 加入已存在集群

3.1.2 二进制方式部署

        从GitHub下载发行版的二进制包,手动部署每个组件,组成kubernetes集群。

        集群规模较多的话,推荐使用二进制部署。

3.2 其他部署方式的途径

  • yum:

    已废弃,目前支持的最新版本为2017年发行的1.5.2版本。

  • minikube:

    适合开发环境,能够快速在Windows或者Linux构建K8S集群,单点部署

  • rancher:

    基于K8S改进发行了轻量级K8S,让K3S孕育而生。阉割版

  • KubeSphere:

    青云科技基于开源KubeSphere快速部署K8S集群。可在现有的K8S集群上面安装部署,提供图形化管理界面以及可视化监控。

  • kuboard:

    也是对k8s进行二次开发的产品,新增了很多独有的功能。

  • kubeasz:

    使用ansible部署,扩容,缩容kubernetes集群。

  • 第三方云厂商:

    比如aws,阿里云,腾讯云,京东云等云厂商均有K8S的相关SAAS产品。

以上基本都是基于K8S二次开发的产品,有兴趣的可以自行了解一下

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OPENCV清晰度判断(二)

文章目录 提取ROI判断清晰度灰度共轭矩阵(GLCM)灰度共轭函数的简单原理:计算灰度共轭矩阵代码计算矩阵的对比度 LBP:LBP的基本原理LBP代码 之前有过一篇关于清晰度的判断的文章: python的opencv操作记录(九)——图像清晰度计算。 这一篇里面…

代理IP对SEO影响分析:提升网站排名的关键策略

你是否曾经为网站排名难以提升而苦恼?代理服务器或许就是你忽略的关键因素。在竞争激烈的互联网环境中,了解代理服务器对SEO的影响,有助于你采取更有效的策略,提高网站的搜索引擎排名。本文将为你详细分析代理服务器在SEO优化中的…

使用FRP 0.58版本进行内网穿透的详细教程

什么是FRP? FRP(Fast Reverse Proxy)是一款高性能的反向代理应用,主要用于内网穿透。通过FRP,您可以将内网服务暴露给外网用户,无需进行复杂的网络配置。 准备工作 服务器:一台具备公网IP的服…

软件设计师笔记-操作系统知识(二)

线程 以下是关于线程的一些关键点: 线程是进程中的一个实体:进程是操作系统分配资源(如内存空间、文件句柄等)的基本单位,而线程是进程中的一个执行单元。多个线程可以共享同一个进程的地址空间和其他资源。线程是CP…

昇思25天学习打卡营第3天|函数式自动微分

文章目录 昇思MindSpore快速入门基于MindSpore的函数式自动微分1、简介2、函数与计算图算例3、微分函数与梯度计算4、Stop Gradient(停止梯度计算)5、Auxiliary data6、神经网络梯度计算 Reference 昇思MindSpore快速入门 基于MindSpore的函数式自动微分…

在flask中加载mnist模型,并预测图片

一、在tensorflow中新建及保存模型 启动Jupyter Notebook 新建Notebook 生成 mnist_model.h5 模型的代码 import tensorflow as tf from tensorflow.keras.datasets import mnist from tensorflow.keras.models import Sequential from tensorflow.keras.layers import…

ASUS/华硕天选Air 2021 FX516P系列 原厂win10系统

安装后恢复到您开箱的体验界面,带原机所有驱动和软件,包括myasus mcafee office 奥创等。 最适合您电脑的系统,经厂家手调试最佳状态,性能与功耗直接拉满,体验最原汁原味的系统。 原厂系统下载网址:http:…

java设计模式(二)工厂方法模式(pattern of factory method)

1、模式介绍: 工厂方法模式(pattern of factory method)是一种创建型设计模式,它定义了一个用于创建对象的接口,但将实际创建对象的工作延迟到子类中,这样可以在不改变整体结构的情况下,通过子…

OpenGL3.3_C++_Windows(23)

伽ga马校正 物理亮度 光子数量 线性空间:光子数(亮度)和颜色值的线性关系人眼感知的亮度:对比较暗的颜色变化更敏感,感知亮度基于人的感觉非线性空间:光子数(亮度)和 颜色值^2.2,恰好符合屏幕…

GIT版本管理工具轻松入门 | TortoiseGit

目录 一、下载git 二、下载tortoisegit(可视化git) 三、Git本地仓库创建 四、git克隆 五、添加,提交,推送,拉取 六、分支 七、冲突 八、忽略文件(修改gitignore文件) 一、下载git 安装…

<Linux> 缓冲区谁维护?

缓冲区是谁提供的&#xff1f; 来看一段代码 #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <string.h> int main() {const char *str1 "a";printf("%s", str1);const char *str2 "b";writ…

AI副业新风口项目,AI绘画+古诗文视频,轻松吸引大批粉丝,变现简单,收益稳

前言 一个不吹牛逼不聊人生不谈理想只聊赚钱的自媒体从业者 问题都在过程中产生&#xff0c;努力做了也许会成功&#xff0c;但不做永远没有机会 — — — 小红书副业新风口项目&#xff0c;AI绘画古诗文视频&#xff0c;轻松吸引大批粉丝&#xff0c;变现简单&#xff0c;收…

2020年全国大学生数学建模竞赛C题中小微企业信贷决策(含word论文和源代码资源)

文章目录 一、部分题目二、部分论文三、部分源代码&#xff08;一&#xff09;数据处理代码&#xff08;二&#xff09;熵权法与TOPSIS代码&#xff08;三&#xff09;最小二乘法代码&#xff08;四&#xff09;粒子群代码 四、完整word版论文和源代码&#xff08;两种获取方式…

FireFox 编译指南2024 Windows10篇-环境准备(一)

1. 引言 在开源浏览器项目中&#xff0c;Firefox因其高性能和灵活性而备受开发者青睐。为了在本地环境中编译和定制Firefox&#xff0c;开发者需要做好充分的环境准备工作。这不仅是编译成功的基础&#xff0c;也是后续调试、优化和二次开发的关键步骤。 编译Firefox是一个复…

缓存双写一致性(笔记)

缓存更新方案 旁路缓存模式 这是比较多的 旁路缓存模式&#xff1a;缓存有就返回&#xff0c;没有数据库查询&#xff0c;放入缓存返回。 还有些常用缓存策略 读穿透模式 读穿透和旁路很相似&#xff0c;程序不需要关注从哪里读取数据&#xff0c;它只需要从缓存查询数据。…

PPT录屏怎么录?PPT录屏,3种方法简单操作

在数字化时代&#xff0c;PPT已经成为我们日常工作、学习和生活中不可或缺的一部分。无论是商务报告、教学课件还是产品展示&#xff0c;PPT都能帮助我们更加生动、直观地传递信息。然而&#xff0c;有时候我们会面临PPT录屏怎么录的问题。这时&#xff0c;一个好的PPT录屏功能…

OpenAI发布CriticGPT:纠错GPT生成错误代码?

OpenAI发布CriticGPT&#xff1a;纠错GPT生成错误代码&#xff1f; 前言 OCriticGPT 就在6月28日&#xff0c;OpenAI 训练出了一个基于 GPT-4 的模型—— CriticGPT&#xff0c;它可以用于查验ChatGPT 写出的代码是否出错。OpenAI的团队说&#xff0c;用户从 CriticGPT 获得帮助…

1panel 搭建多个网站

1panel 部署多个网站&#xff0c;另外的域名&#xff0c;或无域端口搭建方法。 当我们已经部署好一个网站后&#xff0c;想再部署一个网站在我们的服务器上时&#xff0c; 步骤&#xff1a;&#xff08;另外的域名&#xff0c;部署在同一个服务器方法&#xff09; 运行环境里…

营销翻车,杜国楹出面道歉,小罐茶的“大师作”故事仓皇结尾

“小罐茶&#xff0c;大师作”&#xff0c;这句slogan曾一度在央视平台长时间、高密度播放&#xff0c;成为家喻户晓的广告词&#xff0c;也打响了小罐茶品牌的名号。但同时&#xff0c;市场上关于“大师作”真实性的质疑也从未停息。 就在6月25日小罐茶十二周年发布会上&#…

光伏设计:光伏项目开发中最关键的一环

随着全球对可再生能源的需求不断增长&#xff0c;光伏技术作为其中的佼佼者&#xff0c;已经成为许多国家实现能源转型和应对气候变化的重要手段。在光伏项目的开发过程中&#xff0c;光伏设计作为最关键的一环&#xff0c;其重要性不言而喻。本文将从光伏设计的角度&#xff0…