過載名稱空間和標籤過濾

預設情況下,將使用名稱空間解析中概述的步驟選擇的名稱空間來監聽配置對映和金鑰的更改。即:如果您不告訴重新載入要監視哪些名稱空間和配置對映/金鑰,它將監視使用上述演算法計算出的名稱空間中的所有配置對映/金鑰。

另一方面,您可以定義更細粒度的方法。例如,您可以指定將監視更改的名稱空間

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標籤的配置對映/金鑰。

表 1. 屬性
名稱 型別 預設值 描述

spring.cloud.kubernetes.reload.enabled

布林值

啟用對屬性源和配置重新載入的監控

spring.cloud.kubernetes.reload.monitoring-config-maps

布林值

true

允許監控配置對映中的更改

spring.cloud.kubernetes.reload.monitoring-secrets

布林值

允許監控金鑰中的更改

spring.cloud.kubernetes.reload.strategy

列舉

refresh

觸發重新載入時使用的策略(refreshrestart_contextshutdown

spring.cloud.kubernetes.reload.mode

列舉

event

指定如何監聽屬性源中的更改(eventpolling

spring.cloud.kubernetes.reload.period

持續時間

15秒

使用polling策略時驗證更改的週期

spring.cloud.kubernetes.reload.namespaces

String[]

我們應該監視更改的名稱空間

spring.cloud.kubernetes.reload.enable-reload-filtering

字串

為重新載入功能啟用標籤過濾

備註

  • 您不應在配置對映或金鑰中使用spring.cloud.kubernetes.reload下的屬性。在執行時更改此類屬性可能導致意外結果。

  • 當您使用refresh級別時,刪除屬性或整個配置對映不會恢復 bean 的原始狀態。

© . This site is unofficial and not affiliated with VMware.