Назад | Перейти на главную страницу

Безопасный доступ к кубернетам (размещенным через контейнерный движок Google) с помощью kubectl с удаленного сервера

Привет, у меня возникают проблемы при попытке получить доступ к моему кластеру Kubernetes, размещенному с использованием механизма контейнеров Google. Я хочу использовать kubectl с внешнего / удаленного сервера (Circle CI). У меня установлены gcloud и kubectl, и я могу небезопасно получить доступ к своему кластеру, используя

kubectl get pods --server="https://ENDPOINT_IP" --username="USERNAME" --password="PASSWORD" --insecure-skip-tls-verify=true

Я хочу иметь к нему безопасный доступ, используя сертификат, указанный на странице «Показать учетные данные» в обзоре кластера контейнеров gcloud. Итак, я создал ca.crt с этой строкой сертификата и передал его с помощью флага --certificate-Authority, но получаю сообщение об ошибке:

error: couldn't read version from server: Get https://ENDPOINT_IP: x509: certificate signed by unknown authority

как я могу подписать свой сертификат?

Большое спасибо, Энди

Если у вас есть gcloud установлен, вы сможете запустить gcloud container clusters get-credentials NAME который будет получать учетные данные клиента, которые позволяют kubectl для безопасного подключения к размещенному на сервере apiserver. Он будет включать ca.crt кластера (для аутентификации конечной точки сервера) и сертификат клиента (используемый для аутентификации вместо пароля). Учетные данные будут храниться в файле "kubeconfig" (по умолчанию расположен в ~/.kube/config это также место, которое kubectl по умолчанию попытается загрузить учетные данные из.