Как изменить файл ключа конфигурации Kubernetes из диспетчера-контроллера и apiserver, чтобы он указывал на один и тот же ключ RSA x509?

У меня вылетает паника румпеля, как описано в FAQ по рулю (https://docs.helm.sh/using_helm/) под вопросом
Q: Tiller вылетает из-за паники:
panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation...

Ответ на часто задаваемые вопросы предлагает

Чтобы исправить это, вам нужно будет изменить конфигурацию Kubernetes. Убедитесь, что --service-account-private-key-file из диспетчера-контроллера и --service-account-key-file из apiserver указывают на один и тот же ключ RSA x509.

Я попытался выполнить поиск в Интернете и прочитать документы по адресу (https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/), в котором говорится

Вы должны передать файл закрытого ключа учетной записи службы контроллеру токенов в диспетчере контроллера с помощью параметра --service-account-private-key-file. Закрытый ключ будет использоваться для подписи сгенерированных токенов учетной записи службы. Точно так же вы должны передать соответствующий открытый ключ в kube-apiserver, используя параметр --service-account-key-file. Открытый ключ будет использоваться для проверки токенов во время аутентификации.

и документы по адресу https://kubernetes.io/docs/reference/access-authn-authz/authentication/
Документы хорошо объясняют концепции, но не конкретизируют фактическое изменение конфигурации.

Как мне изменить конфигурацию Kubernetes, как подсказывает ответ на часто задаваемые вопросы?

Убедитесь, что --service-account-private-key-file из диспетчера-контроллера и --service-account-key-file из apiserver указывают на один и тот же ключ RSA x509.

Подробности:
с помощью кластера k8s на основе копсов и сплетен


person cryanbhu    schedule 06.07.2018    source источник


Ответы (1)


Путем проб и ошибок я обнаружил, что helm ls, похоже, содержит ошибку в моей настройке, или, возможно, helm ls, как ожидается, покажет ошибку, если нет выпусков, которые нужно показать.

Сразу после helm init, helm ls покажет ошибку panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation...,
но если вы просто пошли дальше и использовали helm,
например helm install stable/<package>, диаграмма успешно развернута.

И после развертывания диаграмм вызов helm ls больше не возвращает ошибку и правильно показывает развернутые диаграммы (выпуски).
Я подтвердил это с помощью kubectl get pods, kubectl get services и kubectl get deployments, все выпущенные объекты работают.

person cryanbhu    schedule 06.07.2018