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

原文: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/ 存放项目依赖的库代码,一般为第三方库代码
posted @ 2024-09-18 09:59  liujiacai  阅读(54)  评论(0编辑  收藏  举报