kubernetes之client-go总览

client-go总览可参考

client-go总览

applyconfigurations包

用于构建服务端 Apply requests(类似于kubectl apply 但是kubectl的是客户端)
详情可参考

discovery包

用于发现服务器支持的API 组、版本和资源的方法及服务端支持的swagger api
详情可参考上篇
详情可参考下篇

dynamic包

用于动态生成informer/lister/client等
详情可参考上篇
详情可参考下篇

informers包

用于生成各种gvk对应的informer(注意这里这是针对原生k8s的对象)
详情可参考

kubernetes包

生成原生k8s的对象的client,用于访问kubernetes API(create、update、patch等等)

listers包

从cache.Indexer中获取原生k8s的对象/列表

metadata包

根据metadata信息(包括gvr)获取informer/lister/client

pkg包

用于插件(plugin包)的执行凭证(和apiserver进行tls认证)

pkg包

apis/clientauthentication用于插件(plugin包)的执行凭证(和apiserver进行tls认证),version用于获取系统版本信息(包含git)

plugin包

主要是对接外部插件(azure/gcp/oidc/openstack),获取认证信息(token等)

rest包

主要是提供对接kubernetes rest http(s)相关的基础类/接口,client、config、exec、request等具体实现和构造的基础

restmapper包

获取实现了RESTMapper(对应一个gv下的resources)接口的结构体

scale包

定义获取scale client的结构体,用来get/update/patch scale子资源。scheme包用来定义包括k8s api/extension在内的所有关于scale的type

third_party包

目前是从go library赋值过来的,只是把私有方法改为公共的

tools包

提供给用户使用的包,用来自定义程序

transport包

定义了传输层实体,用于执行request的http(s)请求,读取http conn的stream到response

util包

提供工具类

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值