Kubernetes资源文件yaml
参数介绍
yaml 介绍
yaml
是一个类似 XML
、JSON
的标记性语言。它强调以数据为中心,并不是以标识语言为重点- 例如
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
#查看nginx.yaml
cat nginx.yaml
精简版 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: {}
pod
的yaml
文件示例
# 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
#查看命令帮助
kubectl --help
常用资源分类和缩写
常用资源操作命令