2016-11-24 1 views
5

Ich bin mit Powershell 5 und versuche, mein Azure WebApp-Objekt mit Set-AzureRmWebApp setzt den „Always (und NICHT Set-AzureResource) zu manipulieren Auf "Eigenschaft der Web App.Azure: Powershell: Set-AzureRmWebApp: Wie die "AlwaysOn" setzen Eigenschaft

Mein Grundcodeausschnitt beginnt mit einer laufenden Web-App namens "myWebApp" und sieht wie folgt aus:

$name = "myWebApp" 
$resourceGroupName = "myResourceGroup" 
$app_settings = @{"WEBSITE_LOAD_CERTIFICATES"="*";"CommonDatabase"="Common";"WEBSITE_NODE_DEFAULT_VERSION"="0.10.32"} 

$result1 = Set-AzureRmWebApp -ResourceGroupName $resourceGroupName -AppSettings $app_settings -Name $name 
$result2 = Set-AzureRmResource -ResourceGroupName $resourceGroupName -ResourceType Microsoft.Web/sites/config -ResourceName $this.name -PropertyObject $propertiesObject -ApiVersion 2015-08-01 -Force 

Die ersten Set-AzureRmWebApp Anweisung funktioniert. Es setzt alle Variablen in $ app_settings, und sie werden im Azure-Portal-Blade für myWebApp sichtbar.

Ich versuchte "Always On" = auf als Eigenschaft in app_settings $ mit Set-AzureRmWebApp verwenden, und es erschien in der App-Einstellungen Unterliste in den Eigenschaften von "myWebApp" auf der Azure-Portal Klinge , aber die eigentliche Eigenschaft "Always On" in den allgemeinen Einstellungen blieb ausgeschaltet.

Ich las auf einer anderen Website, die mit Set-AzureRmResource würde funktionieren, also habe ich es versucht, aber es ist fehlgeschlagen.

Was muss ich in Powershell tun, um eine Eigenschaft in den Allgemeinen Einstellungen meiner Azure WebApp festzulegen, speziell "Immer ein"?

+0

Mögliche Duplikat [Ist es möglich, Always On für Azure-Websites durch Management/Ressourcen-Management-APIs zu aktivieren?] (Http://stackoverflow.com/questions/26756644/is-it-possible-to -enable-immer-für-azure-websites-through-management-resourc) – sharbag

+0

Schauen Sie dort: http://StackOverflow.com/A/36811987/1275334 – sharbag

Antwort

6

"Immer aktiviert" wird nicht unterstützt, wenn sich WebApp in einer kostenlosen Serviceplan-Schicht befindet. Wenn sich die WebApp auf einer kostenlosen Ebene befindet, erweitern Sie den App Service-Plan. Weitere Informationen dazu, wie Sie den App Service Plan erweitern können, finden Sie unter document. Versuchen Sie bitte, die von sharbag erwähnte Lösung zu verwenden. Es ist für mich gearbeitet und ich überprüfe auch das Ergebnis des azurblauen Portals. Snipped Code aus der Lösung ist wie folgenden:

$ResourceGroupName = 'Your Group Name' 

    $WebAppName = 'Your WebApp Name' 

    $WebAppPropertiesObject = @{"siteConfig" = @{"AlwaysOn" = $true}} 

    $WebAppResourceType = 'microsoft.web/sites' 

    $webAppResource = Get-AzureRmResource -ResourceType $WebAppResourceType -ResourceGroupName $ResourceGroupName -ResourceName $WebAppName 

    $webAppResource | Set-AzureRmResource -PropertyObject $WebAppPropertiesObject -Force 

enter image description here

Wenn die WebApp in einem freien Tier-Service-Plan, wenn wir versuchen, den Powershell-Befehl auszuführen "On Always" zu ermöglichen, dann werden wir bekomme folgende Fehlermeldung.

enter image description here

+1

Ich bin auf einem bezahlten Plan. Es formatiert nur den Eigenschafts-Hash, der nirgendwo dokumentiert zu sein scheint. –

+0

Danke, dieser funktioniert zumindest in 2017/10 – Rambalac

Verwandte Themen