Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Belangrijk
Cloud Services (klassiek) is vanaf 1 september 2024 afgeschaft voor alle klanten. Bestaande actieve implementaties worden gestopt en afgesloten door Microsoft en de gegevens gaan vanaf oktober 2024 definitief verloren. Nieuwe implementaties moeten gebruikmaken van het nieuwe op Azure Resource Manager gebaseerde implementatiemodel Azure Cloud Services (uitgebreide ondersteuning).
Dit artikel bevat een overzicht van de werkstroomprocessen die plaatsvinden wanneer u een Azure-resource, zoals een virtuele machine, implementeert of bijwerkt.
Opmerking
Azure heeft twee verschillende implementatiemodellen voor het maken van en werken met resources: Resource Manager en het klassieke model. Dit artikel gaat over het gebruik van het klassieke implementatiemodel.
In het volgende diagram ziet u de architectuur van Azure-resources.
Basisbeginselen van werkstromen
A. RDFE/FFE is het communicatiepad van de gebruiker naar de infrastructuur. RDFE (RedDog Front End) is de openbaar beschikbaar gemaakte API die de front-end is voor de beheerportal en de API voor het klassieke implementatiemodel, zoals Visual Studio, Azure MMC, enzovoort. Alle aanvragen van de gebruiker gaan via RDFE. FFE (Fabric Front End) is de laag die verzoeken van RDFE vertaalt naar fabric-opdrachten. Alle aanvragen van RDFE gaan via de FFE om de fabric controllers te bereiken.
B. De fabriccontroller is verantwoordelijk voor het onderhouden en bewaken van alle resources in het datacenter. Het communiceert met fabric-hostagents op het fabric-besturingssysteem dat informatie verzendt, zoals de versie van het gastbesturingssystem, het servicepakket, de serviceconfiguratie en de servicestatus.
C. De hostagent bevindt zich op het host-besturingssysteem en is verantwoordelijk voor het instellen van gastbesturingssystemen. Het verwerkt ook de communicatie met gastagent (WindowsAzureGuestAgent) om de rol bij te werken naar een beoogde doelstatus en heartbeatcontroles uit te voeren met de gastagent. Als hostagent 10 minuten geen heartbeat-antwoord ontvangt, wordt het gastbesturingssysteem opnieuw opgestart door de hostagent.
C2. WaAppAgent is verantwoordelijk voor het installeren, configureren en bijwerken van WindowsAzureGuestAgent.exe.
D. WindowsAzureGuestAgent is verantwoordelijk voor de volgende taken:
- Het gastbesturingssystemen configureren, waaronder firewall, ACL's, LocalStorage-resources, servicepakket en configuratie en certificaten.
- De SID instellen voor het gebruikersaccount waaronder de rol wordt uitgevoerd.
- De rolstatus doorgeven aan de infrastructuur.
- WaHostBootstrapper starten en controleren om ervoor te zorgen dat de rol de doelstatus heeft.
E. WaHostBootstrapper is verantwoordelijk voor:
- Lees de rolconfiguratie en start alle juiste taken en processen om de rol te configureren en uit te voeren.
- Alle onderliggende processen bewaken.
- De statuscontrole-gebeurtenis in het rolhostproces verhogen.
F. IISConfigurator wordt uitgevoerd als de rol is geconfigureerd als een volledige IIS-webrol. Het is verantwoordelijk voor:
- De standaard IIS-services starten
- De herschrijfmodule configureren in de webconfiguratie
- De AppPool instellen voor de geconfigureerde rol in het servicemodel
- IIS-logboekregistratie instellen om te verwijzen naar de map LocalStorage DiagnosticStore
- Machtigingen en ACL's configureren
- De website bevindt zich in %roleroot%:\sitesroot\0 en de AppPool verwijst naar deze locatie om IIS uit te voeren.
G. Het rolmodel definieert opstarttaken en WaHostBootstrapper start ze. Opstarttaken kunnen asynchroon worden geconfigureerd om op de achtergrond te worden uitgevoerd en de hostbootstrapper start de opstarttaak en gaat vervolgens verder met andere opstarttaken. Opstarttaken kunnen ook worden geconfigureerd om te worden uitgevoerd in de modus Simple (standaard). In de eenvoudige modus wacht de host bootstrapper totdat de opstarttaak is voltooid en wordt een afsluitcode (0) geretourneerd voordat de volgende opstarttaak wordt voortgezet.
H. Deze taken maken deel uit van de SDK en worden gedefinieerd als invoegtoepassingen in de servicedefinitie van de rol (.csdef). Wanneer deze worden uitgebreid naar opstarttaken, zijn de DiagnosticsAgent en RemoteAccessAgent uniek omdat ze elk twee opstarttaken definiëren, één gewone en een met een parameter /blockStartup. De normale opstarttaak wordt gedefinieerd als een opstarttaak op de achtergrond, zodat deze op de achtergrond kan worden uitgevoerd terwijl de rol zelf wordt uitgevoerd. De opstarttaak /blockStartup wordt gedefinieerd als een eenvoudige opstarttaak, zodat WaHostBootstrapper wacht tot deze wordt afgesloten voordat u doorgaat. De /blockStartup taak wacht tot de reguliere taak is geïnitialiseerd, waarna de taak afsluit en de host bootstrapper kan doorgaan. Dit proces wordt uitgevoerd zodat diagnostische gegevens en RDP-toegang kunnen worden geconfigureerd voordat de rolprocessen worden gestart. Dit wordt gedaan via de taak /blockStartup. Dit proces maakt het ook mogelijk dat diagnostiek en RDP-toegang blijven draaien nadat de host-bootstrapper de opstarttaken heeft voltooid, hetgeen wordt uitgevoerd via de normale taak.
Ik. WaWorkerHost is het standaardhostproces voor normale werkrollen. Dit hostproces host alle DLL's en entry point code van de rol, zoals OnStart en Run.
J. WaIISHost is het hostproces voor de rolinvoerpuntcode van webrollen die gebruikmaken van Full IIS. Met dit proces wordt de eerste DLL geladen die wordt gevonden die gebruikmaakt van de klasse RoleEntryPoint en de code uit deze klasse uitvoert (OnStart, Uitvoeren, OnStop). Eventuele RoleEnvironment-gebeurtenissen (zoals StatusCheck en Gewijzigd) die zijn gemaakt in de klasse RoleEntryPoint, worden in dit proces gegenereerd.
K. W3WP is het standaard IIS-werkproces dat wordt gebruikt als de rol is geconfigureerd voor gebruik van volledige IIS. Met dit proces wordt de AppPool uitgevoerd die is geconfigureerd vanuit IISConfigurator. Eventuele RoleEnvironment-gebeurtenissen (zoals StatusCheck en Gewijzigd) die hier worden gemaakt, worden tijdens dit proces opgeroepen. RoleEnvironment-gebeurtenissen worden geactiveerd op beide locaties (WaIISHost en w3wp.exe) als u zich abonneert op gebeurtenissen in beide processen.
Workflowprocessen
- Een gebruiker doet een aanvraag, zoals het uploaden van bestanden '.cspkg' en '.cscfg', waarbij een resource wordt verteld dat een configuratie moet worden gestopt of gewijzigd, enzovoort. Aanvragen kunnen worden gedaan via de Azure-portal of hulpprogramma's die gebruikmaken van de API voor het klassieke implementatiemodel, zoals de functie Publiceren van Visual Studio. Deze aanvraag gaat naar RDFE om alle aan het abonnement gerelateerde werkzaamheden uit te voeren en de aanvraag vervolgens aan FFE te communiceren. De rest van deze werkstroomstappen zijn het implementeren van een nieuw pakket en het starten ervan.
- FFE zoekt de juiste machinegroep (op basis van klantinvoer, zoals affiniteitsgroep of geografische locatie plus invoer van de infrastructuur, zoals beschikbaarheid van de machine) en communiceert met de hoofdinfrastructuurcontroller in die machinegroep.
- De infrastructuurcontroller zoekt een host met beschikbare CPU-kernen (of draait een nieuwe host op). Het servicepakket en de configuratie worden gekopieerd naar de host en de infrastructuurcontroller communiceert met de hostagent op het host-besturingssysteem om het pakket te implementeren (DIPs, poorten, gastbesturingssystemen enzovoort configureren).
- De hostagent start het gastbesturingssysteem en communiceert met de gastagent (WindowsAzureGuestAgent). De host verzendt signalen naar de gast om ervoor te zorgen dat de rol werkt naar zijn doeltoestand.
- WindowsAzureGuestAgent stelt het gastbesturingssystemen (firewall, ACL's, LocalStorage enzovoort) in, kopieert een nieuw XML-configuratiebestand naar c:\Config en start vervolgens het WaHostBootstrapper-proces.
- Voor volledige IIS-webrollen start WaHostBootstrapper IISConfigurator en laat deze eventuele bestaande AppPools voor de webrol uit IIS verwijderen.
- WaHostBootstrapper leest de opstarttaken uit E:\RoleModel.xml en begint met het uitvoeren van opstarttaken. WaHostBootstrapper wacht totdat alle eenvoudige opstarttaken zijn voltooid en er een succesbericht wordt geretourneerd.
- Voor volledige IIS-webrollen vertelt WaHostBootstrapper IISConfigurator om de IIS AppPool te configureren en de site te verwijzen naar
E:\Sitesroot\<index>, waarbij<index>een op nul gebaseerde index is van het aantal<Sites>elementen dat voor de service is gedefinieerd. - WaHostBootstrapper start het hostproces, afhankelijk van het roltype:
- Werkrol: WaWorkerHost.exe wordt gestart. WaHostBootstrapper voert de methode OnStart() uit. Nadat deze is geretourneerd, begint WaHostBootstrapper met het uitvoeren van de methode Run() en markeert vervolgens de rol als Gereed en plaatst deze in de load balancer-draaiing (als InputEndpoints zijn gedefinieerd). WaHostBootstrapper gaat vervolgens in een loop om de rolstatus te controleren.
- Volledige IIS-webrol: aIISHost wordt gestart. WaHostBootstrapper voert de methode OnStart() uit. Nadat deze is geretourneerd, begint hij de methode Run() uit te voeren, en markeert vervolgens de rol als Gereed en plaatst deze in de load balancer-rotatie. WaHostBootsrapper gaat vervolgens in een lus om de rolstatus te controleren.
- Binnenkomende webaanvragen voor een volledige IIS-webrol activeren IIS om het W3WP-proces te starten en de aanvraag te verwerken, hetzelfde als in een on-premises IIS-omgeving.
Locaties van logboekbestanden
WindowsAzureGuestAgent
- C:\Logs\AppAgentRuntime.Log.
Dit logboek bevat wijzigingen in de service, waaronder starten, stoppen en nieuwe configuraties. Als de service niet verandert, kunt u verwachten dat er grote tijdsverschillen in dit logboekbestand worden weergegeven. - C:\Logs\WaAppAgent.Log.
Dit logboek bevat statusupdates en heartbeatmeldingen en wordt elke 2-3 seconden bijgewerkt. Dit logboek bevat een historische weergave van de status van het exemplaar en geeft aan wanneer het exemplaar niet de status Gereed heeft.
WaHostBootstrapper
C:\Resources\Directory\<deploymentID>.<role>.DiagnosticStore\WaHostBootstrapper.log
WaIISHost
C:\Resources\Directory\<deploymentID>.<role>\WaIISHost.log
IISConfigurator
C:\Resources\Directory\<deploymentID>.<role>\IISConfigurator.log
IIS-logboeken
C:\Resources\Directory\<guid>.<role>.DiagnosticStore\LogFiles\W3SVC1
Windows-gebeurtenislogboeken
D:\Windows\System32\Winevt\Logs