Я хотел бы иметь возможность доступа и управления кластером GKE (kubernetes) из функции Google Cloud, написанной на python.
Мне удалось получить доступ и получить данные из созданного кластера (по крайней мере, конечную точку, имя пользователя и пароль), однако я не знаю, как использовать их с пакетом API kubernetes.
Вот мой импорт:
import google.cloud.container_v1 as container
from google.auth import compute_engine
from google.cloud.container_v1 import ClusterManagerClient
from kubernetes import client, config
Вот код для данных кластера:
project_id = 'my-gcp-project'
zone = 'my-zone'
cluster_id = 'my-existing-cluster'
credentials = compute_engine.Credentials()
gclient: ClusterManagerClient = container.ClusterManagerClient(credentials=credentials)
cluster = gclient.get_cluster(project_id,zone,cluster_id)
cluster_endpoint = cluster.endpoint
print("*** CLUSTER ENDPOINT ***")
print(cluster_endpoint)
cluster_master_auth = cluster.master_auth
print("*** CLUSTER MASTER USERNAME PWD ***")
cluster_username = cluster_master_auth.username
cluster_password = cluster_master_auth.password
print("USERNAME : %s - PASSWORD : %s" % (cluster_username, cluster_password))
Я бы хотел сделать что-то подобное после этого:
config.load_kube_config()
v1 = client.CoreV1Api()
print("Listing pods with their IPs:")
ret = v1.list_pod_for_all_namespaces(watch=False)
for i in ret.items:
print("%s\t%s\t%s" % (i.status.pod_ip, i.metadata.namespace, i.metadata.name))
Однако я не могу понять, как настроить конечную точку и информацию об аутентификации.
Может кто-нибудь помочь мне, пожалуйста?