首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

k8s中Apimachinery、Api、Client-go库之间的关系

概述 使用 k8s 相关 sdk 做二次开发时,经常用到 apimachinery、api、client-go 这三个库,一直对他们的职责不是很清楚,网上也没有找到合适的文章做分析,笔者通过研究三个库的源码...,总结他们之间的依赖关系如下: apimachinery 是最基础的库,包括核心的数据结构,比如 Scheme、Group、Version、Kind、Resource,以及排列组合出来的 常用的GVK、...GV、GK、GVR等等,再就是编码、解码等操作 api 库,这个库依赖 apimachinery,提供了k8s的内置资源,以及注册到 Scheme 的接口,这些资源比如:Pod、Service、Deployment...底层通过 http 请求访问k8s 的 api-server,从etcd获取资源信息 高清地址 apimachinery apimachinery提供k8s最核心的数据结构。...:apimachinery -> api -> client-go

1.7K42

k8s中Apimachinery、Api、Client-go库之间的关系

概述 使用 k8s 相关 sdk 做二次开发时,经常用到 apimachinery、api、client-go 这三个库,一直对他们的职责不是很清楚,网上也没有找到合适的文章做分析,笔者通过研究三个库的源码...,总结他们之间的依赖关系如下: apimachinery 是最基础的库,包括核心的数据结构,比如 Scheme、Group、Version、Kind、Resource,以及排列组合出来的 常用的GVK、...GV、GK、GVR等等,再就是编码、解码等操作 api 库,这个库依赖 apimachinery,提供了k8s的内置资源,以及注册到 Scheme 的接口,这些资源比如:Pod、Service、Deployment...底层通过 http 请求访问k8s 的 api-server,从etcd获取资源信息 高清地址 apimachinery apimachinery提供k8s最核心的数据结构。...:apimachinery -> api -> client-go

3K32
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    深入 kubernetes API 的源码实现

    很多同学应该像我一样,第一次打开 Github 上面 kubernetes 项目源码的时候就被各种仓库搞晕了,kuberentes 组织下有很多个仓库,包括 kubernetes、client-go、api、apimachinery...kubernetes 项目的核心仓库,它包含 kubernetes 控制平面核心组件的源码;client-go 从名字也不难看出是操作 kubernetes API 的 go 语言客户端;api 与 apimachinery...apimachinery 仓库中还有 api、apis 两个包,里面定义了各种复杂的接口与实现,清楚这些复杂接口对于扩展 kubernetes API 大有裨益。...所以,这篇文章就重点关注 api 与 apimachinery 这两个仓库。...实际上,最开始这个仓库只是 kubernetes 核心仓库的一部分,后来 kubernetes API 定义规范被越来越多的其他仓库使用,例如 k8s.io/client-go、k8s.io/apimachinery

    1.2K40
    领券