次の方法で共有


Spring Cloud Config Server を Azure Spring Apps から Azure Container Apps に移行する

Note

BasicStandardEnterprise プランは、2025 年 3 月中旬以降非推奨になり、廃止期間は 3 年間です。 Azure Container Apps に移行することをお勧めします。 詳細については、「Azure Spring Apps の廃止のお知らせ」を参照してください。

Standard 従量課金と専用プランは、2024 年 9 月 30 日以降に非推奨になり、6 か月後に完全にシャットダウンされます。 Azure Container Apps に移行することをお勧めします。 詳細については、「Azure Spring Apps の Standard 従量課金および専用プランを Azure Container Apps に移行する」を参照してください。

この記事の適用対象:✅ Basic/Standard ✅ Enterprise

この記事では、Spring Cloud Config Server を Azure Container Apps の Spring 用 Config Server に移行する方法について説明します。 Azure Container Apps は、Azure Spring Apps の Spring Cloud Config Server と同様の機能を持つ Spring 用 Config Server を管理します。

前提条件

  • サーバーの構成が有効になっている Azure Spring Apps インスタンス。
  • Config Server 用の Azure Container Apps 環境と Azure Container Apps インスタンス。

Config Server をプロビジョニングする

次の手順では、Azure Container Apps で Spring 用 Config Server をプロビジョニングする方法を示します。

  1. Azure portal で、Azure Container Apps 環境に移動します。

  2. メニューで [サービス]>[サービス] を選択します。

  3. [構成] ドロップダウン リストを開き、[Java コンポーネント] を選択します。

  4. [Java コンポーネントの構成] パネルで、次の値を入力します。

    プロパティ
    Java コンポーネントの種類 [Config Server for Spring] を選択します。
    Java コンポーネントの名前 configserver」と入力します。
  5. [Git リポジトリ] セクションで [追加] を選択し、次の表に示すように、Application Configuration Service からの値をここに移行します。 Spring 用 Config Server の既定のリポジトリとして、1 つのリポジトリを選択します。

    プロパティ
    Type [既定値] を選択します。
    URI リポジトリの [URI] の値を入力します。
    ブランチ名 リポジトリの [ラベル] の値を入力します。
    検索パス リポジトリの [検索パス] の値を入力します。
    認証 リポジトリの認証の種類を選択し、対応する情報を入力します。

    残りのフィールドは既定値のままにし、[追加] を選択します。

  6. 複数のリポジトリがある場合は、[追加] を選択して他のリポジトリを移行します。 [種類][その他] を選択し、前の手順と次の表に示すように他のプロパティを移行します。

    プロパティ
    Type [既定値] を選択します。
    パターン リポジトリの [パターン] の値を {application} または {application}/{profile} の形式で入力します。
  7. [バインディング] セクションで、ドロップダウンを開き、Spring 用 Config Server にバインドするアプリを選択します。

  8. [次へ] を選択します。

  9. Config Server を設定するには、[レビュー] タブで [構成] を選択し、構成セクションの指示に従います。

正常に作成されると、Spring 用 Config Server の [プロビジョニングの状態][成功] と表示されます。

リソース割り当て

Azure Container Apps 内のマネージド Config Server に対するコンテナー リソースの割り当ては、次の値に固定されています。

  • CPU: 0.5 vCPU
  • メモリ: 1 Gi

Spring 用 Config Server のインスタンス数を構成するには、--min-replicas--max-replicas パラメーターを同じ値で更新する必要があります。 この構成により、インスタンス数は確実に固定されたままになります。 現在、システムでは動的スケーリングのための自動スケーリング構成はサポートされていません。

Config Server を構成する

Azure Spring Apps 内の Spring Cloud Config Server で構成されている既定の Git リポジトリと追加のリポジトリを、Azure Container Apps にデプロイされた Spring 用 Config Server の既定とその他のリポジトリにマップします。 次の表に、プロパティのマッピング 関係を示します。

Azure Spring Apps のプロパティ名 CONFIGURATION_KEY CONFIGURATION_VALUE
uri spring.cloud.config.server.git.uri
spring.cloud.config.server.git.repos.{repoName}.uri
リモート リポジトリの uri
search path spring.cloud.config.server.git.search-paths
spring.cloud.config.server.git.repos.{repoName}.search-paths
ローカル環境の作業コピー内で使用する検索パス。 既定では、ルートのみが検索されます。
label spring.cloud.config.server.git.default-label
spring.cloud.config.server.git.repos.{repoName}.default-label
Git に使用されるラベル。
追加リポジトリでの name 次の構成での {repoName}
追加リポジトリでの Patterns spring.cloud.config.server.git.repos.{repoName}.pattern
username spring.cloud.config.server.git.username
spring.cloud.config.server.git.repos.{repoName}.username
認証の種類が HTTP Basic の場合、リモート リポジトリでの認証用の username を入力します。
password spring.cloud.config.server.git.password
spring.cloud.config.server.git.repos.{repoName}.password
認証の種類が HTTP Basic の場合、リモート リポジトリでの認証用の password を入力します。
private key spring.cloud.config.server.git.private-key
spring.cloud.config.server.git.repos.{repoName}.private-key
認証の種類が SSH の場合、有効な SSH 秘密キー。
host key spring.cloud.config.server.git.host-key
spring.cloud.config.server.git.repos.{repoName}.host-key
認証の種類が SSH の場合、有効な SSH ホスト キー。 host-key-algorithm も設定されている場合は、設定する必要があります。
host key algorithm spring.cloud.config.server.git.host-key-algorithm
spring.cloud.config.server.git.repos.{repoName}.host-key-algorithm
認証の種類が SSH の場合、ssh-dssssh-rsassh-ed25519ecdsa-sha2-nistp256ecdsa-sha2-nistp384ecdsa-sha2-nistp521 のいずれか。 host-key も設定されている場合、設定する必要があります。

Config Server のプロパティの詳細については、「Azure Container Apps で Spring 用マネージド Config Server に接続する」の「構成オプション」の項を参照してください。

アプリケーションを Azure Container Apps にデプロイする

ローカル環境でアプリケーションをテストした後、新しいイメージを Azure Container Apps アプリケーションにデプロイできます。

次の手順を使用してデプロイします。

  1. Azure portal で Azure Container Apps アプリケーションに移動します。
  2. メニューで [アプリケーション]>[コンテナー] を選択します。
  3. [編集とデプロイ] を選択して、[新しいリビジョンの作成とデプロイ] ページを開きます。
  4. [コンテナー イメージ] セクションでイメージを選択し、[編集] を選択します。
  5. [コンテナーの編集] セクションの [プロパティ] タブで、アプリケーションの新しいイメージを選びます。
  6. [環境変数] タブで、[名前] に「spring.application.name」を指定します。 次に、[ソース][手動エントリ] を選んで、アプリケーションが構成を使用する構成ファイル名を指定します。
  7. [保存] を選択して、新しいリビジョンをデプロイします。

トラブルシューティング

Log Analytics を使って、Azure Container Apps 内の Spring 用マネージド Config サーバーのログを表示できます。 次の手順に従います。

  1. Azure portal で、Azure Container Apps 環境に移動します。

  2. [監視]>[ログ] メニューを選びます。

  3. ログを表示するには、次の例で示すように、ContainerAppSystemLogs_CL テーブルのクエリをクエリ エディターに入力します。

    ContainerAppSystemLogs_CL
    | where ComponentType_s == "SpringCloudConfig"
    | project Time=TimeGenerated, ComponentName=ComponentName_s, Message=Log_s
    | take 100
    

ログのクエリの詳細については、「Azure Container Apps 内のマネージド Java コンポーネントの監視」を参照してください。