Kubernetes资源文件yaml参数介绍

yaml 介绍

  • yaml 是一个类似 XMLJSON 的标记性语言。它强调以数据为中心,并不是以标识语言为重点
  • 例如 SpringBoot 的配置文件 application.yml 也是一个 yaml 格式的文件

语法格式

  • 通过缩进表示层级关系
  • 不能使用tab进行缩进,只能使用空格
  • 一般开头缩进两个空格
  • 大小写敏感
  • 字符后缩进一个空格,如冒号、逗号
  • 如果需要将多段yaml配置放在一个文件中,中间要使用---分隔
  • 使用#表示注释

yaml文件的编写

  • 快速编写yaml文件,通过命令导出新的yaml文件
#创建nginx资源文件并且不启动资源
kubectl create deployment demo-nginx --image=nginx:1.23.0 -o yaml --dry-run=client > nginx.yaml

k8s 资源文件参数介绍-LMLPHP

#查看nginx.yaml
cat nginx.yaml

k8s 资源文件参数介绍-LMLPHP

精简版 yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  creationTimestamp: null
  labels:
    app: demo-nginx
  name: demo-nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: demo-nginx
  strategy: {}
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: demo-nginx
    spec:
      containers:
      - image: nginx:1.23.0
        name: nginx
        resources: {}
status: {}

podyaml文件示例

# pod的最基础的yaml文件最少需要以下的几个参数
apiVersion: v1 # API版本号,注意:具有多个,不同的对象可能会使用不同API
kind: Pod  # 对象类型,pod
metadata:  # 元数据
  name: string # POD名称
  namespace: string # 所属的命名空间
spec: # 资源内容的规范
  containers: # 容器列表
    - name: string # 容器名称
      image: string # 容器镜像

常用字段含义

必须存在的属性
spec 主要对象
spec.containers
spec.volumes

Kubernetes常见资源类型和命令

查看资源类型和命令

#查看资源
kubectl api-resources

k8s 资源文件参数介绍-LMLPHP

#查看命令帮助
kubectl --help

k8s 资源文件参数介绍-LMLPHP

常用资源分类和缩写

常用资源操作命令

05-08 01:56