2016-02-21 146 views
0

我似乎無法從Azure Runbook訪問任何與Azure自動化cmdlets。下面我成功地獲得了我訂閱中的所有虛擬機,但撥打Get-AzureAutomationAccount會返回一個空集合(我擁有2個自動化帳戶)。我可以使用自動化cmdlets的任何其他調用返回空或未找到異常。Get-AzureAutomationAccount返回空集合

在此先感謝您的任何建議!

workflow Get-AzureVMTutorial 
{ 
#The name of the Automation Credential Asset this runbook will use to authenticate to Azure. 
$CredentialAssetName = 'AaronCred' 

#Get the credential with the above name from the Automation Asset store 
$Cred = Get-AutomationPSCredential -Name $CredentialAssetName 
if(!$Cred) { 
    Throw "Could not find an Automation Credential Asset named '${CredentialAssetName}'. Make sure you have created one in this Automation Account." 
} 

#Connect to your Azure Account 
$Account = Add-AzureAccount -Credential $Cred 
if(!$Account) { 
    Throw "Could not authenticate to Azure using the credential asset '${CredentialAssetName}'. Make sure the user name and password are correct." 
} 

#TODO (optional): pick the right subscription to use. Without this line, the default subscription for your Azure Account will be used. 
#Select-AzureSubscription -SubscriptionName "TODO: your Azure subscription name here" 

#Get all the VMs you have in your Azure subscription 
$VMs = Get-AzureVM 

#Print out up to 10 of those VMs 
if(!$VMs) { 
    Write-Output "No VMs were found in your subscription." 
} else { 
    Write-Output $VMs[0..9] 
} 

# PROBLEM - No accounts are returned even though I have 2 
$automationAccounts = Get-AzureAutomationAccount 

#Print out up to 10 of those automation accounts 
if(!$automationAccounts) { 
    Write-Output "No automation accounts were found in your subscription." 
} else { 
    Write-Output $VMs[0..9] 
} 
} 

回答

0

你創建通過ARM自動化賬戶/新(前預覽)天青門戶(portal.azure.com)或通過RDFE/ASM /老Azure的門戶網站(manage.windowsazure.com)?如果前者,自動化帳戶將無法通過RDFE/ASM /舊的Azure門戶訪問,包括通過Get-AzureAutomationAccount cmdlet。從https://azure.microsoft.com/en-us/documentation/articles/automation-configuring/#automation-accounts

無法在Azure門戶中訪問使用Azure預覽門戶創建的自動化帳戶及其包含的資源。如果要使用Windows PowerShell管理這些帳戶或其資源,則必須使用Azure資源管理器模塊。

使用Azure門戶創建的自動化帳戶可以由門戶和任何一組cmdlet進行管理。帳戶創建完成後,如何創建和管理帳戶中的資源沒有任何區別。如果您打算繼續使用Azure門戶,那麼您應該使用它來代替Azure預覽門戶來創建任何自動化帳戶。

如果這確實是問題的原因,解決方案是使用ARM cmdlet而不是RDFE/ASM cmdlet來訪問自動化帳戶及其中的任何內容。例如:

Add-AzureRmAccount -Credential $Cred Get-AzureRmAutomationAccount Get-AzureRmAutomationRunbook

我一直在專門使用portal.azure.com
+0

,其實自動化帳戶只是通過portal.azure.com昨天測試這個問題產生。 –

+0

好了,那麼您需要使用與該門戶相對應的cmdlet:Add-AzureRmAccount,Get-AzureRmAutomationAccount,Get-AzureRmAutomationRunbook等,如此答案所述。 Get-AzureAutomationAccount是一個與舊門戶相對應的cmdlet。 – Joe

+0

然後這是正確的答案。非常感謝喬。閱讀您發送的鏈接我發現當我通過portal.azure.com創建Azure自動化帳戶時,我需要使用Azure資源管理器Cmdlet(https://msdn.microsoft.com/zh-cn/library/mt244122.aspx) 。 不幸的是,他們的主頁現在在https://azure.microsoft.com/en-us/documentation/services/automation/(自動化 - >自動化Cmdlet)指向舊文檔,這是我誤用的。 –