GO
宋小贝
一辈子很短,
展开
-
kubernetes源码分析之kube-apiserver
本节所有的代码基于最新的1.15.2启动分析同Kubernetes所有的组件启动代码一致,apiserver启动使用的是corba的命令行方式 RunE: func(cmd *cobra.Command, args []string) error { verflag.PrintAndExitIfRequested() utilflag.PrintFlags(cmd.Flags(...转载 2019-09-07 11:43:35 · 358 阅读 · 0 评论 -
kuber-apiserver源码分析之RBAC
Apiserver中与权限相关的主要有三种机制,即潮涌的认证、鉴权、和准入控制。对apiserver来说,主要提供的就是rest风格的接口,所以各种权限最终还是集中到对接口权限判断上。以最核心的kubeAPIConfig举例,在CreateServerChain方法中,调用了CreateKubeAPIServerConfig的方法,该方法主要的作用是创建kubeAPIServer的配置,进入该方法...转载 2019-09-08 00:58:23 · 257 阅读 · 0 评论 -
kube-apiserver源码解析之数据库操作
ApiServer与数据库的交互主要指的是与etcd的交互,Kubernetes所有组件不直接与etcd交互,都是通过请求apiserver,apiserver与etcd进行交互完成数据的最终落盘。在之前路由的实现已经说过,apiserver最终实现的handler对应的后端数据库是以Store的结构 保存的,这里以api开头的路由为例,在NewLegacyRESTStorage方法中,通过New...转载 2019-09-08 09:12:56 · 371 阅读 · 0 评论