k8s client-go快速入门教程及源代码阅读之总纲

💡 原文中文,约5200字,阅读约需13分钟。
📝

内容提要

client-go是kubernetes官方维护的go语言客户端,用于与k8s集群交互。了解GVK和GVR可以定位资源。增删改查是常见操作,代码示例展示了如何使用client-go进行这些操作。操作k8s资源需要配置加载和创建客户端。k8s接口遵循RESTFul规范,使用起来很顺手。

🎯

关键要点

  • client-go是kubernetes官方维护的go语言客户端,用于与k8s集群交互。
  • client-go代码版本为v0.20.2,版本选择需与kubernetes版本语义相同。
  • kubernetes 1.17.0之后的client-go版本为v0.x.y,之前的版本为kubernetes-1.x.y。
  • GVK代表Group Version Kind,GVR代表Group Version Resource,两者用于定位k8s资源。
  • kubectl api-resources命令可以列出当前集群中所有资源的版本信息。
  • GVK中的Kind用于直接使用资源在Go语言中定义的类型名,而GVR则是资源的命名规则。
  • k8s的API是声明式API,修改副本数需传递预期的副本数。
  • 增删改查是k8s操作的核心,操作步骤包括配置加载、创建客户端和使用接口进行操作。
  • 操作k8s资源需要三步:配置加载、创建客户端、使用客户端接口进行资源操作。
  • k8s接口遵循RESTFul规范,使用起来较为顺手。
➡️

继续阅读