k8s源码分析------kube-apiserver分析(2)

说明:此文章为腾讯云机器自动从本人csdn博客搬迁过来。是本人授权操作。

申明:无本人授权,不可转载本文。如有转载,本人保留追究其法律责任的权利。

龚浩华,QQ 29185807,月牙寂 道长

第一时间获取文章,可以关注本人公众号 月牙寂道长 yueyajidaozhang

接着上一篇。

我们回到k8s.io\kubernetes\pkg\master\master.go

func (m *Master) init(c *Config) {

从代码里看,里面生成了很多storage,podstorage,eventstorage,nodestorage

然后在master的storage变量中注册了这些storage,其实这些就是restful的路由,但还不是restful的路由格式。

那么这些路由是在哪里注册的呢

我们继续往下看代码

还是init函数中,我们看到了api_v1().InstallREST。这里面就是将storage的路由转换成restful的路由,并注册到handlercontainer中

另外底下还有个extensions的InstallREST

我们现在回过头去看看,有两个重要的变量mux,handlerContainer

这两个变量是在master初始化的时候赋值的(函数为New)

并且将mux与container挂钩

我们回到init。

我们看到在api注册完了之后,就是初始化handler(http的handler),其实handler就是上文提到的mux

master的初始化已经完了,现在我们要回到k8s.io\kubernetes\cmd\kube-apiserver\app\server.go 的Run函数中继续往下。

在Run函数末尾,能够很清晰的看到 master中的handle与httpserver挂钩。至此一个httpserver便启动了

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏月牙寂

k8s源码分析-----kubelet(4)imageManager

第一时间获取文章,可以关注本人公众号 月牙寂道长 yueyajidaozhang

3557
来自专栏数据结构笔记

python爬虫系列之 requests: 让 HTTP 服务人类

比想象中要简单的多吧,只要把要访问的网址当作参数传递给requests.get方法,就可以获得所请求的网页。

522
来自专栏python3

python sys模块

['E:\\python_script\\day5\\test4', 'C:\\Program Files\\Python36\\python36.zip', ...

732
来自专栏微信小开发

WXAPKG 解包后如何提取页面逻辑?

前天小程序分发下载执行包,我也下载了一些,用来学习。 按照我的规划,这部分的内容整体会分为4~5次推送完成,首先是配置的提取和页面逻辑的提取,这部分会比较快,很...

1.5K10
来自专栏技巅

Glusterfs之rpc模块源码分析(中)之Glusterfs的rpc模块实现(2)

1275
来自专栏王纯的专栏

Valgrind 使用入门

Valgrind 是一套类似于 gprof 的动态检测的工具集,由于使用方便,不需修改目标程序源码,输出清晰图文并茂等优势,常被用作后台(特别是linux后台)...

8730
来自专栏颇忒脱的技术博客

Java程序制作Docker Image推荐方案

这里推荐使用Spotify的dockerfile-maven-plugin,理由是这个plugin用起来最简单且容易掌握。

1113
来自专栏linux系统运维

shell介绍,命令历史,命令不全和别名,通配符以及输出重定向

1775
来自专栏Java成神之路

Chrome_01_点击 Google搜索结果在新的页面打开

Chrome浏览器中,通过 Ctrl + 左键 ,是在新标签中打开的,通过 Shift + 左键 ,是在新窗口中打开的。

772
来自专栏程序员互动联盟

【专业技术第七讲】linux下如何编译C语言?

存在问题: 小伙伴们都知道gcc -c -o 但是其中的过程和一些参数就不是太清楚了,往往编译出错不知道咋办? 解决方案: 我们来简单普及一下,让大家不盲从请...

3195

扫码关注云+社区