|
对于最新稳定版本,请使用Spring Cloud Kubernetes 5.0.0! |
命名空间解析
寻找应用命名空间是通过尽力而为完成的。有些步骤我们按顺序迭代 去找到它。最简单且最常见的方式是以正确的配置指定它,例如:
spring:
application:
name: app
cloud:
kubernetes:
secrets:
name: secret
namespace: default
sources:
# Spring Cloud Kubernetes looks up a Secret named 'a' in namespace 'default'
- name: a
# Spring Cloud Kubernetes looks up a Secret named 'secret' in namespace 'b'
- namespace: b
# Spring Cloud Kubernetes looks up a Secret named 'd' in namespace 'c'
- namespace: c
name: d
记住配置地图也可以做同样的作。如果未指定这样的命名空间,将按以下顺序读取:
-
来自《财产》
Spring.cloud.kubernetes.client.namespace -
从存储在文件中的字符串中提取,记为
spring.cloud.kubernetes.client.serviceAccountNamespacePath属性 -
来自居住在
/var/run/secrets/kubernetes.io/serviceaccount/namespace文件 (Kubernetes 默认命名空间路径) -
从指定的客户端方法调用(例如Fabric8的:
KubernetesClient::getNamespace),如果客户端提供 这样的方法。这又可以通过环境属性进行配置。例如,fabric8客户端可以通过以下方式配置 “KUBERNETES_NAMESPACE”财产;请查阅客户文档以获取详细信息。
如果上述步骤未能找到命名空间,将会触发异常。