Ошибка аутентификации на API-сервере Kubernetes.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Ошибка аутентификации на API-сервере Kubernetes.

Сообщение Anonymous »

Проблема: у меня есть модуль Java, внешний по отношению к кластеру Kubernetes, который я создал локально. Я бы аутентифицировал свой Java-модуль на API-сервере, используя сервисные учетные записи, а не файл kubeconfig.
Что я пробовал: я использовал библиотеку io.kubernetes для аутентификации моего Java-модуля на API-сервере.

Код: Выделить всё

public Auth() throws Exception {
String url = url;
String token =token;
boolean validateSSL = true;
AccessTokenAuthentication authentication = new AccessTokenAuthentication(token);
ApiClient client = ClientBuilder
.standard()
.setBasePath(url)
.setAuthentication(authentication)
.setVerifyingSsl(validateSSL)
.build();
CoreV1Api api = new CoreV1Api(client);

try {
V1PodList podList = api.listPodForAllNamespaces(null, null, null, null, null, null, null, null, null,null);

podList.getItems().forEach(pod -> System.out.println(pod.getMetadata().getName()));
} catch (ApiException e) {
System.err.println("Error: " + e.getResponseBody());
}
}
В этом коде я заменил токен на токен сервисной учетной записи kubectl get secret -service-account-token -o=jsonpath='{.data.token}' | base64 --decode
Я создал привязку роли для этой учетной записи службы, чтобы просматривать модули внутри кластера:

Код: Выделить всё

kubectl create rolebinding service-account-default \
--clusterrole=view \
--serviceaccount=default:service-account \
--namespace=default
Проблема в том, что при выполнении кода я получаю следующую ошибку:

Код: Выделить всё

Error: {"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message":"Unauthorized","reason":"Unauthorized","code":401}


Подробнее здесь: https://stackoverflow.com/questions/783 ... api-server
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»