ошибка kubectl apply -f ngx-dep.yaml: ошибка проверки «ngx-dep.yaml»: ошибка проверки данных:

#kubernetes

#kubernetes

Вопрос:

 apiVersion: apps/v1
kind: Deployment
metadata:
  name: ngx-dep3
  labels:
     app: ngx
     type: webservice
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ngx
    template:
       metadata:
        labels:
          app: ngx
       spec:
        containers:
        - name: nginx
          image: nginx:1.8
  

kubectl apply -f ngx-dep.yaml

ошибка: ошибка проверки «ngx-dep.yaml»: ошибка проверки данных: [Ошибка проверки (Deployment.spec.selector): неизвестное поле «шаблон» в io.k8s.apimachinery.pkg.apis.meta.v1.LabelSelector, ошибка проверки (Deployment.spec): отсутствует обязательное поле «шаблон» в io.k8s.api.apps.v1.DeploymentSpec]; если вы решите игнорировать эти ошибки, отключите проверку с помощью —validate=false

Комментарии:

1. Ответ прост, как указано в ошибке. Удалите 2 пробела перед шаблоном. Из-за этого иерархия изменилась.

Ответ №1:

Измените идентификатор. template должно быть на одном уровне с replicas и т. Д

 spec:
  replicas:
  selector:
  template:
  

Исправьте yaml:

 apiVersion: apps/v1
kind: Deployment
metadata:
  name: ngx-dep3
  labels:
     app: ngx
     type: webservice
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ngx
  template:
     metadata:
      labels:
        app: ngx
     spec:
       containers:
         - name: nginx
           image: nginx:1.8

kubectl apply -f a.yaml
deployment.apps/ngx-dep3 created
  

Для получения дополнительной информации и примера, пожалуйста, обратитесь к официальным документам Deployment v1 apps