k8s(二)
五、kubernetes架构(K8S的架构也是master和node模式)
集群里至少需要有一个master节点,即就是主节点。node节点可以多个。
若是多个master节点,worker节点和master的apiserverr进行交互时,就需要通过LB(load banlance)
1、示意图(一个master、两个worker节点)
1.1此处红色圈住的是master节点
1.2后面的是两个worker节点
网盘的集群一个master两个worker
2、组件
2.1、master组件:apiserver、schedule、contonrollermanager
1)master节点的作用
控制整个集群、负责整个集群的控制和管理。
可以暴露api
调度部署
对节点进行管理。
master是不建议去部署我们的应用程序的,部署应用程序会增加节点的压力,如果master节点挂了,单个看s就不可以再进行用,master节点可以打污点
2)master组件中apiserver、schedule、contonrollermanager的作用
①apiserver
集群的控制中枢,整个K8S的操作都是要经过apiserver,即就是资源操作的入口。也是资源操作唯一的入口。
②contonrollermanager
一个控制器,会通过apiserver提供的接口去实时监控集群所有资源的状态。会保证资源达到期望值
③schedule调度器
通过apiserver提供的接口,和这个apiserver进行通信。如果监听到有创建资源的信息,通过kubectl创建发送资源的命令,监听到创建资源的信息后,会检索所有要求pod的work节点,通过调度算法去选择节点,最后将资源绑在目标的节点上。
关于master至少要三个节点,这样才可以实现高可用。如果一个挂了,整个k8s都没法用了。
2.2、worcker节点组件(即就是node节点):主要就是kubelet、kube-proxy
1)kubelet作用
两个woker节点,上面一个,下面一个
kubelet监听节点上的pod的状态,定期去调用apiserver暴露的接口,上报节点和pod节点的状态上报到aiserver。也可以通过apisertver监听到pod相关信息,监听到资源不满足期望,会告诉给apiserver,kubelet就获取到了这个信息,要启动pod的节点,会去调用docker提供的接口创建pod。创建成功后,会把信息上传到给apiserver,apsserver每次会把信息放到etcd中,edc是键值数据库。etcd的也是多个,work节点上另外一个就是kube-proxy,做负载均衡,每个worker上都有。
2)kube-proxy(提供网络代理、负载均衡)
3)calico
kubetcl get po -n kube-system -owide
获取pod,通过 -n指定命名空间、kube-system系统命名空间、-owide展示扩展信息
上面有calico,网络插件,功能就是给每个pod提供IP,并且将每一个node当作路由器。
4)coredns
解决服务发现问题,服务之间,访问的话都是通过serversice进行调用,sevice解析ip地址就是coredns进行解析。
这里也可以看coredns的service
kubetcl get svnc -n kube-system
kube-dns默认是k8s serverice网段的第10个
每一个节点还会去安装docker,docker是容器引擎,主要就是负责对本机上容器的一个创建拉取镜像。
这些pod都在系统空间下
meterics-server采集数据的。可以通过kebutcl top po -n
,默认命名空间下密钥创建pod。此时看到的资源都指定了是kubetcl命名空间下的
通过命令可以看到每个pod的cpu、内存、的消耗。
cpu的m是豪赫。1000mh的话是等于1h
3、etcd
etcd生生产环境上一定是集群
etcd在redis也看到过,是在键值数据库里,都是键值数据库
关于etc也是部署三个以上的基数节点,而且是单独部署,不要和master部署,最好使用ssd的硬盘,不然会导致集群比较慢,apisever会频繁的和etcd做交互,把收集到的信息次持久化到etcd中。
相关文章:

k8s(二)
五、kubernetes架构(K8S的架构也是master和node模式) 集群里至少需要有一个master节点,即就是主节点。node节点可以多个。 若是多个master节点,worker节点和master的apiserverr进行交互时,就需要通过LB(load banlance)…...

ClickHouse表引擎概述
ClickHouse表引擎概述 表引擎的功能: 数据的存储方式 数据的存储位置 是否可以使用索引 是否可以使用分区 是否支持数据副本 并发数据访问 ClickHouse在建表时必须指定表引擎。 表引擎主要分为四大类:MergeTree系列、Log系列、与其他存储/处理系…...

jenkins系列-04-jenkins参数化构建
使用maven build之前,先checkout 指定分支或标签: 拖拽调整顺序:shell执行在前,构建在后: gitee新建标签tag:...

Flutter框架时间线梳理
Flutter是一个开源的UI工具包,它用于构建高质量的原生移动应用。Flutter的版本历史如下: Flutter 0.1.2: 2018年发布,这是第一个正式发布的版本,包含了基本的框架和工具。 Flutter 1.0.0: 2019年发布&…...

RAG 效果提升的最后一步—— 微调LLM
如果说,rerank能够让RAG的效果实现百尺竿头更进一步,那么LLM微调应该是RAG效果提升的最后一步。 把召回的数据,经过粗排,重排序后,送给模型,由模型最后总结答案。LLM的确已经是RAG的最后一步了。 这里还是会…...

C语言 | Leetcode C语言题解之第230题二叉搜索树中第K小的元素
题目: 题解: /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/int search_num(struct TreeNode* root, int k, int *result, int num) {if(num k 1){retu…...

YOWOv2(yowov2)动作识别+Fastreid身份识别 详细安装与实现
首先yowov2是一款简单且实时的时空动作检测方案,fastreid是行人重识别(身份识别) yowov2介绍链接直达fastreid链接直达为时空动作检测任务设计实时框架仍然是一个挑战。YOWOv2 提出了一种新颖的实时动作检测框架,利用三维骨干和二…...

【微服务】Spring Cloud中如何使用Eureka
摘要 Eureka作为Netflix开源的服务发现框架,在Spring Cloud体系中扮演着至关重要的角色。本文详细介绍了Eureka的基本概念、工作原理以及如何在Spring Cloud中集成和使用Eureka进行服务发现和管理。通过深入分析Eureka的注册与发现机制、区域感知和自我保护等高级特…...

【Neo4j】实战 (数据库技术丛书)学习笔记
Neo4j实战 (数据库技术丛书) 第1章演示了应用Neo4j作为图形数据库对改进性能和扩展性的可能性, 也讨论了对图形建模的数据如何正好适应于Neo4j数据模型,现在到了该动 手实践的时间了。第一章 概述 Neo4j将数据作为顶点和边存储(或者用Neo4j术语,节点和关系存 储)。用户被定…...

【Perl】Perl 语言入门
1. Perl语言介绍 Perl 是一种高级、解释型、动态编程语言,由Larry Wall在1987年发布。Perl 以其强大的文本处理能力而闻名,特别是在处理报告生成、文件转换、系统管理任务等方面。它吸收了C、Shell脚本语言、AWK、sed等语言的特性,并加入了大…...

godis源码分析——database存储核心1
前言 redis的核心是数据的快速存储,下面就来分析一下godis的底层存储是如何实现,先分析单机服务。 此文采用抓大放小原则,先大的流程方向,再抓细节。 流程图 源码分析 现在以客户端连接,并发起set key val命令为例…...

【UE5.1】Chaos物理系统基础——06 子弹破坏石块
前言 在前面我们已经完成了场系统的制作(【UE5.1】Chaos物理系统基础——02 场系统的应用_ue5)以及子弹的制作(【UE5.1 角色练习】16-枪械射击——瞄准),现在我们准备实现的效果是,角色发射子弹来破坏石柱。…...

Django是干什么的?好用么?
Django是一个开源的Python Web框架,用于快速开发高质量的Web应用程序。它提供了许多功能和工具,以简化常见的Web开发任务,如路由、请求处理、数据库管理等。 Django的优点包括: 简单易用:Django提供了清晰的文档和丰…...

C语言实现数据结构B树
B树(B-Tree)是一种自平衡的树数据结构,它维护着数据的有序性,并允许搜索、顺序访问、插入、删除等操作都在对数时间内完成。B树广泛用于数据库和操作系统的文件系统中。 B树的基本特性 根节点:根节点至少有两个子节点…...

[论文阅读]MaIL: Improving Imitation Learning with Mamba
Abstract 这项工作介绍了mamba模仿学习(mail),这是一种新颖的模仿学习(il)架构,为最先进的(sota)变换器策略提供了一种计算高效的替代方案。基于变压器的策略由于能够处理具有固有非…...

在HTML中使用JavaScript
在 HTML 中使用 JavaScript 有以下几种常见的方式: 一、内联脚本 (一)基本语法 内联脚本是将 JavaScript 代码直接嵌入到 HTML 文件的 <script> 标签内部。 <!DOCTYPE html> <html lang"en"> <head> <…...

InjectFix 热更新解决方案
简介 今天来谈一谈,项目种的客户端热更新解决方案。InjectFix是腾讯xlua团队出品的一种用于Unity中C#代码热更新热修复的解决方案。支持Unity全系列,全平台。与xlua的思路类似,InjectFix解决的痛点主要在于Unity中C#代码写的逻辑在发包之后无…...

PHP7.4安装使用rabbitMQ教程(windows)
(1),安装rabbitMQ客户端erlang语言 一,erlang语言安装 下载地址1—— 下载地址2——https://www.erlang.org/patches/otp-27.0 二,rabbitMQ客户端安装 https://www.rabbitmq.com/docs/install-windows (…...

分页以及tab栏切换,动态传类型
<view class"disTitle"><view class"disName">账户明细</view><view class"nav"><u-tabs lineWidth"0" :activeStyle"{color: #FD893F }" :list"navList" change"tabsChange&quo…...

【算法】平衡二叉树
难度:简单 题目 给定一个二叉树,判断它是否是 平衡二叉树 示例: 示例1: 输入:root [3,9,20,null,null,15,7] 输出:true 示例2: 输入:root [1,2,2,3,3,null,null,4,4] 输出&…...

五、 计算机网络(考点篇)
1 网络概述和模型 计算机网络是计算机技术与通信技术相结合的产物,它实现了远程通信、远程信息处理和资源共享。计算机网络的功能:数据通信、资源共享、管理集中化、实现分布式处理、负载均衡。 网络性能指标:速率、带宽(频带宽度或传送线路…...

如何解决数据分析问题:IPython与Pandas结合
如何解决数据分析问题:IPython与Pandas结合 数据分析是现代科学研究、商业决策和技术开发中的一个重要环节。IPython和Pandas是两个强大的工具,它们可以大大简化和加速数据分析的过程。本文将为初学者详细介绍如何结合使用IPython和Pandas来解决数据分析…...

如何在 Microsoft Edge 上使用开发人员工具
Microsoft Edge 提供了一套强大的开发人员工具,可帮助 Web 开发人员检查、调试和优化他们的网站或 Web 应用程序。 无论您是经验丰富的 Web 开发人员还是刚刚起步,了解如何有效地使用这些工具都可以对开发过程产生重大影响。 在本文中,我们…...

《Linux系统编程篇》认识在linux上的文件 ——基础篇
前言 Linux系统编程的文件操作如同掌握了一把魔法钥匙,打开了无尽可能性的大门。在这个世界中,你需要了解文件描述符、文件权限、文件路径等基础知识,就像探险家需要了解地图和指南针一样。而了解这些基础知识,就像学会了魔法咒语…...

Qt:22.鼠标相关事件(实例演示——鼠标进入/离开某控件的事件、鼠标按下事件、鼠标释放事件、鼠标双击事件)
目录 1.实例演示——鼠标进入/离开某控件的事件: 2.鼠标按下事件: 3.鼠标释放事件: 4.鼠标双击事件: 1.实例演示——鼠标进入/离开某控件的事件: 首先创建一个C类文件 Label,填写好要继承的父类 QLabe…...

笔记 4 :linux 0.11 中继续分析 0 号进程创建一号进程的 fork () 函数
(27)本条目开始, 开始分析 copy_process () 函数,其又会调用别的函数,故先分析别的函数。 get_free_page () ; 先 介绍汇编指令 scasb : 以及 指令 sstosd :…...

Vue3 引入Vanta.js使用
能搜到这篇文章 想必一定看过demo效果图了吧 示例 Vanta.js - Animated 3D Backgrounds For Your Website (vantajs.com) 1. 引入 在根目录 index.html中引入依赖 <script src"https://cdnjs.cloudflare.com/ajax/libs/three.js/r134/three.min.js"></sc…...

LeetCode --- 134双周赛
题目 3206. 交替组 I 3207. 与敌人战斗后的最大分数 3208. 交替组 II 3209. 子数组按位与值为 K 的数目 一、交替组 I & II 题目中问环形数组中交替组的长度为3的子数组个数,主要的问题在于它是环形的,我们要考虑首尾相接的情况,如何…...

快速读出linux 内核中全局变量
查问题时发现全局变量能读出来会提高效率,于是考虑从怎么读出内核态的全局变量,脚本如下 f open("/proc/kcore", rb) f.seek(4) # skip magic assert f.read(1) b\x02 # 64 位def read_number(bytes):return int.from_bytes(bytes, little,…...

postman录制设置
一、前言: postman是一个很好接口调试或是测试工具,简单方便,不需要很复杂的流程与技术,并且也具备录制条件。对于接口不了解,没有明确对应的说明,但又想通过接口进行一些测试使用其录制是一个不错的办…...