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

Когда я выполняю команду "systemctl start kubelet ", результат показывает "ошибка: не удалось запустить kubelet: не удается создать запрос на подпись сертификата: сервер запросил у клиента учетные данные (post certificateigningrequests.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 --serialize-image-pulls=false"

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

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 (я предполагаю, что это будет сгенерировано)

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

Другие вопросы по тегам