Kubernetes: проблема с разрешениями учетных записей служб для Spring Cloud Data Flow Server - PullRequest
0 голосов
/ 24 апреля 2018

Я пытался настроить Spring Cloud Dataflow Server для Kubernetes локально, используя minikube. Следуйте инструкциям по установке по ссылке здесь: Справочник по установке SCDF

Я получаю приведенную ниже ошибку для сервера SCDF:


11:32:52.095 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client namespace from Kubernetes service account namespace path...
11:32:52.096 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account namespace at: [/var/run/secrets/kubernetes.io/serviceaccount/namespace].
2018-04-24 11:33:14.348  WARN 1 --- [           main] o.s.cloud.kubernetes.StandardPodUtils    : Failed to get pod with name:[scdf-server-869d56967c-97lsd]. You should look into this if things aren't working as you expect. Are you missing serviceaccount permissions?

io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: GET at: https://kubernetes.default.svc/api/v1/namespaces/default/pods/scdf-server-869d56967c-97lsd. Message: Forbidden!Configured service account doesn't have access. Service account may have been revoked. pods "scdf-server-869d56967c-97lsd" is forbidden: User "system:serviceaccount:default:default" cannot get pods in the namespace "default".

Ниже приведены сведения о версии:

  • Сервер потоков данных Spring Cloud: 1.4.0.RELEASE
  • Локальное развертывание Kubernetes с использованием minikube
  • Kubernetes версия: 1.10

Ответы [ 2 ]

0 голосов
/ 24 апреля 2018

В последней версии minikube по умолчанию включен RBAC.

Для кластеров, поддерживающих RBAC, мы добавили примечание в разделе установки по этому вопросу.

"В последних выпусках kubernetes активирован RBAC на api-сервере. Если вашНа целевой платформе включен RBAC, вы должны попросить администратора кластера создать роли и привязки ролей перед развертыванием сервера потока данных. Они связывают учетную запись службы потока данных с ролями, с которыми он должен работать. "

Однако для minikube вы можете выполнить следующую команду и повторить попытку установки.

kubectl создать кластерное связывание add-on-cluster-admin --clusterrole = cluster-admin --serviceaccount = kube-система: по умолчанию

В качестве альтернативы, если вы используете рулевую диаграмму, вы можете отключить RBAC и установить диаграмму со следующим на мини-кубе.

helm init

Хелм Репо добавить инкубатор https://kubernetes -charts-incubator.storage.googleapis.com

Хелм Репо обновление

Хелм установить - имя мой-release --set server.service.type = NodePort --set rbac.create = ложный инкубатор / поток данных весеннего облака

0 голосов
/ 24 апреля 2018

Из руководства по установке, шаг 7: https://docs.spring.io/spring-cloud-dataflow-server-kubernetes/docs/1.4.0.RELEASE/reference/htmlsingle/#_deploying_using_kubectl

В последних выпусках kubernetes активирован RBAC на api-сервере.Если на вашей целевой платформе включен RBAC, вы должны попросить администратора кластера создать роли и привязки к ним перед развертыванием сервера потока данных.Они связывают учетную запись службы потока данных с ролями, с которыми она должна работать.

$ kubectl create -f src/kubernetes/server/server-roles.yaml
$ kubectl create -f src/kubernetes/server/server-rolebinding.yaml

Вы выполняли эти шаги?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...