在Kubernetes/OOpenShift上的Spring Cloud Dataflow Server上启动任务失败



我已经使用bitnami helm chart在OpenShift/Kubernetes上安装了Spring Cloud Dataflow。在OpenShift上,为了部署和运行SCDF服务,您必须在自定义值中禁用安全上下文。

podSecurityContext:
enabled: false
containerSecurityContext:
enabled: false

否则OpenShift报告错误:

provider"restricted loki":禁止:用户或服务帐户无法使用,提供程序受限:.spec.securityContext.fs组:无效值:[]int64{1001}:1001不是允许的组,spec.contators[0]。securityContent.runAsUser:无效值:1001:必须在以下范围内:[1001230001001239999]

禁用安全上下文后,部署工作正常。然而,当我注册一个应用程序(通过docker URL执行任务(并尝试启动它时,我会遇到类似的错误:

执行POST失败:https://172.29.0.1/api/v1/namespaces/my-ns/pods.留言:禁止!配置的服务帐户没有访问权限。服务帐户可能已被吊销。pods"my-task-8jm653e6rp"被禁止:无法根据任何安全上下文约束进行验证:[provider"anyuid":禁止:用户或服务帐户不可用,提供者"mtc minio":禁止:用户或服务帐户不可用,provider"restricted loki":禁止:用户或服务帐户不可用,spec.cContainers[0].securityContext.runAsUser:无效值:1001:必须在以下范围内:[1001230001001239999],…

所以我认为这又是一个安全上下文问题。有没有一种方法可以通过kubernetes部署属性来禁用安全上下文?

我尝试设置部署属性spring.cloud.deployer.kubernetes.pod-security-context.run-as-user=1001230001,但错误保持不变。

还是我走错了路?还有什么问题?

必须设置部署程序/部署平台属性:

deployer.my-task.kubernetes.podSecurityContext={runAsUser: 1001230000}

如下所述:https://docs.spring.io/spring-cloud-dataflow/docs/current/reference/htmlsingle/#_pod_security_context

在UI中设置值会导致另一个似乎不起作用的属性(deployer.my-task.kubernetes.pod-security-context.run-as-user=1001230000(。可能是Spring Cloud数据流中的一个错误?

最新更新