Azure Stack Hub での API バージョンのプロファイルの管理

API プロファイルでは、Azure リソース プロバイダーと Azure REST エンドポイントの API バージョンが指定されます。 API プロファイルを使用して、さまざまな言語でカスタム クライアントを作成できます。 各クライアントは API プロファイルを使用して、適切なリソース プロバイダーと Azure Stack Hub の API バージョンに連絡します。

各リソース プロバイダー API のどのバージョンが Azure Stack Hub と互換性があるかが厳密にわからなくても、Azure リソース プロバイダーと連携するアプリを作成できます。 アプリをプロファイルに整合させるだけで、SDK によって適切な API バージョンに戻されます。

このトピックは、以下に役立ちます。

  • Azure Stack Hub の API プロファイルの理解
  • API プロファイルを使用してソリューションを開発する方法
  • コード固有のガイダンスが提供されている場所

API プロファイルの概要

  • API プロファイルは、一連の Azure リソース プロバイダーとその API バージョンを表すために使用されます。
  • API プロファイルは、複数の Azure クラウド間でテンプレートを作成するユーザー向けに作成されました。 プロファイルは、互換性のある安定したインターフェイスを提供します。
  • プロファイルは、1 年に 4 回リリースされます。
  • 次の 3 つのプロファイル名前付け規則が使用されます。
    • latest
      グローバル Azure でリリースされた最新の API バージョンを含みます。
    • yyyy-mm-dd-hybrid
      年に 2 回リリースされます。このリリースでは、複数のクラウド間での一貫性と安定性に重点が置かれています。 このプロファイルは Azure Stack Hub との最適な互換性を目指しています。
    • yyyy-mm-dd-profile
      最適な安定性と最新の機能のバランスを取ります。

Azure API プロファイルと Azure Stack Hub の互換性

最新の API プロファイルは Azure Stack Hub との互換性がありません。 次の名前付け規則を使用して、Azure Stack Hub ソリューションにどのプロファイルを使用するか識別します。

latest
このプロファイルはグローバル Azure にある最新の API バージョンであり、Azure Stack Hub では機能しません。 latest には、最も多くの重大な変更が含まれています。 このプロファイルでは、安定性および他のクラウドとの互換性は配慮されていません。 最新の API バージョンを使用する場合は、latest プロファイルを使用してください。

yyyy-mm-dd-hybrid
このプロファイルは、毎年 3月と 9 月にリリースされます。 最適な安定性と、さまざまなクラウドとの互換性があり、グローバル Azure と Azure Stack Hub を対象に設計されています。 このプロファイルに記載されている Azure API バージョンは、Azure Stack Hub に記載されているものと同じです。 このプロファイルを利用して、ハイブリッド クラウド ソリューション向けのコードを開発します。

yyyy-mm-dd-profile
このプロファイルは、グローバル Azure 向けに 6 月と 12 月にリリースされます。 Azure Stack Hub では機能せず、一般的に、重大な変更が多数含まれています。 最適な安定性と最新の機能のバランスを取っていますが、latest プロファイルとこのプロファイルの違いは、API のリリース時期に関係なく、latest プロファイルは常に最新の API バージョンで構成されることです。 たとえば、Compute API 用に新しい API バージョンが明日作成されるとすると、latest プロファイルには、その API バージョンが記載されますが、このプロファイルはすでに存在するため、yyyy-mm-dd-profile プロファイルには記載されません。 yyyy-mm-dd-profile は、6 月または 12 月の前にリリースされた最新のバージョンが対応します。

Azure Resource Manager API プロファイル

Azure Stack Hub は、グローバル Azure にある API バージョンのうちの最新バージョンを使用しません。 ソリューションを作成する場合は、Azure Stack Hub と互換性のある Azure の各リソース プロバイダーの API バージョンを特定する必要があります。

すべてのリソース プロバイダーや Azure Stack Hub でサポートされている特定のバージョンを調査する代わりに、API プロファイルを使用できます。 プロファイルは、リソース プロバイダーと API バージョンのセットを指定します。 SDK、または SDK でビルドされたツールによって、プロファイル内で指定されたターゲット api-version に戻されます。 API プロファイルでは、テンプレート全体に適用されるプロファイル バージョンを指定できます。 実行時に、Azure Resource Manager によってリソースの適切なバージョンが選択されます。

API プロファイルは、Azure Resource Manager を使用するツール (PowerShell、Azure CLI、SDK で提供されるコード、Microsoft Visual Studio など) と連携します。 ツールや SDK はプロファイルを使用して、アプリのビルド時にインクルードするモジュールやライブラリのバージョンを読み取ります。

たとえば、PowerShell を使用して Microsoft.Storage リソース プロバイダーを使ってストレージ アカウントを作成する場合 (ここでは api-version 2016-03-30 と、Microsoft.Compute リソース プロバイダーと api-version 2015-12-01 を使用した VM がサポートされます)、ストレージ用にどの PowerShell モジュールが 2016-03-30 をサポートしているか、コンピューティング用にどのモジュールが 2015-02-01 をサポートしているか調べてからインストールする必要があります。 その代わりに、プロファイルを使用することができます。 コマンドレット Install-Profile <profilename> を使用すると、PowerShell によって適切なバージョンのモジュールが読み込まれます。

同様に、Python SDK を使用して Python ベースのアプリをビルドする場合、プロファイルを指定できます。 SDK によって、スクリプトで指定済みのリソース プロバイダーの適切なモジュールが読み込まれます。

開発者として、ソリューションの作成に集中できるということです。 API バージョン、リソース プロバイダー、連携させるクラウドを調査する代わりに、プロファイルを使用すれば、そのプロファイルに対応するすべてのクラウドにわたってコードが機能することを把握できます。

API プロファイルのコード サンプル

プロファイルを使用して、Azure Stack Hub を使って目的の言語でソリューションを統合するためのコード サンプルが用意されています。 現在、次の言語用のガイダンスとサンプルを使用できます。

次のステップ