首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >k8s源码分析----apiserver之APIGroupVersion

k8s源码分析----apiserver之APIGroupVersion

作者头像
月牙寂道长
修改2018-04-03 11:38:44
1.7K0
修改2018-04-03 11:38:44
举报
文章被收录于专栏:月牙寂月牙寂月牙寂

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

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

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

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

前面3篇文章,主要是根据程序处理流程进行跳转分析。经过这些流程的跳转分析,拨开乌云终见日。

我们剥掉那些不重要的部分,直接进入主要框架。

APIGroupVersion

在master中,api v1的初始化

生成了一个default的apigroupversion

下面进入到整个框架中最重要的数据结构

一、主要数据结构

1、mapper,其最重要的东西是里面的RESTMapping函数(在k8s.io\kubernetes\pkg\api\meta)

2、Codec,主要是一个编码,解码的接口 (在k8s.io\kubernetes\pkg\runtime)

3、typer (在k8s.io\kubernetes\pkg\runtime)

4、Creater (在k8s.io\kubernetes\pkg\runtime)

5、Convertor,不同版本之间的转换 (在k8s.io\kubernetes\pkg\runtime)

6、Linker (在k8s.io\kubernetes\pkg\runtime)

7、剩余的暂时不做分析

二、主要的工作流程

k8s.io\kubernetes\pkg\apiserver\apiserver.go

主要流程

下面根据主要流程,分解步骤

1、初始化installer

2、new webservice

3、开始注册

插一张mapping的结构体

插一张restscope的interface

我们继续

继续跳过其中一些代码

到此所有过程。

我们再追踪进去get的处理过程

从这个流程再加上之前的3篇文章,那么主要的处理流程,已经比较清晰了。那么剩下的就是mapper,codec,typer,Creater,convertor,linker等这些接口的实现的分析了。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016年03月25日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • APIGroupVersion
    • 一、主要数据结构
      • 二、主要的工作流程
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档