IBM Cloud Function - Подключение к контейнеру Kubernetes

Я хочу подключиться из IBM Cloud Function к контейнеру Kubernetes, чтобы Cloud Function могла запрашивать Rest API, который находится в кластере Kubernetes в той же группе ресурсов. В кластере Kubernetes отключен общедоступный IP-адрес, отключен только частный IP-адрес.

Как я могу это решить?

1 ответ

Существует множество способов доступа к Kubernetes Api, о большинстве из которых, я думаю, вы можете прочитать здесь.

Я просто упомянул несколько, которые могут быть полезны в вашем случае.

Можно было бы использовать клиент Python, который можно установить с помощьюpip install kubernetes. Для получения дополнительной информации о библиотеке вы должны проверить эту страницу.

Вам нужно скопировать kubeconfig flie из кластера Kubernetes через IBM Cloud Function, как только это будет сделано, ваш основной код может выглядеть следующим образом:

from kubernetes import client, config

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))

Вы можете найти больше примеров для Python на их странице GitHub.

Есть также другие библиотеки Java клиента, Dotnet клиента, клиент JavaScript.

Полный список официальных библиотек доступен в клиентских библиотеках, также в них упоминаются библиотеки, поддерживаемые сообществом.

Другие вопросы по тегам