Nagy sűrűségű üzemeltetés Azure App Service alkalmazásonkénti skálázás használatával

Megjegyzés

Javasoljuk, hogy az Azure Az PowerShell-modullal kommunikáljon az Azure-ral. Az első lépésekhez tekintse meg az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

A App Service használatakor az alkalmazások skálázhatók az általuk futtatott App Service csomag skálázásával. Ha több alkalmazás fut ugyanabban a App Service csomagban, minden kibővített példány a csomag összes alkalmazását futtatja.

Az alkalmazásonkénti skálázás engedélyezhető a App Service csomag szintjén, hogy lehetővé tegye az alkalmazások skálázását az azt üzemeltető App Service csomagtól függetlenül. Így egy App Service csomag 10 példányra skálázható, de egy alkalmazás csak ötre állítható be.

Megjegyzés

Az alkalmazásonkénti skálázás csak Standard, Prémium, Prémium V2, Prémium V3 és Izolált tarifacsomagok esetén érhető el.

Az alkalmazások az elérhető App Service csomaghoz vannak lefoglalva a példányok közötti egyenletes eloszlás érdekében a legjobb módszerekkel. Bár a páros terjesztés nem garantált, a platform gondoskodik arról, hogy ugyanazon alkalmazás két példánya ne ugyanazon a App Service csomagpéldányon legyen üzemeltetve.

A platform nem támaszkodik metrikákra a feldolgozók kiosztásának eldöntéséhez. Az alkalmazások kiegyensúlyozása csak akkor történik meg, ha példányokat adnak hozzá vagy távolítanak el a App Service csomagból.

Alkalmazásonkénti skálázás a PowerShell használatával

Hozzon létre egy csomagot alkalmazásonkénti skálázással úgy, hogy átadja a -PerSiteScaling $true paramétert a New-AzAppServicePlan parancsmagnak.

New-AzAppServicePlan -ResourceGroupName $ResourceGroup -Name $AppServicePlan `
                            -Location $Location `
                            -Tier Premium -WorkerSize Small `
                            -NumberofWorkers 5 -PerSiteScaling $true

Engedélyezze az alkalmazásonkénti skálázást egy meglévő App Service-csomaggal úgy, hogy átadja a -PerSiteScaling $true paramétert a Set-AzAppServicePlan parancsmagnak.

# Enable per-app scaling for the App Service Plan using the "PerSiteScaling" parameter.
Set-AzAppServicePlan -ResourceGroupName $ResourceGroup `
   -Name $AppServicePlan -PerSiteScaling $true

Az alkalmazás szintjén konfigurálja az alkalmazás által az App Service csomagban használható példányok számát.

Az alábbi példában az alkalmazás két példányra van korlátozva, függetlenül attól, hogy az alapul szolgáló App Service-csomag hány példányra skálázható fel.

# Get the app we want to configure to use "PerSiteScaling"
$newapp = Get-AzWebApp -ResourceGroupName $ResourceGroup -Name $webapp

# Modify the NumberOfWorkers setting to the desired value.
$newapp.SiteConfig.NumberOfWorkers = 2

# Post updated app back to azure
Set-AzWebApp $newapp

Fontos

$newapp.SiteConfig.NumberOfWorkers nem ugyanaz, mint $newapp.MaxNumberOfWorkersa . Az alkalmazásonkénti skálázás az alkalmazás skálázási jellemzőinek meghatározására használja $newapp.SiteConfig.NumberOfWorkers .

Alkalmazásonkénti skálázás az Azure Resource Manager használatával

A következő Azure Resource Manager-sablont hozza létre:

  • 10 példányra felskálázott App Service csomag
  • egy olyan alkalmazás, amely legfeljebb öt példányra való skálázásra van konfigurálva.

A App Service terv a PerSiteScaling tulajdonságot true (igaz"perSiteScaling": true) értékre állítja. Az alkalmazás 5-ösre "properties": { "numberOfWorkers": "5" }állítja a feldolgozók számát.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters":{
        "appServicePlanName": { "type": "string" },
        "appName": { "type": "string" }
        },
    "resources": [
    {
        "comments": "App Service Plan with per site perSiteScaling = true",
        "type": "Microsoft.Web/serverFarms",
        "sku": {
            "name": "P1",
            "tier": "Premium",
            "size": "P1",
            "family": "P",
            "capacity": 10
            },
        "name": "[parameters('appServicePlanName')]",
        "apiVersion": "2015-08-01",
        "location": "West US",
        "properties": {
            "name": "[parameters('appServicePlanName')]",
            "perSiteScaling": true
        }
    },
    {
        "type": "Microsoft.Web/sites",
        "name": "[parameters('appName')]",
        "apiVersion": "2015-08-01-preview",
        "location": "West US",
        "dependsOn": [ "[resourceId('Microsoft.Web/serverFarms', parameters('appServicePlanName'))]" ],
        "properties": { "serverFarmId": "[resourceId('Microsoft.Web/serverFarms', parameters('appServicePlanName'))]" },
        "resources": [ {
                "comments": "",
                "type": "config",
                "name": "web",
                "apiVersion": "2015-08-01",
                "location": "West US",
                "dependsOn": [ "[resourceId('Microsoft.Web/Sites', parameters('appName'))]" ],
                "properties": { "numberOfWorkers": "5" }
            } ]
        }]
}

Az alkalmazásonkénti skálázás olyan funkció, amely a globális Azure-régiókban és a App Service-környezetekben is engedélyezve van. Az ajánlott stratégia azonban az App Service-környezetek használata a fejlett funkciók és a nagyobb App Service csomagkapacitás kihasználása érdekében.

Az alábbi lépéseket követve konfigurálhatja a nagy sűrűségű üzemeltetést az alkalmazásaihoz:

  1. Jelöljön ki egy App Service tervet nagy sűrűségű tervként, és skálázza fel a kívánt kapacitásra.
  2. Állítsa a PerSiteScaling jelölőt true (igaz) értékre a App Service tervben.
  3. A rendszer új alkalmazásokat hoz létre és rendel hozzá az adott App Service csomaghoz, és a numberOfWorkers tulajdonság értéke 1.
    • Ennek a konfigurációnak a használata a lehető legnagyobb sűrűséget biztosítja.
  4. A feldolgozók száma alkalmazásonként egymástól függetlenül konfigurálható további erőforrások igény szerinti biztosításához. Például:
    • A nagy használatú alkalmazások a NumberOfWorkers értékét 3-ra állíthatják, hogy több feldolgozási kapacitással rendelkezzenek az adott alkalmazáshoz.
    • Az alacsony használatú alkalmazások a NumberOfWorkers értéket 1-re állítják.

Következő lépések