Spring Cloud Azure の構成

この記事の対象: ✔️ バージョン 4.14.0 ✔️ バージョン 5.8.0

この記事では、Spring Cloud Azure のすべての一般的な構成プロパティについて説明します。

各 Azure Service SDK の構成

Azure Service SDK の大部分は、トランスポートの型として HTTP ベースと AMQP ベースの 2 つのカテゴリに分けることができます。 認証プリンシパルや Azure 環境設定など、すべての SDK に共通するプロパティや、HTTP ベースのクライアントに共通するプロパティ (HTTP 要求と応答をログに記録するログ レベルなど) があります。 Spring Cloud Azure 4.0 では、Azure サービスごとに指定できる構成プロパティの 5 つの一般的なカテゴリを追加しました。

次の表は、複数のサービスに共通するプロパティの一覧です。

プロパティ 説明
spring.cloud.azure.azure-service.client 1 つの Azure サービス SDK の下にトランスポート クライアントを構成します。
spring.cloud.azure.azure-service.credential 1 つの Azure service SDK に対して Microsoft Entra ID を使用して認証を構成します。
spring.cloud.azure.azure-service.profile 1 つの Azure サービス SDK に対して Azure クラウド環境を構成します。
spring.cloud.azure.azure-service.proxy 1 つの Azure サービス SDK のプロキシ オプションを構成します。
spring.cloud.azure.azure-service.retry 1 つの Azure サービス SDK に適用できる再試行オプションを構成します。 再試行オプションがサポートしているのは SDK の一部であり、spring.cloud.azure.cosmos.retry はありません。

構成プロパティのプレフィックスは Spring Cloud Azure 4.0 以降の spring.cloud.azure 名前空間に統合されるため、構成プロパティの一貫性が高まり、より直感的になります。 次の表に、サポートされている Azure サービスのプレフィックスの簡単なレビューを示します。

Azure サービス 構成プロパティのプレフィックス プロパティ リンクの構成
Azure App Configuration spring.cloud.azure.appconfiguration App Configuration 構成プロパティ
Azure Cosmos DB spring.cloud.azure.cosmos Azure Cosmos DB 構成プロパティ
Azure Event Hubs spring.cloud.azure.eventhubs Event Hubs 構成プロパティ
Azure Key Vault の証明書 spring.cloud.azure.keyvault.certificate Key Vault 認定資格証構成プロパティ
Azure Key Vault のシークレット spring.cloud.azure.keyvault.secret Key Vault シークレット構成プロパティ
Azure Service Bus spring.cloud.azure.servicebus Service Bus 構成プロパティ
Azure Storage Blob spring.cloud.azure.storage.blob ストレージ BLOB 構成プロパティ
Azure Storage ファイル共有 spring.cloud.azure.storage.fileshare ストレージ ファイル共有構成プロパティ
Azure Storage キュー spring.cloud.azure.storage.queue ストレージ キュー構成プロパティ

Azure Service SDK のグローバル構成

さまざまな Azure サービス間で共有できるプロパティがいくつかあります。たとえば、同じサービス プリンシパルを使用して Azure Cosmos DB と Azure Event Hubs にアクセスできます。 Spring Cloud Azure 4.0 では、名前空間 spring.cloud.azure 内のすべての Azure SDK に適用されるプロパティを定義できます。

次の表にプロパティの一覧を示します。

プロパティ 説明
spring.cloud.azure.client トランスポート クライアントを構成します。既定ですべての Azure SDK に適用されます。
spring.cloud.azure.credential デフォルトでは、すべての Azure SDK の Microsoft Entra ID を使用して認証を構成します。
spring.cloud.azure.profile 既定では、すべての Azure SDK に対して Azure クラウド環境を構成します。
spring.cloud.azure.proxy 既定では、すべての Azure SDK クライアントに適用できるプロキシ オプションを構成します。
spring.cloud.azure.retry 既定では、すべての Azure SDK クライアントに適用できる再試行オプションを構成します。

Note

各 Azure サービスで構成されたプロパティは、グローバル構成をオーバーライドします。

構成の例

Azure Service SDK のグローバル再試行構成

次の例は、任意の HTTP または AMQP プロトコル ベースの Azure SDK クライアントの再試行動作を構成する方法を示しています。

spring.cloud.azure:
  retry:
    mode: exponential
    exponential:
      max-retries: 4
      base-delay: PT0.0801S
      max-delay: PT9S

Key Vault プロパティ ソースの再試行構成

次の構成例は、Azure Key Vault シークレット クライアントの再試行動作を構成する方法を示しています。

spring.cloud.azure:
  keyvault:
    secret:
      property-source-enabled: true
      property-sources:
        - endpoint: <your-Azure-Key-Vault-endpoint>
          retry:
            mode: exponential
            exponential:
              max-retries: 4
              base-delay: PT0.0801S
              max-delay: PT9S