Go プロファイルとバージョン プロファイル
プロファイルは、異なるサービスのバージョンが異なるさまざまなリソースの種類の組み合わせです。 プロファイルを使用すると、さまざまなリソースの種類を混在させ、一致させることができます。 プロファイルには、次の利点があります。
- 特定の API バージョンにロックすることで、アプリの安定性を実現します。
- Azure Stack Hub とリージョンの Azure データセンターとのアプリの互換性。
Go SDK では、プロファイルパスの下でプロファイルを使用できます。 プロファイルのバージョン番号には、 YYYY-MM-DD 形式でラベルが付けられます。 たとえば、Azure Stack Hub API プロファイル バージョン 2020-09-01 は、Azure Stack Hub バージョン 2102 以降を対象としています。 特定のサービスをプロファイルからインポートするには、対応するモジュールをプロファイルからインポートします。 たとえば、2020-09-01 プロファイルからコンピューティング サービスをインポートするには、次のコードを使用します。
import "github.com/Azure/azure-sdk-for-go/profiles/2020-09-01/compute/mgmt/compute"
Azure SDK for Go のインストール
- Git をインストールします。 「 作業の開始 - Git のインストール」を参照してください。
- Go をインストールします。 Azure の API プロファイルには、Go バージョン 1.9 以降が必要です。 Go プログラミング言語を参照してください。
プロフィール
別の SDK プロファイルまたはバージョンを使用するには、 github.com/Azure/azure-sdk-for-go/profiles/<date>/storage/mgmt/storageなどの import ステートメントの日付に置き換えます。 たとえば、2008 バージョンの場合、プロファイルは 2019-03-01され、文字列は github.com/Azure/azure-sdk-for-go/profiles/2019-03-01/storage/mgmt/storageになります。 SDK チームがパッケージの名前を変更する場合があるため、文字列の日付を別の日付に置き換えるだけでは機能しない場合があることに注意してください。 プロファイルと Azure Stack のバージョンの関連付けについては、次の表を参照してください。
| Azure Stack のバージョン | プロフィール |
|---|---|
| 2311 | 2020_09_01 |
| 2301 | 2020_09_01 |
| 2206 | 2020_09_01 |
| 2108 | 2020-09-01 |
| 2102 | 2020-09-01 |
| 2008 | 2019-03-01 |
Azure Stack Hub と API プロファイルの詳細については、 API プロファイルの概要を参照してください。
Go SDK プロファイルを参照してください。
サブスクリプション
まだサブスクリプションがない場合は、サブスクリプションを作成し、後で使用するサブスクリプション ID を保存します。 サブスクリプションを作成する方法については、このドキュメントを参照 してください。
サービス プリンシパル
サービス プリンシパルとその関連する環境情報を作成し、どこかに保存する必要があります。
owner ロールを持つサービス プリンシパルをお勧めしますが、サンプルによっては、contributorロールで十分な場合があります。 必要な値については、 サンプル リポジトリ の README を参照してください。 これらの値は、JSON ファイル (サンプルで使用) など、SDK 言語でサポートされている任意の形式で読み取れます。 実行されているサンプルによっては、これらの値の一部が使用されるわけではありません。 更新されたサンプル コードまたは詳細情報については 、サンプル リポジトリ を参照してください。
テナント ID
Azure Stack Hub のディレクトリまたはテナント ID を見つけるには、 この記事の手順に従います。
リソース プロバイダーを登録する
このドキュメントに従って、必要なリソース プロバイダーを登録 します。 これらのリソース プロバイダーは、実行するサンプルに応じて必要になります。 たとえば、VM サンプルを実行する場合は、 Microsoft.Compute リソース プロバイダーの登録が必要です。
Azure Stack Resource Manager エンドポイント
Azure Resource Manager (ARM) は、管理者が Azure リソースをデプロイ、管理、監視できるようにする管理フレームワークです。 Azure Resource Manager では、これらのタスクを 1 回の操作で個別に処理するのではなく、グループとして処理できます。 Resource Manager エンドポイントからメタデータ情報を取得できます。 エンドポイントは、コードの実行に必要な情報を含む JSON ファイルを返します。
- Azure Stack Development Kit (ASDK) の ResourceManagerEndpointUrl は、
https://management.local.azurestack.external/です。 - 統合システムの ResourceManagerEndpointUrl は
https://management.region.<fqdn>/で、<fqdn>は完全修飾ドメイン名です。 - 必要なメタデータを取得するには:
<ResourceManagerUrl>/metadata/endpoints?api-version=1.0。 使用可能な API バージョンについては、 Azure rest API の仕様を参照してください。 たとえば、2020-09-01プロファイル バージョンでは、リソース プロバイダーのapi-versionの2019-10-01をmicrosoft.resourcesに変更できます。
サンプル JSON:
{
"galleryEndpoint": "https://portal.local.azurestack.external:30015/",
"graphEndpoint": "https://graph.windows.net/",
"portal Endpoint": "https://portal.local.azurestack.external/",
"authentication":
{
"loginEndpoint": "https://login.windows.net/",
"audiences": ["https://management.yourtenant.onmicrosoft.com/3cc5febd-e4b7-4a85-a2ed-1d730e2f5928"]
}
}
サンプル
最新のサンプル コードについては 、サンプル リポジトリ を参照してください。 ルート README.md には一般的な要件が記述されており、各サブディレクトリには、そのサンプルを実行する方法に関する独自の README.md を持つ特定のサンプルが含まれています。
次のステップ
API プロファイルの詳細については、以下をご覧ください。