Toewijzingsfouten oplossen bij het implementeren van Cloud Services (klassiek) in Azure
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).
Samenvatting
Bij het implementeren van instanties in een cloudservice of het toevoegen van nieuwe web- of werkrolinstanties, worden met Microsoft Azure rekenresources toegewezen. Mogelijk krijgt u tijdens het uitvoeren van deze bewerkingen af en toe fouten, ook voordat u de limiet voor het Azure-abonnement bereikt. In dit artikel worden de oorzaken van enkele veelvoorkomende toewijzingsfouten uitgelegd en wordt mogelijke herstel voorgesteld. De informatie kan ook nuttig zijn wanneer u de implementatie van uw services plant.
Als uw Azure-probleem niet wordt opgelost in dit artikel, gaat u naar de Azure-forums op Microsoft Q & A en Stack Overflow. U kunt uw probleem posten in deze forums of posten op @AzureSupport op Twitter. U kunt ook een Azure-ondersteuningsaanvraag indienen. Als u een ondersteuningsaanvraag wilt indienen, selecteert u op de pagina Azure-ondersteuning Ondersteuning krijgen.
Achtergrond: hoe toewijzing werkt
De servers in Azure-datacenters worden in clusters gepartitioneerd. Er wordt een nieuwe aanvraag voor cloudservicetoewijzing uitgevoerd in meerdere clusters. Wanneer het eerste exemplaar wordt geïmplementeerd in een cloudservice (in fasering of productie), wordt die cloudservice vastgemaakt aan een cluster. Eventuele verdere implementaties voor de cloudservice vinden plaats in hetzelfde cluster. In dit artikel verwijzen we naar deze status als 'vastgemaakt aan een cluster'. In het volgende diagram ziet u het geval van een normale toewijzing, die in meerdere clusters wordt geprobeerd. Het tweede diagram illustreert het geval van een toewijzing die is vastgemaakt aan Cluster 2, omdat de bestaande Cloud Service CS_1 wordt gehost.
Waarom toewijzingsfouten optreden
Wanneer een toewijzingsaanvraag aan een cluster wordt vastgemaakt, is de kans groter dat er geen gratis resources worden gevonden omdat de beschikbare resourcegroep tot een cluster is beperkt. Als uw toewijzingsaanvraag is vastgemaakt aan een cluster, maar het cluster geen ondersteuning biedt voor het resourcetype dat u hebt aangevraagd, mislukt uw aanvraag zelfs als het cluster een gratis resource heeft. Het volgende diagram illustreert het geval waarin een vastgemaakte toewijzing mislukt, omdat het enige kandidaatcluster geen gratis resources heeft. Diagram 4 illustreert het geval waarin een vastgemaakte toewijzing mislukt, omdat het enige kandidaatcluster de aangevraagde grootte van de virtuele machine (VM) niet ondersteunt, ook al heeft het cluster gratis resources.
Toewijzingsfouten voor cloudservices oplossen
Foutbericht
Navigeer in Azure Portal naar uw cloudservice en selecteer in de zijbalk bewerkingslogboeken (klassiek) om de logboeken weer te geven.
Zie deze verdere oplossingen voor de uitzonderingen:
Type uitzondering | Foutbericht | Oplossing |
---|---|---|
FabricInternalServerError | De bewerking is mislukt met foutcode 'InternalError' en errorMessage 'De server heeft een interne fout aangetroffen. Probeer de aanvraag opnieuw.' | Problemen met FabricInternalServerError oplossen |
ServiceAllocationFailure | De bewerking is mislukt met foutcode 'InternalError' en errorMessage 'De server heeft een interne fout aangetroffen. Probeer de aanvraag opnieuw.' | Problemen met ServiceAllocationFailure oplossen |
LocationNotFoundForRoleSize | De bewerking '{Operation ID} ' is mislukt: 'De aangevraagde VM-laag is momenteel niet beschikbaar in regio ({Region ID} ) voor dit abonnement. Probeer een andere laag of implementeer deze op een andere locatie.' |
Problemen met LocationNotFoundForRoleSize oplossen |
ConstrainedAllocationFailed | Azure-bewerking '{Operation ID} ' is mislukt met code Compute.ConstrainedAllocationFailed. Details: Toewijzing is mislukt; kan niet voldoen aan beperkingen in de aanvraag. De aangevraagde nieuwe service-implementatie is gebonden aan een affiniteitsgroep, of is gericht op een virtueel netwerk, of er is een bestaande implementatie onder deze gehoste service. Met een van deze voorwaarden wordt de nieuwe implementatie beperkt tot specifieke Azure-resources. Probeer het later opnieuw of verklein de VM-grootte of het aantal rolinstanties. U kunt indien mogelijk ook de beperkingen verwijderen of proberen te implementeren in een andere regio. |
Problemen met ConstrainedAllocationFailed oplossen |
OverconstrainedAllocationRequest | De VM-grootte (of combinatie van VM-grootten) die vereist zijn voor deze implementatie, kunnen niet worden ingericht vanwege beperkingen voor implementatieaanvragen. Probeer indien mogelijk beperkingen zoals virtuele netwerkbindingen, implementatie naar een gehoste service zonder andere implementatie en naar een andere affiniteitsgroep of zonder affiniteitsgroep, of probeer te implementeren in een andere regio. | Problemen met OverconstrainedAllocationRequest oplossen |
Voorbeeld van foutbericht:
'Azure-bewerking {operation id} is mislukt met code Compute.ConstrainedAllocationFailed. Details: Toewijzing is mislukt; kan niet voldoen aan beperkingen in de aanvraag. De aangevraagde nieuwe service-implementatie is gebonden aan een affiniteitsgroep, is gericht op een virtueel netwerk of er is een bestaande implementatie onder deze gehoste service. Met een van deze voorwaarden wordt de nieuwe implementatie beperkt tot specifieke Azure-resources. Probeer het later opnieuw of verklein de VM-grootte of het aantal rolinstanties. U kunt indien mogelijk de bovengenoemde beperkingen verwijderen of proberen te implementeren in een andere regio.
Algemene problemen
Hier volgen de algemene toewijzingsscenario's die ertoe leiden dat een toewijzingsaanvraag aan één cluster wordt vastgemaakt.
- Implementeren in Staging-site: als een cloudservice een implementatie in een van beide sleuf heeft, wordt de hele cloudservice vastgemaakt aan een specifiek cluster. Dit betekent dat als een implementatie al in de productiesite bestaat, dan kan een nieuwe faseringsimplementatie alleen worden toegewezen in hetzelfde cluster als de productiesite. Als de capaciteit van het cluster bijna is bereikt, kan de aanvraag mislukken.
- Schalen: wanneer nieuwe exemplaren aan een bestaande cloudservice worden toegevoegd, moet de toewijzing in hetzelfde cluster gebeuren. Kleine schaalaanvragen kunnen doorgaans worden toegewezen, maar niet altijd. Als de capaciteit van het cluster bijna is bereikt, kan de aanvraag mislukken.
- Affiniteitsgroep: de infrastructuur in een cluster in die regio kan een nieuwe implementatie toewijzen aan een lege cloudservice, tenzij de cloudservice is vastgemaakt aan een affiniteitsgroep. Implementaties proberen dezelfde affiniteitsgroep op hetzelfde cluster te gebruiken. Als de capaciteit van het cluster bijna is bereikt, kan de aanvraag mislukken.
- Virtueel netwerk affiniteitsgroep: oudere virtuele netwerken zijn gekoppeld aan affiniteitsgroepen in plaats van regio's, en cloudservices in deze virtuele netwerken worden vastgemaakt aan het affiniteitsgroepcluster. Er worden geprobeerd implementaties naar dit type virtueel netwerk uit te voeren op het vastgemaakte cluster. Als de capaciteit van het cluster bijna is bereikt, kan de aanvraag mislukken.
Oplossingen
Opnieuw implementeren naar een nieuwe cloudservice: deze oplossing is waarschijnlijk het meest succesvol omdat het platform uit alle clusters in die regio kan kiezen.
- De workload implementeren in een nieuwe cloudservice
- De CNAME- of A-record bijwerken om verkeer naar de nieuwe cloudservice te verwijzen
- Zodra er geen verkeer naar de oude site gaat, kunt u de oude cloudservice verwijderen. Voor deze oplossing is geen downtime nodig.
Zowel productie- als faseringssites verwijderen: met deze oplossing blijft uw bestaande DNS-naam (Domain Name System) behouden, maar wordt er downtime voor uw toepassing veroorzaakt.
- Verwijder de productie- en faseringssites van een bestaande cloudservice, zodat de cloudservice leeg is en vervolgens
- Maak een nieuwe implementatie in de bestaande cloudservice. Met deze oplossing wordt de toewijzing van alle clusters in de regio opnieuw afgeslagen. Zorg ervoor dat de cloudservice niet is gekoppeld aan een affiniteitsgroep.
Gereserveerd IP- Deze oplossing behoudt uw bestaande IP-adres, maar veroorzaakt downtime voor uw toepassing.
Een ReservedIP maken voor uw bestaande implementatie met behulp van PowerShell
New-AzureReservedIP -ReservedIPName {new reserved IP name} -Location {location} -ServiceName {existing service name}
Volg #2 en zorg ervoor dat u de nieuwe ReservedIP opgeeft in de CSCFG van de service.
Affiniteitsgroep verwijderen voor nieuwe implementaties: affiniteitsgroepen worden niet meer aanbevolen. Volg de stappen voor #1 om een nieuwe cloudservice te implementeren. Zorg ervoor dat de cloudservice zich niet in een affiniteitsgroep bevindt.
Converteren naar een regionaal virtueel netwerk: zie Hoe u migreert van affiniteitsgroepen naar een regionaal virtueel netwerk (virtueel netwerk).