Kubernetes 春云库伯内特斯:可以';无法读取名称为的configMap
是否有人知道如何解决此问题:Kubernetes 春云库伯内特斯:可以';无法读取名称为的configMap,kubernetes,spring-cloud,spring-cloud-kubernetes,Kubernetes,Spring Cloud,Spring Cloud Kubernetes,是否有人知道如何解决此问题:WARN | main | o.s.c.k.c.ConfigMapPropertySource |无法读取命名空间:[dev]中名为:[commons]的configMap。忽略 我的bootstrap-prod.yml中有此配置: spring: cloud: kubernetes: config: name: ${spring.application.name} sources: - n
WARN | main | o.s.c.k.c.ConfigMapPropertySource |无法读取命名空间:[dev]中名为:[commons]的configMap。忽略
我的bootstrap-prod.yml中有此配置:
spring:
cloud:
kubernetes:
config:
name: ${spring.application.name}
sources:
- name: commons
namespace: dev
secrets:
name: commons-secret
reload:
enabled: true
但由于该错误,应用程序无法启动。
与此处描述的问题相同:
我将命名空间的ServiceAccount绑定到集群视图
角色
奇怪的是,在同一个名称空间中有两个应用程序,第一个(SpringCludGateway应用程序)可以读取其配置图,而第二个(简单的SpringBootWeb应用程序)不能。
我错过了什么?
该应用程序部署在GKE上
#:::::::::::::::::DEPLOYMENT::::::::::::::::::
apiVersion: apps/v1
kind: Deployment
metadata:
name: appservice
namespace: dev
spec:
...
以及ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
name: commons
namespace: dev
data:
application.yml: |-
server:
tomcat:
basedir: ..${file.separator}tomcat-${spring.application.name}
spring:
profiles:
active: prod
cache:
...
谢谢你的帮助我发现了问题,我想是的。问题来自一个格式错误的yaml。
如果您查看一下ConfigMap配置,我们有:
...
data:
application.yml: |-
server:
tomcat:
basedir: ..${file.separator}tomcat-${spring.application.name} # issue is here, bad indentation
spring:
profiles:
active: prod
...
将其更改为:
data:
application.yml: |-
server:
tomcat:
basedir: ..${file.separator}tomcat-${spring.application.name}
spring:
profiles:
active: prod
一切似乎都很好。有点奇怪,错误消息没有明确指出这一点 您可以共享部署和配置映射中的YAML吗?@AmitKumarGupta我编辑了post@AmitKumarGupta我想,分享我的配置有助于我指出问题所在。这很容易!很高兴它起作用了。你可以考虑写你的答案并接受它,如果你认为你发现了一个错误,可能会影响其他人,并将有助于他们看到修复。我张贴答案。因为这个问题我损失了一天:(!