Kubernetes 资源清单描述

92 阅读1分钟

Kubernetes 资源清单(Resource Manifest)是用 YAML 或 JSON 格式编写的文件,用于声明 Kubernetes 集群中的资源。资源清单的主要元素包括:

1. apiVersion

定义资源所使用的 Kubernetes API 版本。
示例:apiVersion: v1

2. kind

指定资源的类型。常见的资源类型有 PodServiceDeployment 等。
示例:kind: Pod

3. metadata

包含资源的元数据,如名称、命名空间、标签等。
示例:

yaml
复制代码
metadata:
  name: my-pod
  labels:
    app: my-app

4. spec

资源的具体定义,描述期望的状态。不同资源有不同的 spec 字段。
示例(Pod):

yaml
复制代码
spec:
  containers:
    - name: nginx
      image: nginx:1.19.10

5. status

用于显示资源的当前状态,通常由 Kubernetes 自动生成,不需要在资源清单中显式定义。

常见资源类型及描述

  1. Pod: 单个或多个容器的集合,是 Kubernetes 中最小的可调度单元。
  2. Service: 提供一组 Pod 的统一访问入口,支持负载均衡。
  3. Deployment: 用于管理 Pod 的创建和升级,支持滚动更新。
  4. ConfigMap: 存储非机密配置信息,如环境变量。
  5. Secret: 用于存储机密数据,如密码或凭证,数据以 Base64 编码。

通过资源清单,可以声明 Kubernetes 集群的期望状态,集群控制平面会根据这些描述进行资源管理和调度。