[英]Running a powershell script involving AzureRM as an Azure webjob
我幾乎沒有使用Powershell的經驗,所以這可能是一個顯而易見的問題。
我正在嘗試將Powershell腳本作為webjob運行。 腳本的唯一目的是通過AzureRM庫刷新端點。
我設法在本地執行此操作,它看起來像這樣:
Install-Module AzureRM -AllowClobber Import-Module AzureRM
Login-AzureRmAccount -ServicePrincipal -ApplicationId "http://my-app"
-Credential $pscredential -TenantId $tenantid
$wsd = Get-AzureRmMlWebService -Name 'serviceName' -ResourceGroupName 'resourceGroupName'
Update-AzureRmMlWebService -Name 'serviceName' -ResourceGroupName 'resourceGroupName' -ServiceUpdates $wsd
我需要能夠在我的網站上的命令中運行此腳本,因此我想為此創建一個webjob。 但是,在Webjob端運行我的腳本的Powershell似乎沒有“安裝模塊”,也沒有AzureRM,因此我感到有些困惑。 我嘗試將AzureRM附加到它,但是限制為50 mb,AzureRM為500+(壓縮100+)。
[10/30/2017 19:37:46 > 44bf8a: ERR ] Install-Module : The term 'Install-Module' is not recognized as the name of a
[10/30/2017 19:37:46 > 44bf8a: ERR ] cmdlet, function, script file, or operable program. Check the spelling of the
[10/30/2017 19:37:46 > 44bf8a: ERR ] name, or if a path was included, verify that the path is correct and try again.
我應該怎么做?
另外還有一個問題:如何處理Webjob中的登錄? 我必須通過我的實時身份證明嗎?
只需將評論轉換為答案即可+使您更好地了解Azure的工作原理。
一切都是Azure中的REST API調用。 如果您可以在Azure中做某事(或者門戶網站可以,或者您在某些演示中看到了),則可以進行REST調用。 它可能會或可能不會被記錄,那是另一回事(請考慮尚未記錄的demo \\ preview功能,或已記錄但已存在但已棄用的東西)。
但就您而言,一切都非常簡單,您可以在本地計算機上執行以下操作:
Update-AzureRmMlWebService -Name 'serviceName' -ResourceGroupName 'resourceGroupName' -ServiceUpdates $wsd -Debug
使用-debug
開關,它將向您顯示REST調用其性能以及得到的答案(以及許多其他信息)。 這是學習不同的Azure REST調用如何工作的好方法。 這適用於任何Azure Powershell cmdlet;)。 顯然(或不太明顯),您可以使用fiddler對Azure Portal進行相同的操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.