常用应用属性
你可以在 application.properties
文件、application.yml
文件中指定各种属性,或者作为命令行开关。本附录提供了一份常见的 Spring Cloud Kubernetes 属性列表,并引用了使用这些属性的底层类。
备注
属性贡献可以来自类路径上的额外 jar 文件,因此你不应将其视为一个详尽的列表。此外,你还可以定义自己的属性。
Name | Default | Description |
---|---|---|
spring.cloud.kubernetes.client.api-version | ||
spring.cloud.kubernetes.client.apiVersion | v1 | Kubernetes API Version |
spring.cloud.kubernetes.client.ca-cert-data | ||
spring.cloud.kubernetes.client.ca-cert-file | ||
spring.cloud.kubernetes.client.caCertData | Kubernetes API CACertData | |
spring.cloud.kubernetes.client.caCertFile | Kubernetes API CACertFile | |
spring.cloud.kubernetes.client.client-cert-data | ||
spring.cloud.kubernetes.client.client-cert-file | ||
spring.cloud.kubernetes.client.client-key-algo | ||
spring.cloud.kubernetes.client.client-key-data | ||
spring.cloud.kubernetes.client.client-key-file | ||
spring.cloud.kubernetes.client.client-key-passphrase | ||
spring.cloud.kubernetes.client.clientCertData | Kubernetes API ClientCertData | |
spring.cloud.kubernetes.client.clientCertFile | Kubernetes API ClientCertFile | |
spring.cloud.kubernetes.client.clientKeyAlgo | RSA | Kubernetes API ClientKeyAlgo |
spring.cloud.kubernetes.client.clientKeyData | Kubernetes API ClientKeyData | |
spring.cloud.kubernetes.client.clientKeyFile | Kubernetes API ClientKeyFile | |
spring.cloud.kubernetes.client.clientKeyPassphrase | changeit | Kubernetes API ClientKeyPassphrase |
spring.cloud.kubernetes.client.connection-timeout | ||
spring.cloud.kubernetes.client.connectionTimeout | 10s | Connection timeout |
spring.cloud.kubernetes.client.http-proxy | ||
spring.cloud.kubernetes.client.https-proxy | ||
spring.cloud.kubernetes.client.logging-interval | ||
spring.cloud.kubernetes.client.loggingInterval | 20s | Logging interval |
spring.cloud.kubernetes.client.master-url | ||
spring.cloud.kubernetes.client.masterUrl | https://kubernetes.default.svc | Kubernetes API Master Node URL |
spring.cloud.kubernetes.client.namespace | true | Kubernetes Namespace |
spring.cloud.kubernetes.client.no-proxy | ||
spring.cloud.kubernetes.client.oauth-token | ||
spring.cloud.kubernetes.client.oauthToken | Kubernetes API Oauth Token | |
spring.cloud.kubernetes.client.password | Kubernetes API Password | |
spring.cloud.kubernetes.client.proxy-password | ||
spring.cloud.kubernetes.client.proxy-username | ||
spring.cloud.kubernetes.client.request-timeout | ||
spring.cloud.kubernetes.client.requestTimeout | 10s | Request timeout |
spring.cloud.kubernetes.client.rolling-timeout | ||
spring.cloud.kubernetes.client.rollingTimeout | 900s | Rolling timeout |
spring.cloud.kubernetes.client.service-account-namespace-path | /var/run/secrets/kubernetes.io/serviceaccount/namespace | |
spring.cloud.kubernetes.client.trust-certs | ||
spring.cloud.kubernetes.client.trustCerts | false | Kubernetes API Trust Certificates |
spring.cloud.kubernetes.client.user-agent | Spring-Cloud-Kubernetes-Application | |
spring.cloud.kubernetes.client.username | Kubernetes API Username | |
spring.cloud.kubernetes.client.watch-reconnect-interval | ||
spring.cloud.kubernetes.client.watch-reconnect-limit | ||
spring.cloud.kubernetes.client.watchReconnectInterval | 1s | Reconnect Interval |
spring.cloud.kubernetes.client.watchReconnectLimit | -1 | Reconnect Interval limit retries |
spring.cloud.kubernetes.config.enable-api | true | |
spring.cloud.kubernetes.config.enabled | true | Enable the ConfigMap property source locator. |
spring.cloud.kubernetes.config.fail-fast | false | |
spring.cloud.kubernetes.config.include-profile-specific-sources | true | |
spring.cloud.kubernetes.config.labels | ||
spring.cloud.kubernetes.config.name | ||
spring.cloud.kubernetes.config.namespace | ||
spring.cloud.kubernetes.config.paths | ||
spring.cloud.kubernetes.config.retry | ||
spring.cloud.kubernetes.config.sources | ||
spring.cloud.kubernetes.config.use-name-as-prefix | false | |
spring.cloud.kubernetes.discovery.all-namespaces | false | if discovery is enabled for all namespaces |
spring.cloud.kubernetes.discovery.cache-loading-timeout-seconds | 60 | timeout for initializing discovery cache, will abort the application if exceeded. |
spring.cloud.kubernetes.discovery.discovery-server-url | ||
spring.cloud.kubernetes.discovery.enabled | true | if kubernetes discovery is enabled |
spring.cloud.kubernetes.discovery.filter | SpEL expression to filter services after they have been retrieved from the Kubernetes API server. | |
spring.cloud.kubernetes.discovery.include-external-name-services | false | should the discovery also search for services that have "type: ExternalName" in their spec. |
spring.cloud.kubernetes.discovery.include-not-ready-addresses | false | include as discovered if endpoint addresses is not marked with 'ready' by kubernetes |
spring.cloud.kubernetes.discovery.known-secure-ports | [443, 8443] | set of known secure ports |
spring.cloud.kubernetes.discovery.metadata.add-annotations | true | include annotations as metadata |
spring.cloud.kubernetes.discovery.metadata.add-labels | true | include labels as metadata |
spring.cloud.kubernetes.discovery.metadata.add-pod-annotations | false | add pod annotations as part of the response. |
spring.cloud.kubernetes.discovery.metadata.add-pod-labels | false | add pod labels as part of the response. |
spring.cloud.kubernetes.discovery.metadata.add-ports | true | include ports as metadata |
spring.cloud.kubernetes.discovery.metadata.annotations-prefix | prefix for the annotations | |
spring.cloud.kubernetes.discovery.metadata.labels-prefix | prefix for the labels | |
spring.cloud.kubernetes.discovery.metadata.ports-prefix | port. | prefix for the ports, by default it is "port." |
spring.cloud.kubernetes.discovery.namespaces | If set and allNamespaces is false, then only the services and endpoints matching these namespaces will be fetched from the Kubernetes API server. | |
spring.cloud.kubernetes.discovery.order | 0 | |
spring.cloud.kubernetes.discovery.primary-port-name | If set then the port with a given name is used as primary when multiple ports are defined for a service. | |
spring.cloud.kubernetes.discovery.service-labels | if set, then only the services matching these labels will be fetched from the Kubernetes API server. | |
spring.cloud.kubernetes.discovery.use-endpoint-slices | false | use EndpointSlice instead of Endpoints |
spring.cloud.kubernetes.discovery.wait-cache-ready | true | wait for the discovery cache (service and endpoints) to be fully loaded, otherwise aborts the application on starting |
spring.cloud.kubernetes.leader.auto-startup | true | Should leader election be started automatically on startup. Default: true |
spring.cloud.kubernetes.leader.config-map-name | leaders | Kubernetes ConfigMap where leaders information will be stored. Default: leaders |
spring.cloud.kubernetes.leader.create-config-map | true | Enable/disable creating ConfigMap if it does not exist. Default: true |
spring.cloud.kubernetes.leader.enabled | true | Should leader election be enabled. Default: true |
spring.cloud.kubernetes.leader.leader-id-prefix | leader.id. | Leader id property prefix for the ConfigMap. Default: leader.id. |
spring.cloud.kubernetes.leader.namespace | Kubernetes namespace where the leaders ConfigMap and candidates are located. | |
spring.cloud.kubernetes.leader.publish-failed-events | false | Enable/disable publishing events in case leadership acquisition fails. Default: false |
spring.cloud.kubernetes.leader.role | Role for which leadership this candidate will compete. | |
spring.cloud.kubernetes.leader.update-period | 60000ms | Leadership status check period. Default: 60s |
spring.cloud.kubernetes.loadbalancer.cluster-domain | cluster.local | cluster domain. |
spring.cloud.kubernetes.loadbalancer.enabled | true | Load balancer enabled,default true. |
spring.cloud.kubernetes.loadbalancer.mode | pod | {@link KubernetesLoadBalancerMode} setting load balancer server list with ip of pod or service name. default value is POD. |
spring.cloud.kubernetes.loadbalancer.port-name | http | service port name. |
spring.cloud.kubernetes.reload.enable-reload-filtering | false | create an informer only for sources that have 'spring.cloud.kubernetes.config.informer.enabled=true' label. This property is only relevant for event based reloading. |
spring.cloud.kubernetes.reload.enabled | false | Enables the Kubernetes configuration reload on change. |
spring.cloud.kubernetes.reload.max-wait-for-restart | 2s | Restart or Shutdown strategies are used, Spring Cloud Kubernetes waits a random amount of time before restarting. This is done in order to avoid having all instances of the same application restart at the same time. This property configures the maximum of amount of wait time from the moment the signal is received that a restart is needed until the moment the restart is actually triggered |
spring.cloud.kubernetes.reload.mode | EVENT | Sets the detection mode for Kubernetes configuration reload. |
spring.cloud.kubernetes.reload.monitoring-config-maps | true | Enables monitoring on secrets to detect changes. |
spring.cloud.kubernetes.reload.monitoring-secrets | false | Monitor secrets or not. |
spring.cloud.kubernetes.reload.namespaces | namespaces where an informer will be set-up. this property is only relevant for event based reloading. | |
spring.cloud.kubernetes.reload.period | 15000ms | Sets the polling period to use when the detection mode is POLLING. |
spring.cloud.kubernetes.reload.strategy | REFRESH | Sets reload strategy for Kubernetes configuration reload on change. |
spring.cloud.kubernetes.secrets.enable-api | false | |
spring.cloud.kubernetes.secrets.enabled | true | Enable the Secrets property source locator. |
spring.cloud.kubernetes.secrets.fail-fast | false | |
spring.cloud.kubernetes.secrets.include-profile-specific-sources | true | |
spring.cloud.kubernetes.secrets.labels | ||
spring.cloud.kubernetes.secrets.name | ||
spring.cloud.kubernetes.secrets.namespace | ||
spring.cloud.kubernetes.secrets.paths | ||
spring.cloud.kubernetes.secrets.retry | ||
spring.cloud.kubernetes.secrets.sources | ||
spring.cloud.kubernetes.secrets.use-name-as-prefix | false |