Kubernetes编程——client-go基础—— 深入 API Machinery —— Resource
深入 API Machinery —— Resource
Resource 有分组和版本号,所以也有对应的 GroupVersionResource 概念,简写为 GVR。
每种 GVR 对应一个 HTTP(基础)路径。GVR 用于表示 Kubernetes API 的 REST 端点。比如 apps/v1.deployments 这个 GVR 映射为 /apis/apps/v1/namespaces/namespace/deployments。
客户端库使用这种映射来构造 HTTP 路径,以便访问 GVR。
一、区分命名空间级别或集群级别的资源
有两种 GVR:
- 命名空间级别
- 集群级别
这两种 GVR 的 HTTP 路径是不同的,以 Deployment 为例,它是一个命名空间级别的资源,所以在它的 HTTP 路径中包含了命名空间。其他一些 GVR,比如 rbac,authorization.k8s.io/v1.clusterroles 是集群级别的,可以通过 apis/rbac.authorization.k8s.io/v1/clusterroles 这样的路径来访问它。
资源名称习惯上使用小写字母并使用复数形式,通常与其 kind 的复数形式对应。它们必须遵循 DNS 路径的标签格式(RFC 1025)。
<END>