Как подключиться к серверу k8s api внутри модуля с помощью java-клиента k8s

Контекст

У меня есть приложение Java, построенное как изображение докеров.

Изображение развернуто в кластере k8s.

В приложении java я хочу подключиться к серверу api и сохранить что-то в секретах.

Как я могу это сделать с помощью java-клиента k8s?

Текущие попытки

В официальном документе k8s говорится:

Изнутри стручка рекомендуемыми способами подключения к API являются: запуск прокси-сервера kubectl в контейнере sidecar в контейнере или в качестве фонового процесса в контейнере. Это проксирует API Kubernetes к локальному интерфейсу модуля, так что другие процессы в любом контейнере модуля могут получить к нему доступ. используйте клиентскую библиотеку Go и создайте клиент, используя функции rest.InClusterConfig () и kubernetes.NewForConfig (). Они обрабатывают локализацию и аутентификацию досадника.

Но я не могу найти аналогичные функции и не похожие примеры в java-клиенте.

0
задан 13 August 2018 в 14:56

1 ответ

С предположением, что у вашего Pod есть serviceAccount automounted - по умолчанию, если вы не указали иначе - метод ClientBuilder.cluster() считывает URL-адрес API из среды, считывает CA кластера из хорошо известного местоположения , и аналогичным образом маркер ServiceAccount из того же места.

Затем, хотя не точно «создать секрет», этот ClientBuilder.cluster() выполняет операцию мутации, которую можно обобщить в "создать или обновить секрет."

1
ответ дан 15 August 2018 в 17:03

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

Похожие вопросы: