Kubernetes API Groups 是 Kubernetes 中资源组织和管理的重要方式,它们根据功能将 API 分为不同的组。了解这些 API Groups 以及它们包含的子资源对于有效管理和使用 Kubernetes 集群至关重要。
API Groups 概览
- 核心组 (Core Group):包含平台运营不可或缺的重要资源,API 端点位于
/api/v1
。 - 命名组 (Named Groups):允许通过引入自定义资源和控制器来扩展 Kubernetes 功能,API 端点位于
/apis/$GROUP_NAME/$VERSION
。3
核心组子资源
- pods:最小的可部署单元,代表集群中正在运行的进程的单个实例。
- nodes:代表集群中的一个工作节点。
- namespaces:提供一种在集群内划分资源的方法。
- services:定义一组逻辑 Pod 以及访问它们的策略。
- configmaps:将配置数据存储为键值对。
- secrets:存储敏感信息,例如密码和 API 密钥。
- persistent volumes (PV):代表集群中的一块网络存储。
- persistent volume claims (PVC):从 PV 请求特定数量的存储资源。
- events:表示 Kubernetes 系统或 Kubernetes 对象生成的事件。
- endpoints:将服务映射到实现它的一组 Pod。3
命名组子资源示例
- apps:包括 Deployments、ReplicaSets、StatefulSets、DaemonSets 和 DeploymentsRollback。
- extensions:包括 Ingresses、NetworkPolicies 和 PodSecurityPolicies。
- batch:包括 CronJobs 和 Jobs。
- storage.k8s.io:包括 StorageClasses 和 VolumeAttachments。
- policy:包括 PodDisruptionBudgets