В 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.