Неизвестное поле setHostnameAsFQDN, несмотря на использование последнего клиента kubectl

У меня есть файл развертывания yaml, который выглядит так:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: hello-kubernetes
spec:
  replicas: 1
  selector:
    matchLabels:
      app: hello-kubernetes
  template:
    metadata:
      labels:
        app: hello-kubernetes
    spec:
      setHostnameAsFQDN: true
      hostname: hello
      subdomain: world
      containers:
      - name: hello-kubernetes
        image: redis 

Однако я получаю эту ошибку:

$ kubectl apply -f dep.yaml  

error: error validating "dep.yaml": error validating data: ValidationError(Deployment.spec.template.spec): unknown field "setHostnameAsFQDN" in io.k8s.api.core.v1.PodSpec; if you choose to ignore these errors, turn validation off with --validate=false

Моя версия kubectl:

$ kubectl version --client
Client Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.0", GitCommit:"af46c47ce925f4c4ad5cc8d1fca46c7b77d13b38", GitTreeState:"clean", BuildDate:"2020-12-08T17:59:43Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"darwin/amd64"}

После указания --validate=falsee, hostname и hostname -f по-прежнему возвращаются разные значения.

Кажется, я что-то не понял. Док говорит, что setHostnameAsFQDN будет доступен из kubernetes v1.20.


person NurlashKO    schedule 11.03.2021    source источник
comment
напишите какая версия вашего сервера k8s.   -  person thisguy123    schedule 12.03.2021


Ответы (1)


Вы показали kubectl версию. Ваша версия kubernetes также должна быть v1.20. Убедитесь, что вы используете версию kubernetes v1.20.

Используйте kubectl version для просмотра версии клиента и сервера. Где версия клиента относится к версии kubectl, а версия сервера относится к версии kubernetes.

Что касается документа с примечаниями к выпуску k8s v1.20: ранее представленный в 1.19 за воротами функций, SetHostnameAsFQDN теперь включен по умолчанию. Более подробная информация об этом поведении доступна в документации. для DNS для служб и модулей

person Sahadat Hossain    schedule 11.03.2021
comment
О, бедный я. Спасибо за пояснение! Сервер K8S оказался на v1.18.9 - person NurlashKO; 12.03.2021