Я уже нашел способ, используя gcloud
CLI.
gcloud auth activate-service-account --key-file=serviceaccount.json
gcloud container clusters get-credentials $clusterName \
--zone=$zone --project=$project
kubectl config view --minify --flatten
Однако, чтобы устранить зависимость от gcloud cli, есть ли какой-либо программный способ добиться такого же результата, как указано выше? Предпочтительно использование API, представленного в клиентской библиотеке Python от Google.
Мой ожидаемый результат — переносимый файл конфигурации, который можно передать любой команде kubectl --kubeconfig=...
.
обновление: я обнаружил, что приведенные выше команды приводят к созданию файла конфигурации kube, который по-прежнему зависит от gcloud cli в качестве помощника аутентификации, вероятно, для автоматической обработки истечения срока действия токена. Таким образом, любые обходные пути приветствуются.