Azure PowerShell 1.0 Preview がアナウンスされました。
Azure Resource Manager (ARM) による管理APIが追加され、それによって Switch-AzureMode にてARM<->ASMを切り替える実装になりましたが、同名で異なる動きをするコマンドが多く不評でした。そのような中、Switch-AzureModeの廃止が提案されたのですが、当初は ASM コマンドをリネームするとアナウンスされて、古いほうを変えて、既存のドキュメントとスクリプト資産をどうするんだと憤りましたが、結局はARMを変えることで落ち着きました。
Deprecation of Switch AzureMode in Azure PowerShell · Azure/azure-powershell Wiki · GitHub
というわけで、基本的には
[Verb]-AzureRm[Noun]
という、Rmが間に挟まる形式になりました。ということで、既存の資産はほぼリネームだけでいける気がします。リファレンスは以下の通り。
インストール
以前の Azure PowerShell がインストールされていたら、まずはアンインストールしておきましょう。
1.0からは、PowerShellGet という仕組みでインストールするらしく、Windows 10 ではデフォルトで組み込まれていますが、Windows 8などは、Windows Management Framework 5.0が必要です。
Download Windows Management Framework 5.0 Production Preview from Official Microsoft Download Center
PowerShellを管理者権限で以下を実行します。
PS C:\> Install-Module AzureRM PS C:\> Install-AzureRM Installing AzureRM modules. AzureRM.Profile 0.10.0 installed [1/24]... Azure.Storage 0.10.1 installed [2/24]... AzureRM.ApiManagement 0.10.0 installed [3/24]... AzureRM.Automation 0.10.0 installed [4/24]... AzureRM.Backup 0.10.0 installed [5/24]... AzureRM.Batch 0.10.0 installed [6/24]... AzureRM.Compute 0.10.0 installed [7/24]... AzureRM.DataFactories 0.10.0 installed [8/24]... AzureRM.Dns 0.10.0 installed [9/24]... AzureRM.HDInsight 0.10.0 installed [10/24]... AzureRM.Insights 0.10.0 installed [11/24]... AzureRM.KeyVault 0.10.0 installed [12/24]... AzureRM.Network 0.10.0 installed [13/24]... AzureRM.OperationalInsights 0.10.0 installed [14/24]... AzureRM.RedisCache 0.10.0 installed [15/24]... AzureRM.Resources 0.10.0 installed [16/24]... AzureRM.SiteRecovery 0.10.0 installed [17/24]... AzureRM.Sql 0.10.0 installed [18/24]... AzureRM.Storage 0.10.1 installed [19/24]... AzureRM.StreamAnalytics 0.10.0 installed [20/24]... AzureRM.Tags 0.10.0 installed [21/24]... AzureRM.TrafficManager 0.10.0 installed [22/24]... AzureRM.UsageAggregates 0.10.0 installed [23/24]... AzureRM.Websites 0.10.0 installed [24/24]... PS C:\> Import-AzureRM Importing AzureRM modules. AzureRM.ApiManagement imported... AzureRM.Automation imported... AzureRM.Backup imported... AzureRM.Batch imported... AzureRM.Compute imported... AzureRM.DataFactories imported... AzureRM.Dns imported... AzureRM.HDInsight imported... AzureRM.Insights imported... AzureRM.KeyVault imported... AzureRM.Network imported... AzureRM.OperationalInsights imported... AzureRM.RedisCache imported... AzureRM.Resources imported... AzureRM.SiteRecovery imported... AzureRM.Sql imported... AzureRM.Storage imported... AzureRM.StreamAnalytics imported... AzureRM.Tags imported... AzureRM.TrafficManager imported... AzureRM.UsageAggregates imported... AzureRM.Websites imported... PS C:\> Get-Module ModuleType Version Name ExportedCommands ---------- ------- ---- ---------------- Script 1.0.1 AzureRM {CheckIncompatibleVersion, Import-AzureRM, Install-ModuleWithVersionCheck...
Get-Module して、読み込まれていればOKでしょう。
認証とサブスクリプションまわり
認証は、Add-AzureRmAccountを使います。サブスクリプション一覧は、Get-AzureRmSubscription ですが、Allを指定しないと全て出てきませんので、以前と異なる挙動のです。
# 認証 Add-AzureRmAccount ## サブスクプション一覧 Get-AzureRmSubscription -All SubscriptionName : xxxx-sbscr SubscriptionId : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx TenantId : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
サブスクリプションの切り変えで、前回と異なるのは、テナントIdを意識しないといけないようです。
Select-AzureRmSubscription -SubscriptionId xxxx -TenantId yyyy
TenantId は必須パラメータではありませんが、異なるテナントId間で切り替えるときは、明示的に指定しないとエラーになりました。
以上、次回に続くはず。