Capaciteitsplanning voor App Service-serverrollen in Azure Stack hub

Als u een productieklare implementatie van Azure App Service in Azure Stack Hub wilt instellen, moet u de capaciteit plannen die u verwacht dat het systeem ondersteunt.

Dit artikel bevat richtlijnen voor het minimale aantal rekeninstanties en reken-SKU's dat u moet gebruiken voor elke productie-implementatie.

Notitie

De richtlijnen voor de aanbevolen reken-SKU voor rollen zijn bijgewerkt met de 2020.Q2-release van Azure App Service in Azure Stack Hub om standaardimplementaties in overeenstemming te brengen met Azure-implementaties.

U kunt uw App Service capaciteitsstrategie plannen met behulp van deze richtlijnen.

App Service-serverfunctie Minimaal aanbevolen aantal exemplaren Aanbevolen reken-SKU
Controller 2 A4v2
Front-end 2 A4_v2
Beheer 2 D3_v2
Publisher 2 A2_v2
Web workers - gedeeld 2 A4_v2
Web workers - toegewezen - klein 2 per laag A1_v2
Web workers - toegewezen - gemiddeld 2 per laag A2_v2
Web workers - toegewezen - groot 2 per laag A4_v2

Controllerrol

Aanbevolen minimum: twee exemplaren van A4v2

De Azure App Service controller ervaart doorgaans een laag verbruik van CPU, geheugen en netwerkbronnen. Voor hoge beschikbaarheid moet u echter twee controllers hebben. Twee controllers zijn ook het maximum aantal controllers dat is toegestaan. Tijdens de implementatie kunt u de tweede websitecontroller rechtstreeks vanuit het installatieprogramma maken.

Front-endrol

Aanbevolen minimum: twee exemplaren van A4v_2

De front-end stuurt aanvragen door naar webwerknemers, afhankelijk van de beschikbaarheid van webwerkrollen. Voor hoge beschikbaarheid moet u meer dan één front-end hebben en kunt u er meer dan twee hebben. Houd er voor capaciteitsplanningsdoeleinden rekening mee dat elke kern ongeveer 100 aanvragen per seconde kan verwerken.

Beheerrol

Aanbevolen minimum: twee exemplaren van D3v2

De rol Azure-app klassieke implementatiemodel is verantwoordelijk voor de App Service Azure Resource Manager- en API-eindpunten, portalextensies (beheerder, tenant, Functions-portal) en de gegevensservice. De beheerserverfunctie vereist doorgaans slechts ongeveer 4 GB RAM in een productieomgeving. Er kunnen echter hoge CPU-niveaus optreden wanneer veel beheertaken (zoals het maken van websites) worden uitgevoerd. Voor hoge beschikbaarheid moet u meer dan één server hebben toegewezen aan deze rol en ten minste twee kernen per server.

Uitgeversrol

Aanbevolen minimum: twee exemplaren van A2v2

Als veel gebruikers tegelijkertijd publiceren, kan de uitgeversrol te maken krijgen met een intensief CPU-gebruik. Voor hoge beschikbaarheid moet u ervoor zorgen dat er meer dan één uitgeversrol beschikbaar is. De uitgever verwerkt alleen FTP/FTPS-verkeer.

Webwerkrol

Aanbevolen minimum: twee exemplaren van A4_v2

Voor hoge beschikbaarheid moet u ten minste vier webwerkrollen hebben: twee voor de modus gedeelde website en twee voor elke toegewezen werkrollaag die u wilt aanbieden. De gedeelde en toegewezen rekenmodi bieden tenants verschillende serviceniveaus. Mogelijk hebt u meer webwerkers nodig als veel van uw klanten:

  • Gebruik van werklagen in de toegewezen rekenmodus (die resource-intensief zijn).
  • Wordt uitgevoerd in de gedeelde rekenmodus.

Nadat een gebruiker een App Service-abonnement voor een toegewezen rekenmodus-SKU heeft gemaakt, is het aantal webwerknemers dat is opgegeven in dat App Service-abonnement niet meer beschikbaar voor gebruikers.

Als u gebruikers in het verbruiksabonnementsmodel Azure Functions wilt bieden, moet u gedeelde webwerkrollen implementeren.

Bekijk deze overwegingen bij het bepalen van het aantal gedeelde webwerkrollen dat moet worden gebruikt:

  • Geheugen: Geheugen is de meest kritieke resource voor een webwerkrol. Onvoldoende geheugen is van invloed op de prestaties van de website wanneer virtueel geheugen wordt gewisseld van schijf. Elke server vereist ongeveer 1,2 GB RAM voor het besturingssysteem. RAM boven deze drempelwaarde kan worden gebruikt om websites uit te voeren.

  • Percentage actieve websites: doorgaans is ongeveer 5 procent van de apps in een Azure App Service op Azure Stack Hub-implementatie actief. Het percentage apps dat op een bepaald moment actief is, kan echter hoger of lager zijn. Met een actief app-tarief van 5 procent moet het maximum aantal apps dat in een Azure App Service in azure Stack Hub-implementatie moet worden plaatsen, minder dan 20 keer het aantal actieve websites zijn (5 x 20 = 100).

  • Gemiddelde geheugenvoetafdruk: de gemiddelde geheugenvoetafdruk voor apps die in productieomgevingen worden waargenomen, is ongeveer 70 MB. Op basis van deze footprint wordt het geheugen dat is toegewezen aan alle webwerkrolcomputers of VM's als volgt berekend:

    Number of provisioned applications * 70 MB * 5% - (number of web worker roles * 1044 MB)

    Als er bijvoorbeeld 5.000 apps zijn in een omgeving met 10 webwerkrolrollen, moet elke VIRTUELE webwerkrol 7060 MB RAM hebben:

    5,000 * 70 * 0.05 - (10 * 1044) = 7060 (= about 7 GB)

    Zie Meer werkrollen toevoegen voor informatie over het toevoegen van meer werkrolinstanties.

Aanvullende overwegingen voor toegewezen werknemers tijdens upgrade en onderhoud

Tijdens de upgrade en het onderhoud van werkrollen voert Azure App Service in Azure Stack Hub onderhoud uit op 20% van elke werklaag tegelijk. Daarom moeten cloudbeheerders altijd een pool van 20% van niet-toegewezen werknemers per werkrollaag onderhouden om ervoor te zorgen dat hun tenants geen serviceverlies ondervinden tijdens de upgrade en het onderhoud. Als u bijvoorbeeld 10 werkrollen in een werkrollaag hebt, moet u ervoor zorgen dat 2 niet zijn toegewezen om upgrade en onderhoud toe te staan. Als de volledige 10 werkrollen worden toegewezen, moet u de werkrollaag omhoog schalen om een groep niet-toegewezen werkrollen te behouden.

Tijdens de upgrade en het onderhoud verplaatst Azure App Service workloads naar niet-toegewezen werkrollen om ervoor te zorgen dat de workloads blijven werken. Als er echter geen niet-toegewezen werkrollen beschikbaar zijn tijdens de upgrade, is er mogelijk sprake van downtime van tenantworkloads. Met betrekking tot gedeelde werkrollen hoeven klanten geen extra werkrollen in te richten, omdat de service automatisch tenant-apps binnen beschikbare werkrollen toewijst. Voor hoge beschikbaarheid is er een minimale vereiste van twee werkrollen in deze laag.

Cloudbeheerders kunnen de toewijzing van hun werkrollaag bewaken in het gebied App Service beheer in de Azure Stack Hub-beheerportal. Navigeer naar App Service en selecteer vervolgens Werklagen in het linkerdeelvenster. De tabel Werklagen bevat de naam van de werklaag, de grootte, de gebruikte installatiekopie, het aantal beschikbare werkrollen (niet-toegewezen), het totale aantal werkrollen in elke laag en de algehele status van de werkrollaag.

App Service Administration - Werkrollagen

Bestandsserverfunctie

Voor de bestandsserverfunctie kunt u een zelfstandige bestandsserver gebruiken voor ontwikkeling en testen. Als u bijvoorbeeld Azure App Service implementeert in de Azure Stack Development Kit (ASDK), kunt u deze sjabloon gebruiken. Voor productiedoeleinden moet u een vooraf geconfigureerde Windows-bestandsserver of een vooraf geconfigureerde niet-Windows-bestandsserver gebruiken.

In productieomgevingen ervaart de bestandsserverfunctie intensieve schijf-I/O. Omdat alle inhoud en app-bestanden voor gebruikerswebsites worden opgeslagen, moet u een van de volgende resources vooraf configureren voor deze rol:

  • Windows-bestandsserver
  • Windows-bestandsservercluster
  • Niet-Windows-bestandsserver
  • Niet-Windows-bestandsservercluster
  • NAS-apparaat (Network Attached Storage)

Zie Een bestandsserver inrichten voor meer informatie.

Volgende stappen

Vereisten voor het implementeren van App Service op Azure Stack Hub