创建Pod时报错如下:
执行创建nginx的pod命令报错如下:
kubectl apply -f nginx2.yml
error: error validating "nginx2.yml": error validating data: ValidationError(Deployment.spec): missing required field "selector" in io.k8s.api.apps.v1.DeploymentSpec; if you choose to ignore these errors, turn validation off with --validate=false
原nginx2.yml文件:
---
apiVersion: v1
kind: Pod
metadata:
name: naginx-deployment
spec:
replicas: 2
template:
metadata:
labels:
app: nginx
track: stable
spec:
selector:
matchLabels:
app: chen
containers:
- name: nginx
images: nginx
ports:
- containerPort: 80
报错内容:表示当前未添加必选参数selector,在nginx.yml文件中添加selector参数即可:
apiVersion: apps/v1 #Api接口版本
kind: Deployment #定义控制器
metadata:
name: nginx-deployment #deployment名称
spec:
replicas: 3 #在具体参数信息spec下,只指定了副本数量,还需要指定副本标签与 Deployment控制器进行匹配
selector:
matchLabels:
app: nginx-deployment
template:
metadata:
labels:
app: nginx-deployment
spec:
containers:
- name: nginx-deployment
image: nginx:1.7.9
ports:
- containerPort: 80
~
再次执行kubectl apply -f nginx2.yml,可以发现命令执行成功,pod也成功创建了