web-dev-qa-db-ja.com

Azureを取得VM PowerShellによる詳細

Get-AzureVM PowerShellコマンドを実行しようとしていますが、正常に実行されていますが、出力が返されません。

また、次のフレーバーで試してみましたが、それでも空白の結果は何か考えがありますか?

Get-AzureVM -Name "vmname" |Select-Object name,instancesize,location
10
Vinay Rajput

最初にSelect-AzureSubscription "subscription name"を呼び出す必要があります。

デフォルトでは、仮想マシンが含まれていないサブスクリプションになっている可能性があります。

現在のサブスクリプション名を表示するには、次の電話番号に電話してください。

Get-AzureSubscription | select SubscriptionName
10
Michael Washam

実際、上記の答えは半正解です。

これにより、自動化を試みて、私の凶暴な髪の毛を抜くことができました(動作するまでに7時間の手動のファッジングが必要でした!)。

簡単に言うと、Azureには2種類の仮想マシンがあります。クラシック、およびリソースマネージャー。

Switch-AzureMode -name AzureServiceManagementを使用してからGet-AzureVMを使用すると、作成したすべてのクラシックVMが一覧表示されます。

Switch-AzureMode -name AzureResourceManagerを使用してからGet-AzureVMを使用すると、作成したすべてのResource Manager(または新しい)VMが一覧表示されます。

また、自動化を行おうとしている場合は、ポータルから利用できる新しいモードのVMが必要です。管理を通じて作成した古いVM(クラシック)はこのモードでは表示されないため、再作成する必要があります。

4
Glyn

Azureには、AzureServiceManagement(ASM)とAzureResourceManager(ARM)の2種類の管理システムがあります。

これらの2つの異なるタイプの管理システムを制御するには、説明されているようにそれらを切り替える必要があります Azure Powershell Githubプロジェクトページのメインページ が、これは AzurePowerShellバージョン1.0.0未満 、詳細については ここ を参照してください。

1.0.0よりも優れたPowerShellバージョンでARM(AzureResourceManager)を制御することに関心がある場合は、次の形式のすべてのコマンドレットを使用する必要があります:[Verb]-AzureRm[Noun]、たとえばNew-AzureVmNew-AzureRmVmになり、この場合はGet-AzureVMGet-AzureRmVmになります

要約すれば:

  1. 1.0.0より前のPowershellバージョンでは、モードを切り替えてGet-AzureVMを使用する必要があります これは私や他の多くの意見では非常に混乱します
  2. Powershellのバージョンが1.0.0以上の場合は、ASMの場合はGet-AzureVMを使用し、ARMの場合はGet-AzureRmVmを使用する必要があります。
2
erdemlal

スクリプトで古い機能と新しいAzureResource Managerコマンドレットを使用している場合は、AzurePowershellモードをAzureServiceManagementとAzureResourceMangerの間で切り替えることをお勧めします。このスイッチは、Microsoft AzurePowershellバージョン0.9.8以前の場合にのみ必要です。

0
SBG

私はこの質問が答えられたことを知っていますが、与えられた答えを試しましたが、うまくいきませんでした。 AzureModeを切り替える必要があることがわかりました。

解決するために、次のPowerShellスクリプトを実行しました。

Switch-AzureMode -Name AzureResourceManager

0
Stuart Smith