k8s - как спроецировать токен учетной записи службы в модуль

Мои 5 центов:

String[] temp = yourString.split("&");
String tmp = "";
if (temp.length > 1) {

    for (int i = 0; i < temp.length; i++) {
        tmp += temp[i] + "&";
    }
    yourString = tmp.substring(0, tmp.length() - 1);
}
0
задан KitKarson 31 March 2019 в 01:55
поделиться

1 ответ

Я попробовал это на кубеадме и смог добиться успеха. @ Аман Джуня был прав, вы должны добавить флаги API, как описано в документации.

Вы можете сделать это, создав учетную запись службы и добавив следующие флаги в kubeapi:

sudo vim /etc/kubernetes/manifests/kube-apiserver.yaml

- --service-account-issuer=api
- --service-account-signing-key-file=/etc/kubernetes/pki/apiserver.key
- --service-account-api-audiences=api

После этого примените ваш pod.yaml и его буду работать. Как вы увидите в разделе описаний:

Volumes:
  vault-token:
    Type:                    Projected (a volume that contains injected data from multiple sources)

[удалено как не работающее решение]

, к сожалению, в моем случае мой мини-куб не захотел запускаться с этими флагами, он застрял на: waiting for pods: apiserver скоро я попытаюсь снова отладить.

ОБНОВЛЕНИЕ

Оказывается, вам просто нужно передать аргументы в мини-куб с каталогами изнутри minikubeVM, а не снаружи, как я делал в предыдущем примере (так. каталог), так это будет выглядеть так:

minikube start \
 --extra-config=apiserver.service-account-signing-key-file=/var/lib/minikube/certs/apiserver.key \
  --extra-config=apiserver.service-account-issuer=api \
  --extra-config=apiserver.service-account-api-audiences=api 

После этого создание ServiceAccount и применение pod.yaml работает.

0
ответ дан aurelius 31 March 2019 в 01:55
поделиться
Другие вопросы по тегам:

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