次の方法で共有


Azure Spring Apps Basic または Standard プランのインスタンスを Enterprise プランに移行する

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

この記事では、Basic または Standard プランの既存のアプリケーションを Enterprise プランに移行する方法について説明します。 Basic または Standard プランから Enterpriseプランに移行すると、VMware Tanzu コンポーネントがオープンソース ソフトウェア (OSS) Spring Cloud コンポーネントに置き換わり、より多くの機能サポートが提供されます。

この記事では、移行方法の例として Pet Clinic サンプル アプリを使用します。

前提条件

  • Azure サブスクリプション。 サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。
  • Azure CLI バージョン 2.45.0 以上。
  • Azure Spring Apps Enterprise プランの拡張機能。 次のコマンドを使用して、以前のバージョンを削除し、最新の Enterprise プランの拡張機能をインストールします。 以前に spring-cloud 拡張機能をインストールした場合は、構成とバージョンの不一致を回避するためにそれをアンインストールします。
    az extension add --upgrade --name spring
    az extension remove --name spring-cloud
    
  • Git.

サービス インスタンスをプロビジョニングする

Azure Spring Apps Enterprise プランでは、VMware Tanzu コンポーネントが OSS Spring Cloud コンポーネントに置き換わり、より多くの機能がサポートされます。 Tanzu コンポーネントは、必要に応じてオンデマンドで有効にします。 Azure Spring Apps サービス インスタンスを作成する前に、必要なコンポーネントを有効にする必要があります。

Note

Tanzu コンポーネントを使用するには、Azure Spring Apps サービス インスタンスをプロビジョニングする際に有効にする必要があります。 現在は、プロビジョニング後に有効にすることはできません。

Azure Spring Apps サービス インスタンスをプロビジョニングするには、次の手順を使用します。

  1. Azure Portalを開きます。

  2. 上部の検索ボックスで Azure Spring Apps を検索します。

  3. その結果から [Azure Spring Apps] を選択し、[作成] を選択します。

  4. [Azure Spring Apps の作成] ページで、インスタンスの [サブスクリプション][リソース グループ][名前] を設定します。

  5. [サービスの詳細][プラン] で、[変更] を選択します。

    [プラン] セクションで [変更] ボタンが強調表示されている Azure portal の Azure Spring Apps 作成ページのスクリーンショット。

  6. [プランの選択] ページで、テーブルの [エンタープライズ] 行を選択し、[選択] を選択します。

    [基本] セクションと [価格レベルの選択] ウィンドウが表示されている、Azure portal の Azure Spring Apps 作成ページを示すスクリーンショット。

  7. [Azure Spring Apps の作成] ページに戻り、[ご契約条件] を選択して、Azure Marketplace の Enterprise プラン オファリングの法的条件とプライバシーに関する声明に同意します。

  8. [次へ: VMware Tanzu の設定] を選択します。

  9. [VMWare Tanzu の設定] タブで、一覧をスクロールして Tanzu コンポーネントを確認します。 新しいコンポーネントは既定で有効になっています。

    [VMware Tanzu の設定] セクションが表示されている Azure portal の Azure Spring Apps 作成ページを示すスクリーンショット。

    Note

    プロビジョニング フェーズ中に使用または有効にする Tanzu コンポーネントを慎重に検討してください。 Azure Spring Apps インスタンスをプロビジョニングした後は、Tanzu コンポーネントを有効または無効にすることはできません。

  10. [Application Insights] タブを選択し、[Application Insights を有効にする] を選択します。 以下の設定を確認します。

    • [Application Insights を有効にする] を選択する必要があります。
    • 既存の Application Insights インスタンスを選択するか、新しい Application Insights インスタンスを作成します。
    • 0 から 100 の範囲で [サンプリング レート] を入力するか、既定値の 10 を使用します。

    Azure Spring Apps インスタンスをプロビジョニングした後で Application Insights を有効にすることもできます。 Application Insights の価格の詳細については、「Azure Monitor ログのコストの計算とオプション」の「Application Insights の課金」セクションを参照してください。

    Note

    Azure Spring Apps と統合すると、Application Insights の使用に対して料金が発生します。

  11. [確認と作成] を選択し、検証が完了するまで待機し、その後 [作成] を選択してサービス インスタンスのプロビジョニングを開始します。

リソースのプロビジョニングが完了するまでに約 5 分かかります。

アプリを作成して構成する

アプリの作成手順は、Standard プランと同じです。

  1. 次のコマンドを使用して、Azure CLI の既定値を設定します。 プレースホルダーは必ず、独自の値で置き換えてください。

    az config set defaults.group=<resource-group-name>
    az config set defaults.spring=<Azure-Spring-Apps-service-instance-name>
    
  2. 次のコマンドを使用して、PetClinic の 2 つのコア アプリケーションである api-gatewaycustomers-service を作成します。

    az spring app create --name api-gateway --instance-count 1 --memory 2Gi --assign-endpoint
    az spring app create --name customers-service --instance-count 1 --memory 2Gi
    

外部構成用の Application Configuration Service を使用する

分散システム内にある外部化された構成の場合、マネージド Spring Cloud Config Server (OSS) は Basic プランと Standard プランでのみ利用可能です。 Enterprise プランでは、Application Configuration Service for Tanzu によって同様の機能がアプリに提供されます。 次の表では、OSS 構成サーバーと Application Configuration Service の使用方法の違いについて説明します。

コンポーネント サポート プラン Enabled アプリへのバインド プロファイル
Spring Cloud Config Server Basic/Standard 常に有効。 自動バインド アプリのソース コードで構成。
Application Configuration Service for Tanzu Enterprise オンデマンドで有効化。 手動バインド Azure Spring Apps のデプロイで config-file-pattern として提供。

OSS 構成サーバーのクライアント/サーバー モードとは異なり、Application Configuration Service によって、Kubernetes ネイティブ ConfigMap を使用して構成が管理されます。これは、バックエンド Git リポジトリで定義されているプロパティから設定されます。 Application Configuration Service を使用してもアプリのソース コード内に構成されたアクティブ プロファイルは適切な構成に一致しないため、明示的な構成 config-file-pattern を Azure Spring Apps のデプロイ レベルで指定する必要があります。

Application Configuration Service for Tanzu を構成する

一元化された構成サービスとして Application Configuration Service for Tanzu を使用するには、次の手順に従います。

  1. Azure Spring Apps Enterprise インスタンスのナビゲーション ウィンドウで [Application Configuration Service] を選択します。 実行状態と、Application Configuration Service for Tanzu に割り当てられているリソースを表示します。

    [Application Configuration Service] ページの [概要] タブを示す Azure portal のスクリーンショット。

  2. [設定] を選択し、[リポジトリ] のフォームに入力して、次の情報を含む新しいエントリを追加します。

    • 名前: default
    • パターン: api-gateway,customers-service
    • URI: https://github.com/Azure-Samples/spring-petclinic-microservices-config
    • ラベル: master

    [Application Configuration Service] ページの [設定] タブを示す Azure portal のスクリーンショット。

  3. ターゲット URI へのアクセスを検証するには、[検証] を選択します。

  4. 検証が正常に完了したら、[適用] を選択して構成設定を更新します。

アプリケーションを Application Configuration Service for Tanzu にバインドする

Git バックエンドで Application Configuration Service for Tanzu を使用する場合は、アプリを Application Configuration Service for Tanzu にバインドする必要があります。 アプリをバインドしたら、アプリで使用するパターンを構成する必要があります。 次の手順に従って、アプリのパターンをバインドして構成します。

次の手順を実行して、Application Configuration Service for VMware Tanzu にアプリをバインドします。

  1. Azure Spring Apps Enterprise インスタンスのナビゲーション ウィンドウで [Application Configuration Service] を選択します。

  2. [アプリのバインド] を選択し、[アプリをバインドする] を選択します。

    [Application Configuration Service] ページの [アプリのバインド] タブと [アプリをバインドする] ドロップダウン メニューが表示されている Azure portal のスクリーンショット。

  3. ドロップダウン メニューで 1 つのアプリを選択し、[適用] を選択してそのアプリケーションを Application Configuration Service for Tanzu にバインドします。

詳細については、「Application Configuration Service for Tanzu を使用する」を参照してください。

Service Registry for Tanzu を使用する

Service Registry は、財産的価値のある VMware Tanzu コンポーネントの 1 つです。 これにより、マイクロサービス ベースのアーキテクチャの主要な概念の 1 つであるサービス検出パターンの実装がアプリに提供されます。 Enterprise プランでは、Service Registry for Tanzu がサービス レジストリを提供し、アプリのサポートを検出します。 Managed Spring Cloud Eureka は Basic プランと Standard プランでのみ使用でき、Enterprise プランでは使用できません。

コンポーネント Standard プラン Enterprise プラン
サービス レジストリ OSS eureka
自動的にバインドされる (常に挿入)
常にプロビジョニングされる
Service Registry for Tanzu
アプリへの手動バインドが必要
オンデマンドで有効にする

アプリケーションを Tanzu Service Registry にバインドする

Application Configuration Service for VMware Tanzu にアプリをバインドするには、次の手順を実行してください。

  1. Azure Spring Apps Enterprise インスタンスで、[サービス レジストリ] を選択します。

  2. [アプリのバインド] を選択します。 現在バインドされているアプリは [アプリ名] の下に表示されます。

  3. [アプリをバインドする] を選択します。

  4. ドロップダウン メニューで 1 つのアプリを選択し、[適用] を選択して、アプリケーションを Tanzu Service Registry にバインドします。

    [サービス レジストリ] ページと [アプリをバインドする] ダイアログが表示されている Azure portal の Azure Spring Apps のスクリーンショット。

Note

バインドとバインド解除の状態を変更したときは、アプリを再起動または再デプロイして変更を有効にする必要があります。

詳細については、「Tanzu Service Registry を使用する」を参照してください。

アプリケーションをビルドしてデプロイする

Enterprise プランでは、Tanzu Build Service を使用してアプリをビルドします。 これは、ソース コードや zip ファイルなどの成果物からデプロイするポリグロット アプリなど、多くの機能を提供しています。

Tanzu Build Service を使用するには、ビルド タスクとビルダーで使用するリソースを指定する必要があります。 ビルド環境を設定する --build-env パラメーターを指定することもできます。

アプリが Application Configuration Service for Tanzu にバインドされている場合は、追加の引数 —config-file-pattern を指定する必要があります。

詳細については、「Tanzu Build Service を使用する」を参照してください。

アプリケーションをローカルでビルドする

ローカルでビルドするには、次の手順を使用します。

  1. 次のコマンドを使用して、サンプル アプリ リポジトリを Azure アカウントに複製し、ディレクトリを変更して、プロジェクトをビルドします。

    git clone -b enterprise https://github.com/azure-samples/spring-petclinic-microservices
    cd spring-petclinic-microservices
    mvn clean package -DskipTests
    

    プロジェクトのコンパイルには数分かかる場合があります。 完了すると、サービスごとの JAR ファイルがそれぞれのフォルダーに作成されます。

  2. 次のコマンドを使用して、前の手順でビルドした JAR ファイルをデプロイします。

    az spring app deploy \
        --name api-gateway \
        --artifact-path spring-petclinic-api-gateway/target/spring-petclinic-api-gateway-2.3.6.jar \
        --config-file-patterns api-gateway
    az spring app deploy \
        --name customers-service \
        --artifact-path spring-petclinic-customers-service/target/spring-petclinic-customers-service-2.3.6.jar \
        --config-file-patterns customers-service
    
  3. 次のコマンドを使用して、デプロイ後のアプリケーションの状態を照会します。

    az spring app list --output table
    

    次の例のような出力が表示されます。

    Name                  Location    ResourceGroup       Public Url                                                 Production Deployment    Provisioning State    CPU    Memory    Running Instance    Registered Instance    Persistent Storage    Bind Service Registry    Bind Application Configuration Service
    --------------------  ----------  ---------------  ---------------------------------------------------------  -----------------------  --------------------  -----  --------  ------------------  ---------------------  --------------------  -----------------------  ----------------------------------------
    api-gateway           eastus      <resource group>   https://<service_name>-api-gateway.asc-test.net                    default                  Succeeded             1      2Gi       1/1                1/1                    -                     True                     True
    customers-service     eastus      <resource group>                                                                      default                  Succeeded             1      2Gi       1/1                1/1                    -                     True                     True
    

Application Insights を使用する

Azure Spring Apps Enterprise プランでは、ビルドパック バインドを使用して、Application Insights を、インプロセス エージェントではなく、ApplicationInsights 型に統合します。 詳細については、「APM 統合と CA 証明書を構成する方法」を参照してください。

次の表に、プランで使用できる APM プロバイダーの一覧を示します。

Standard プラン Enterprise プラン
Application Insight
New Relic
Dynatrace
AppDynamics
Application Insight
New Relic
Dynatrace
AppDynamics
Elastic APM

Application Insights の現在の設定を確認または更新するには、次の手順を使用します。

  1. Azure Spring Apps Enterprise インスタンスで、[Application Insights] を選択します。

  2. [バインドの編集] または [バインドの解除] を選択して、Application Insights を有効または無効にします。

    [バインドの編集] オプション ドロップダウン メニューが表示されている Azure portal の [Application Insights] ページを示すスクリーンショット。

  3. [バインドの編集] を選択します。 バインド設定を編集し、[保存] を選択します。

    Azure portal の [バインドの編集] ペインのスクリーンショット。

次のステップ