k8s client-go快速入门教程及源代码阅读之配置加载

💡 原文中文,约9800字,阅读约需24分钟。
📝

内容提要

本文介绍了使用client-go操作k8s资源时的配置加载过程,包括认证方式和加载方式。通过kubeconfig文件或serviceaccount token进行配置加载。最后还介绍了手动连接k8s集群的方法。

🎯

关键要点

  • 使用client-go操作k8s资源的基本步骤包括配置加载、创建客户端和使用接口。
  • k8s支持多种认证方式,常见的有X509客户端证书和服务账户令牌。
  • kubectl默认在~/.kube/config位置查找kubeconfig文件,用户也可以手动指定。
  • kubeconfig文件包含集群信息、用户信息和上下文信息。
  • 通过clientcmd.BuildConfigFromFlags函数读取kubeconfig文件并创建配置。
  • k8s支持多个配置文件的合并,后面的配置会覆盖前面的配置。
  • 服务账户令牌不包含连接信息,连接信息存储在环境变量中。
  • 可以通过curl命令手动连接k8s集群,需提供API服务器地址和token。
  • 集群内部可以通过rest.InClusterConfig函数简化配置加载过程。
  • 连接集群需要获取连接信息和认证信息,常用方式有读取kubeconfig和使用serviceaccount token。
➡️

继续阅读