Kubectl создать "недопустимый объект" - PullRequest
3 голосов
/ 05 апреля 2019

Я создаю пространство имен, используя kubectl с yaml.Ниже приведена моя yaml конфигурация

apiVersion: v1
kind: Namespace
metadata:
    name: "slackishapp"
    labels:
        name: "slackishapp"

Но, когда я запускаю kubectl create -f ./slackish-namespace-manifest.yaml, я получаю сообщение об ошибке, подобное следующему

error: SchemaError(io.k8s.api.autoscaling.v2beta2.PodsMetricStatus): invalid object doesn't have additional properties.

Что не так на моем yaml?Я также читаю об этом в документации .Я не вижу никакой разницы с моей конфигурацией.

Ответы [ 3 ]

5 голосов
/ 05 апреля 2019

В вашем yaml нет ничего плохого, но я подозреваю, что у вас неправильная версия kubectl.

kubectl должен находиться в пределах 1 несовершеннолетнего от кластера, который вы используете, как описано здесь .

Вы можете проверить свои версии с помощью

kubectl version
2 голосов
/ 05 апреля 2019

В качестве обходного пути попробуйте создать свое пространство имен в императивном режиме

kubectl create ns slackishapp && kubectl label ns slackishapp name=slackishapp

, а затем сравните существующий yaml с тем, который вы написали, чтобы проверить, чего не хватает

kubectl get ns slackishapp -o yaml --export
0 голосов
/ 29 мая 2019

Загрузите файл kubectl.exe на https://kubernetes.io/docs/tasks/tools/install-kubectl/#before-you-begin, а затем замените его на Program Files\Docker\Docker\resources\bin, если у вас есть рабочий стол докера

Как сказал Андреас Ведербранд, это проблема с версией.

...