過載名稱空間和標籤過濾
預設情況下,將使用名稱空間解析中概述的步驟選擇的名稱空間來監聽配置對映和金鑰的更改。即:如果您不告訴重新載入要監視哪些名稱空間和配置對映/金鑰,它將監視使用上述演算法計算出的名稱空間中的所有配置對映/金鑰。
另一方面,您可以定義更細粒度的方法。例如,您可以指定將監視更改的名稱空間
spring:
application:
name: event-reload
cloud:
kubernetes:
reload:
enabled: true
strategy: shutdown
mode: event
namespaces:
- my-namespace
這樣的配置將使應用程式僅監視my-namespace名稱空間中的更改。請注意,這將監視所有配置對映/金鑰(取決於您啟用哪個)。如果您想要更細粒度的方法,可以啟用“標籤過濾”。首先我們需要透過:enable-reload-filtering: true來啟用這種支援
spring:
application:
name: event-reload
cloud:
kubernetes:
reload:
enabled: true
strategy: shutdown
mode: event
namespaces:
- my-namespaces
monitoring-config-maps: true
enable-reload-filtering: true
這將監視僅具有spring.cloud.kubernetes.config.informer.enabled: true標籤的配置對映/金鑰。
| 名稱 | 型別 | 預設值 | 描述 |
|---|---|---|---|
|
|
|
啟用對屬性源和配置重新載入的監控 |
|
|
|
允許監控配置對映中的更改 |
|
|
|
允許監控金鑰中的更改 |
|
|
|
觸發重新載入時使用的策略( |
|
|
|
指定如何監聽屬性源中的更改( |
|
|
|
使用 |
|
|
我們應該監視更改的名稱空間 |
|
|
|
為重新載入功能啟用標籤過濾 |
備註
-
您不應在配置對映或金鑰中使用
spring.cloud.kubernetes.reload下的屬性。在執行時更改此類屬性可能導致意外結果。 -
當您使用
refresh級別時,刪除屬性或整個配置對映不會恢復 bean 的原始狀態。