(装)K8s 总体架构及目录结构

news/2024/11/14 12:46:03/文章来源:https://www.cnblogs.com/liujiacai/p/18417979

原文:https://www.guoshaohe.com/cloud-computing/kubernetes-source-read/1249

1. kubernetes 总体架构

目前想对kubernetes 1.21 的源码进行一次阅读分析,本篇文章是对k8s的整体架构进行一个大致分析,先要搞清楚每个组件的功能和任务,在根据不同的组件进行深度的源码分析。

Kubernetes的总体架构图如下所示:

 

1.1 kubectl & client-go

下面介绍kubectl组件的具体作用:

1.2 Master节点组件

1.3 Node 节点组件

 

2. Kubernetes 源码的目录结构

目录名称说明
api/ 存放 OpenAPI/Swagger 的 spec 文件,包括 JSON、Protocol 的定义等
build/ 存放构建相关的脚本
cmd/ 存放可执行文件的入口代码,每一个可执行文件都会对应有一个 main 函数
docs/ 存放设计或者用户使用文档
hack/ 存放与构建、测试相关的脚本
pkg/ 存放核心库代码,可被项目内部或外部,直接引用
plugin/ 存放 kubernetes 的插件,例如认证插件、授权插件等
staging/ 存放部分核心库的暂存代码,也就是还没有集成到 pkg 目录的代码
test/ 存放测试工具,以及测试数据
third_party/ 存放第三方工具、代码或其他组件
translations/ 存放 i18n(国际化)语言包的相关文件,可以在不修改内部代码的情况下支持不同语言及地区
vendor/ 存放项目依赖的库代码,一般为第三方库代码

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[C++ Daily] calloc 与 malloc

转载 C++ 面试突破 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台 Kind BorglQI的评论

贼好用!五分钟搭建一个美观且易用的导航页面!

Pintree 是一个开源项目,旨在将浏览器书签导出成导航网站。通过简单的几步操作,就可以将书签转换成一个美观且易用的导航页面。大家好,我是 Java陈序员。 今天,给大家介绍一个贼好用的导航网站搭建工具,只需通过几步操作,就能搭建出个性化导航网站!关注微信公众号:【Ja…

26.删除有序数组中的重复项 Golang实现

题目描述:给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以…

Hadoop(十一)HDFS 读写数据流程

HDFS读写数据流程 一、写数据流程1、客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在 2、NameNode返回是否可以上传 3、客户端请求第一个Block上传到哪几个DataNode服务器上 4、NameNode返回3个DataNode节点,分…

产品经理的日常工作

杜工库 声明 欢迎转载,但请保留文章原始出处:) 博客园:https://www.cnblogs.com/chenxiaomeng/ 如出现转载未声明 将追究法律责任~谢谢合作

Hadoop(十一)HDFS 写数据流程

HDFS写数据流程 一、写数据流程1、客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在 2、NameNode返回是否可以上传 3、客户端请求第一个Block上传到哪几个DataNode服务器上 4、NameNode返回3个DataNode节点,分别…

windows定时执行python程序

先写个 bat 脚本,执行 Python 程序 :: 根据实际情况修改 Python 解释器的路径 set PYTHON=D:\python\python.exe set CODE_DIR=D:\code\projectcd /d "%CODE_DIR%" :: 启动 Python 程序 echo Running main.py... %PYTHON% main.py > nohup.log 2>&1echo A…

Prometheus修改数据存储位置

Prometheus修改数据存储位置 Prometheus的数据存储位置可以通过配置文件中的 --storage.tsdb.path 参数来指定。默认情况下,数据存储在Prometheus安装目录下的 data 文件夹中。要修改数据存储位置,可以在Prometheus启动命令中添加或修改该参数。 步骤 1:修改 Prometheus 启动…

AIoTengine智能物联引擎

新一代数智基础设施,依托AIoT2.0技术,实现感知、认知、决策和执行的一体化融合,打造云边协同的分布式智能物联引擎,驱动行业数智化革新。

WPF打包独立运行的程序

方案一:使用Costura.Fody插件将自己写的程序打包成一个可以独立运行的EXE文件 第1步:安装Costura.Fody 首先用Visual Studio 2017打开你的解决方案,依次找到“工具”---“NuGet包管理” - “管理解决方案的NuGet程序包”,到了这一步会打开NuGet-解决方案页面,在浏览选项下面…

物联网平台推荐:ThingsKit

ThingsKit物联网平台 随着物联网技术的不断进步,企业和开发者对于一个可靠、高效且易于使用的物联网平台的需求日益增长。在这样的背景下,ThingsKit物联网平台以其卓越的性能和丰富的功能,成为了市场上的一股清流。 一、ThingsKit物联网平台概述 ThingsKit是一个功能强大、易…

面试官:单核服务器可以不加锁吗?

今天有位同学问了磊哥一个问题,大概的意思是“单核服务器可以不加锁吗?”,我觉得很有意思,所以在这里就和各位探讨一下:1. 问题答案 先说我的理解,单核服务器仍然需要加锁。因为在单核服务器上也会有线程切换,如果不加锁,那么线程切换后,另一个线程就可以访问其他线程…