Get-AzureVM
PowerShellコマンドを実行しようとしていますが、正常に実行されていますが、出力が返されません。
また、次のフレーバーで試してみましたが、それでも空白の結果は何か考えがありますか?
Get-AzureVM -Name "vmname" |Select-Object name,instancesize,location
最初にSelect-AzureSubscription "subscription name"
を呼び出す必要があります。
デフォルトでは、仮想マシンが含まれていないサブスクリプションになっている可能性があります。
現在のサブスクリプション名を表示するには、次の電話番号に電話してください。
Get-AzureSubscription | select SubscriptionName
実際、上記の答えは半正解です。
これにより、自動化を試みて、私の凶暴な髪の毛を抜くことができました(動作するまでに7時間の手動のファッジングが必要でした!)。
簡単に言うと、Azureには2種類の仮想マシンがあります。クラシック、およびリソースマネージャー。
Switch-AzureMode -name AzureServiceManagement
を使用してからGet-AzureVM
を使用すると、作成したすべてのクラシックVMが一覧表示されます。
Switch-AzureMode -name AzureResourceManager
を使用してからGet-AzureVM
を使用すると、作成したすべてのResource Manager(または新しい)VMが一覧表示されます。
また、自動化を行おうとしている場合は、ポータルから利用できる新しいモードのVMが必要です。管理を通じて作成した古いVM(クラシック)はこのモードでは表示されないため、再作成する必要があります。
Azureには、AzureServiceManagement(ASM)とAzureResourceManager(ARM)の2種類の管理システムがあります。
これらの2つの異なるタイプの管理システムを制御するには、説明されているようにそれらを切り替える必要があります Azure Powershell Githubプロジェクトページのメインページ が、これは AzurePowerShellバージョン1.0.0未満 、詳細については ここ を参照してください。
1.0.0よりも優れたPowerShellバージョンでARM(AzureResourceManager)を制御することに関心がある場合は、次の形式のすべてのコマンドレットを使用する必要があります:[Verb]-AzureRm[Noun]
、たとえばNew-AzureVm
はNew-AzureRmVm
になり、この場合はGet-AzureVM
はGet-AzureRmVm
になります
要約すれば:
Get-AzureVM
を使用する必要があります これは私や他の多くの意見では非常に混乱しますGet-AzureVM
を使用し、ARMの場合はGet-AzureRmVm
を使用する必要があります。スクリプトで古い機能と新しいAzureResource Managerコマンドレットを使用している場合は、AzurePowershellモードをAzureServiceManagementとAzureResourceMangerの間で切り替えることをお勧めします。このスイッチは、Microsoft AzurePowershellバージョン0.9.8以前の場合にのみ必要です。
私はこの質問が答えられたことを知っていますが、与えられた答えを試しましたが、うまくいきませんでした。 AzureModeを切り替える必要があることがわかりました。
解決するために、次のPowerShellスクリプトを実行しました。
Switch-AzureMode -Name AzureResourceManager