В Kubernetes 1.6 при использовании ssl-аутентификации служба Kubelet не запускается, почему?

Когда я выполняю команду «systemctl start kubelet», результат показывает «ошибка: не удалось запустить kubelet: невозможно создать запрос на подпись сертификата: сервер запросил у клиента учетные данные (отправьте сертификатыigningrequests.certificates.k8s.io)»

Файл конфигурации выглядит следующим образом :

--experimental-bootstrap-kubeconfig = / etc / kubernetes / bootstrap.kubeconfig --kubeconfig = / etc / kubernetes / kubelet.kubeconfig --require-kubeconfig --cert-dir = / etc / kubernetes / ssl --cluster-domain = cluster.local. --hairpin-mode promiscuous-bridge --serialize-image-pulls = false "

Если я прокомментирую строку выше, то все в порядке, но я хочу использовать SSL-аутентификацию, что мне делать?


person Jay    schedule 27.07.2017    source источник


Ответы (1)


Возможно, отсутствуют какие-то дополнительные параметры. Это пример команды запуска с использованием запросов на подпись сертификата (https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/06-kubernetes-worker.md):

ExecStart=/usr/bin/kubelet \\
  --api-servers=${API_SERVERS} \\
  --allow-privileged=true \\
  --cluster-dns=10.32.0.10 \\
  --cluster-domain=cluster.local \\
  --container-runtime=docker \\
  --experimental-bootstrap-kubeconfig=/var/lib/kubelet/bootstrap.kubeconfig \\
  --network-plugin=kubenet \\
  --kubeconfig=/var/lib/kubelet/kubeconfig \\
  --serialize-image-pulls=false \\
  --register-node=true \\
  --tls-cert-file=/var/lib/kubelet/kubelet-client.crt \\
  --tls-private-key-file=/var/lib/kubelet/kubelet-client.key \\
  --cert-dir=/var/lib/kubelet \\
  --v=2

Не могли бы вы попробовать добавить такие флаги, как register-node или tls-cert-file и tls-cert-key-file (я считаю, что он будет сгенерирован)

Однако, когда я попытался заставить запрос на подпись сертификата полностью работать, я увидел, что проблема все еще существует, поэтому я бы посоветовал вам создавать сертификаты вручную с помощью кластерного ЦС.

person Javier Salmeron    schedule 27.07.2017
comment
Большое спасибо, не могли бы вы рассказать мне, как сгенерировать kubelet-client.crt и kubelet-client.key? - person Jay; 27.07.2017
comment
Это руководство должно вам помочь: github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/ Здесь вы найдете пример для kube-proxy. Измените пользователя на system: kubelet - person Javier Salmeron; 27.07.2017