Utilizzo di Kubernetes 1.2.4, perché la mia sotto definizione Deployment (redis.yaml) causa il seguente errore?Kubernetes - Perché il campo di selezione non convalida la distribuzione?
$ kubectl apply -f redis.yaml
error validating "redis.yaml": error validating data: found invalid field name for v1beta1.LabelSelector; if you choose to ignore these errors, turn validation off with --validate=false
redis.yaml:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: redis
spec:
replicas: 3
selector:
name: redis
template:
metadata:
labels:
name: redis
spec:
containers:
- name: redis
image: kubernetes/redis:v1
ports:
- containerPort: 6379
resources:
limits:
cpu: "0.1"
volumeMounts:
- mountPath: /redis-master-data
name: data
volumes:
- name: data
emptyDir: {}
Potresti per favore approfondire lo scopo di '.spec.selector'? Sono un po 'confuso dalla documentazione, specialmente dal paragrafo "Se specificato,' .spec.selector' deve corrispondere a '.spec.template.metadata.labels' [...]. Se' .spec.selector' non è specificato , '.spec.selector.matchLabels' sarà impostato di default a' .spec.template.metadata.labels' ". Qual è lo scopo di avere '.spec.selector' se deve corrispondere a' .spec.selector.matchLabels', ma è anche predefinito se lasciato non specificato? –
Intendevo dire ".spec.template.metadata.labels" invece di ".spec.selector.matchLabels" nella mia ultima frase, mi dispiace. –