k8s配置文件常用属性说明
以下是K3s Yaml配置文件中常见属性的说明:
apiVersion:Kubernetes API 版本kind:资源类型,通常为Deployment、Pod、Service等metadata:元数据字段,包括name(资源名称)、namespace(命名空间)、labels(标签)等spec:规范字段,用于定义资源的规范containers:在Pod中定义容器的列表name:容器名称image:容器使用的镜像ports:容器所使用的端口配置
replicas:在Deployment中定义的副本数量selector:在Service中定义用于选择Pod的标签type:在Service中定义服务类型,如ClusterIP、NodePort、LoadBalancer等nodeSelector:在Pod中定义用于选择节点的标签affinity:用于定义调度规则以控制Pod的调度nodeAffinity:节点亲和性规则requiredDuringSchedulingIgnoredDuringExecution:必需的调度规则nodeSelectorTerms:节点选择器规则matchExpressions:匹配表达式key:节点标签的键operator:匹配操作符,如In、NotIn、Exists等values:节点标签的值列表
tolerations:容忍规则,用于定义在特定节点上运行Pod时容忍的 TaintsserviceAccountName:指定要在Pod中使用的 Service Accountvolumes:定义Pod使用的卷name:卷名称emptyDir:空目录卷hostPath:主机路径卷persistentVolumeClaim:持久卷声明
除了上述常见属性外,还有其他可配置的字段和属性,具体取决于不同的资源类型和您的应用需求。您可以参考 Kubernetes 官方文档获得更详细的配置信息(https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/)
以下是一个pod yaml例子:
1 | apiVersion: apps/v1 |