k8syaml格式
一、创建pod的yaml
apiVersion: v1 # pod api版本
kind: Pod # 资源类型为pod
metadata: # 元数据信息
name: pod1 # pod名字
namespace: test # pod所在的名称空间
spec:
restartPolicy: Always # pod重启策略
initContainers: # 初始化容器
- name: b1
imagePullPolicy: IfNotPresent
image: busybox
command: # 命令用列表的方式来写也可以
- /bin/sh
- -c
- sleep 10
containers: #
- name: pod1 # 定义pod里面的容器
image: nginx # 使用的镜像
imagePullPolicy: IfNotPresent # 镜像拉取策略
livenessProbe: # 存活性探针
exec: # exec格式
command: ["/bin/sh","-c","ls /"]
readinessProbe: # 就绪性探针
httpGet: # 监听网页文件
port: 80
path: /index.html
command的写法
-
有点复杂
-
直接命令+参数
command: ["echo","hello","kubernetes"]
- 通过shell执行命令,需要-c参数
# -c是shell的参数,执行后续的字符串的命令
command: ["/bin/sh","-c","echo $HOSTNAME && ls /"]
# 或者分行写
command:
- /bin/sh
- -c
- echo $HOSTNAME
- 与args参数配合使用,分离命令和参数
command: ["python"]
args: ["-m","http.server","8080"]
- 写一些关于volume的字段,pv的字段,等等,就是一些类型的字段,然后这些查不到帮助的字段,
二、pv和pvc创建的字段
- 一些选择字段,解释清楚,就是理解明白了
[root@k-master yaml]# cat pv-pvc.yaml
apiVersion: v1
kind: PersistentVolume # pv类型
metadata:
name: pv1 # pv的名字
spec:
persistentVolumeReclaimPolicy: Retain # pv的策略
accessModes: # pv的访问模式
- ReadWriteOnce
nfs: # pv的最底层的使用的存储为nfs
path: /nfsdata # nfs的挂载目录
server: 192.168.50.100 # nfs服务器
capacity: # 申请的大小
storage: 2Gi
---
apiVersion: v1
kind: PersistentVolumeClaim # pvc类型
metadata:
name: pvc1 # pvc名字
spec:
accessModes: # 访问模式
- ReadWriteOnce
resources: # 需要的大小
requests:
storage: 2Gi
[root@k-master yaml]# cat pod2.yaml
apiVersion: v1
kind: Pod
metadata:
name: pod2
spec:
containers:
- name: pod2
image: nginx
imagePullPolicy: IfNotPresent
volumeMounts: # 挂载到容器的那个目录下
- name: pvc
mountPath: /data
volumes: # 创建的卷
- name: pvc
persistentVolumeClaim: # 创建的卷使用的是pvc1
claimName: pvc1
三、deployment字段
[root@k-master yaml]# cat deploy.yaml
apiVersion: apps/v1
kind: Deployment # deploy类型
metadata:
name: d1 # deploy的名字
spec:
replicas: 3 # deploy的副本数
selector: # deploy选择的标签
matchLabels: # 匹配pod的规则
app: nginx
template: # pod的模版
metadata:
name: nginx
labels: # pod标签
app: nginx
spec:
containers:
- name: nginx
image: nginx
imagePullPolicy: IfNotPresent
四、secret和configmap字段
五、explain字段
apiVersion <string> # 直接写值的
metadata <Object> # 这个字段下面还有其他字段
volumes <[]Object> # 这个字段下面还有其他字段,并且是列表格式写出 -
labels <map[string]string> # 写一个键值对或者多个键值对

浙公网安备 33010602011771号