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.
Azure Container Apps Sandboxes geïsoleerde omgevingen bieden voor het uitvoeren van code. Elke sandbox wordt uitgevoerd in een lichtgewicht virtuele machine (microVM) die in minder dan een seconde begint en de status in het geheugen kan behouden wanneer deze wordt onderbroken. De service ondersteunt de betrouwbaarheid van sandbox-workloads via mogelijkheden die u configureert en mogelijkheden die het platform namens u beheert.
Wanneer u Azure gebruikt, is betrouwbaarheid een gedeelde verantwoordelijkheid. Microsoft biedt een scala aan mogelijkheden ter ondersteuning van tolerantie en herstel. U bent verantwoordelijk voor het begrijpen van de werking van deze mogelijkheden binnen alle services die u gebruikt en het selecteren van de mogelijkheden die u nodig hebt om te voldoen aan uw bedrijfsdoelstellingen en beschikbaarheidsdoelen.
In dit artikel wordt beschreven hoe u Container Apps-sandboxes tolerant maakt voor tijdelijke fouten, fouten in de beschikbaarheidszone, regiobrede fouten en serviceonderhoud. Ook worden opties voor back-up en herstel en belangrijke informatie over de SLA (Service Level Agreement) beschreven.
Important
Container Apps Sandboxes is momenteel beschikbaar als PREVIEW. Zie de Aanvullende Gebruiksvoorwaarden voor Microsoft Azure Previews voor juridische voorwaarden die van toepassing zijn op Azure-functies die in bèta, preview, of anderszins nog niet algemeen beschikbaar zijn.
Aanbevelingen voor productie-implementatie voor betrouwbaarheid
Voor productiewerkzaamheden raden we u aan het volgende te doen:
Sla duurzame gegevens buiten sandboxgeheugen op en kies een optie voor opslagredundantie die overeenkomt met uw hersteldoelen. Gebruik sandboxvolumes voor gegevens die moeten worden bewaard wanneer een sandbox stopt. Voor tolerantie voor een regiobrede fout gebruikt u een extern gegevensarchief waarmee gegevens naar een andere regio worden gerepliceerd.
Wanneer u Azure Blob Storage gebruikt, worden gegevens met geografisch redundante opslag (GRS) gerepliceerd naar een gekoppelde regio. Implementeer voor niet-geaireerde regio's afzonderlijke opslagaccounts en configureer een ondersteunde replicatiemethode, zoals objectreplicatie voor blok-blobs. Zie Aangepaste oplossingen voor meerdere regio's voor Azure Blob Storage voor meer informatie.
Implementeer afzonderlijke sandbox-groepen in meerdere regio's als uw uptimedoel niet kan worden bereikt door een implementatie met één regio. Zie Tolerantie voor regiobrede fouten voor meer informatie.
Overzicht van betrouwbaarheidsarchitectuur
In deze sectie worden enkele belangrijke aspecten beschreven van de werking van de service die het meest relevant is vanuit het perspectief van betrouwbaarheid. In de sectie wordt de logische architectuur geïntroduceerd, die enkele van de resources en functies bevat die u implementeert en gebruikt. Ook wordt de fysieke architectuur besproken, die details biedt over hoe de service achter de schermen werkt.
Logische architectuur
Azure Container Apps biedt verschillende rekenopties voor apps, taken, dynamische sessies en sandboxes. Sandbox-groepen hebben geen Container Apps-omgeving nodig. Zie Betrouwbaarheid in Azure Container Apps voor meer informatie over de betrouwbaarheid van andere Container Apps-onderdelen.
De belangrijkste resources in Container Apps-sandboxes zijn:
Sandbox-groep: Een sandboxgroep is de grens voor regionaal beheer op het hoogste niveau voor sandboxes en maakt gebruik van het
Microsoft.App/sandboxGroupsresourcetype. Alle sandboxes, schijfkopieën, momentopnamen, volumes en gevoelige configuratiewaarden (secrets) vallen onder een sandboxgroep.Sandbox: Elke sandbox is een lichtgewicht, geïsoleerde microVM die op basis van een schijfimage of snapshot draait en beschikt over een eigen CPU, geheugen, lokale schijf en afzondering op netwerkniveau.
Een schijfimage is een OCI-containerimage (Open Container Initiative) dat is geconverteerd om te worden gebruikt als rootbestandssysteem voor een sandbox.
Een momentopname is een op een bepaald moment vastgelegde opname van de volledige toestand van een sandbox die onafhankelijk van de bronsandbox blijft bestaan.
De status van een sandbox kan actief of gestopt zijn. Wanneer een sandbox stopt, automatisch of op aanvraag, worden de rekenresources ervan vrijgegeven. Geheugenmodus bewaart de volledige geheugenimage van de sandbox en de lokale schijf. De schijfmodus behoudt alleen de lokale schijf, zodat de microVM en de bijbehorende processen opnieuw worden opgestart wanneer u de sandbox hervat.
Volumes: De lokale schijf behoort tot een afzonderlijke sandbox. Een sandboxvolume biedt permanente opslag die onafhankelijk van een afzonderlijke sandbox bestaat. U kunt Azure Blob Storage volumes tegelijkertijd koppelen aan meerdere sandboxes, terwijl gegevensschijfvolumes die worden ondersteund door Azure Disk Storage in slechts één sandbox tegelijk kunnen worden gekoppeld. De back-upopslagservice bepaalt de duurzaamheid en herstelopties voor volumegegevens.
Zie Overzicht van Azure Container Apps-sandboxes voor meer informatie over sandbox-architectuur en resources.
Fysieke architectuur
Sandboxes draaien op meerdere onafhankelijke computeclusters die Microsoft beheert. U bent verantwoordelijk voor het configureren van de sandbox-groepen, sandboxes en andere resources die u implementeert. Microsoft is verantwoordelijk voor clusterimplementatie, configuratie, capaciteitsbeheer, statuscontrole en onderhoud. U selecteert, implementeert, configureert of beheert de clusters niet. De dienst plant nieuwe sandboxen in en start gestopte sandboxen opnieuw op op gezonde clusters, en leidt plaatsingen om ongezonde clusters heen.
Microsoft onderhoudt redundante statusarchieven voor serviceconfiguratie, sandboxmetagegevens en artefacten, zoals schijfinstallatiekopieën en momentopnamen.
Tolerantie voor tijdelijke fouten
Tijdelijke fouten zijn korte, onregelmatige fouten in onderdelen. Ze vinden vaak plaats in een gedistribueerde omgeving, zoals de cloud, en ze zijn een normaal onderdeel van de bewerkingen. Tijdelijke fouten corrigeren zichzelf na een korte periode. Het is belangrijk dat uw toepassingen tijdelijke fouten kunnen afhandelen, meestal door de betreffende aanvragen opnieuw uit te voeren.
Alle cloudtoepassingen moeten de Azure richtlijnen voor tijdelijke foutafhandeling volgen wanneer ze communiceren met api's, databases en andere onderdelen die in de cloud worden gehost. Zie Aanbevelingen voor het afhandelen van tijdelijke fouten voor meer informatie.
Wanneer u Container Apps Sandboxes gebruikt, kunt u tijdelijke fouten overwegen in de volgende onderdelen van uw oplossing:
Sandbox-beheerbewerkingen: Wanneer uw automatisering sandbox-groepen, sandboxes of gerelateerde resources beheert, kunt u aanvragen opnieuw proberen die mislukken vanwege tijdelijke fouten en exponentieel uitstel gebruiken. Beperk het aantal nieuwe pogingen en voer alleen bewerkingen uit die veilig kunnen worden herhaald.
Code die wordt uitgevoerd in een sandbox: Tijdelijke foutafhandeling implementeren voor aanroepen naar externe API's, databases en andere services. Volg de richtlijnen voor opnieuw proberen voor elke afhankelijkheid, omdat het gedrag en de bewerkingen voor opnieuw proberen die veilig kunnen worden herhaald, per service verschillen.
Tolerantie voor fouten in beschikbaarheidszones
Container Apps Sandboxes bieden geen ondersteuning voor implementatie in een specifieke beschikbaarheidszone of zoneredundantie voor een sandboxgroep. Als u uw workload bestand wilt maken tegen fouten in de beschikbaarheidszone, implementeert u afzonderlijke sandbox-groepen in meerdere regio's. Zie Tolerantie voor regiobrede fouten voor meer informatie.
Tolerantie voor storingen in de hele regio
Container Apps Sandboxes is een service met één regio. Als de regio niet meer beschikbaar is, zijn ook uw sandboxgroepen en de sandboxes die deze bevatten niet meer beschikbaar. De service repliceert geen sandbox-groepen of sandboxes tussen regio's en er wordt niet automatisch een failover naar een andere regio uitgevoerd. U kunt echter afzonderlijke sandbox-groepen in meerdere regio's implementeren. U bent verantwoordelijk voor het beschikbaar stellen van afhankelijkheden in elke regio en het beheren van de verdeling van workloads en failover. Zie Aangepaste oplossingen voor meerdere regio's voor tolerantie voor meer informatie.
Tijdens een regiobrede fout verliest u mogelijk alle statussen die alleen in het geheugen van een actieve sandbox worden bewaard. Sandbox-groepen, sandboxen en door de service beheerde artefacten in de getroffen regio blijven niet beschikbaar totdat de regio is hersteld.
Sandbox-volumes bieden opslag die behouden blijft na afloop van de levenscyclus van een individuele sandbox. Tijdens een regiobrede fout is de beschikbaarheid en herstel van volumes afhankelijk van de back-upopslagservice en de configuratie ervan. Container Apps Sandboxes bieden geen replicatie of failover tussen regio's voor volumegegevens. In plaats daarvan biedt de back-upopslagservice deze mogelijkheden wanneer deze zijn geconfigureerd. Bijvoorbeeld, raadpleeg Betrouwbaarheid in Azure Blob Storage voor informatie over Azure Blob Storage-volumes.
Aangepaste multiregionale oplossingen voor veerkracht
Azure Container Apps Sandboxes coördineert geen implementaties in meerdere regio's of repliceert sandboxgroepen, sandboxes of de bijbehorende resources tussen regio's. Als u een aangepaste oplossing voor meerdere regio's wilt maken, hebt u de volgende verantwoordelijkheden:
Regionale implementaties en afhankelijkheden: Implementeer een afzonderlijke sandboxgroep in elke regio die u wilt gebruiken. Bewaar de configuratie, schijfinstallatiekopieën, geheimen en andere afhankelijkheden die beschikbaar zijn in elke regio.
Foutdetectie en herstel van workload: Configureer uw toepassing of indelingslaag om te detecteren wanneer een regio niet beschikbaar is, nieuwe sandbox-creatie en workloadverwerking naar een gezonde regio te leiden en te bepalen hoe het werk opnieuw moet worden opgestart.
Verkeersroutering: Als clients verbinding maken via regiospecifieke eindpunten die uw toepassing beschikbaar maakt, gebruikt u een globale taakverdelingsservice, zoals Azure Front Door of Azure Traffic Manager, om verkeer naar een gezond eindpunt te routeren.
Gegevensreplicatie en herstel: Sla elke status op die is vereist na een failover in een extern gegevensarchief dat ondersteuning biedt voor replicatie en herstel in meerdere regio's. Als een back-upopslagservice replicatie tussen regio's biedt voor volumegegevens, bepaalt die service het replicatie- en failovergedrag. Azure Container Apps Sandboxes repliceert geen volumegegevens tussen regio's en voert geen failover uit.
Back-up maken en terugzetten
Gebruik geen sandbox-geheugen of lokale schijf als uw enige duurzame gegevensopslag. Wanneer u een sandbox opschort, blijven de lokale opslag en, in de geheugenmodus, de geheugentoestand behouden. U kunt ook momentopnamen maken die onafhankelijk van de bron-sandbox behouden blijven. Opgeschorte status en momentopnamen blijven beperkt tot de regionale sandbox-groep en zijn geen regio-overschrijdende back-ups.
Gebruik een sandboxvolume voor gegevens die na de levenscyclus van een afzonderlijke sandbox moeten blijven bestaan. De back-upopslagservice en de configuratie bepalen de mogelijkheden voor back-up en herstel voor volumegegevens. Voor externe gegevensarchieven die u beheert, bent u verantwoordelijk voor het configureren van back-up en herstel in meerdere regio's om te voldoen aan uw duurzaamheid en hersteldoelstellingen.
Als u de sandbox-implementatie opnieuw wilt maken na onbedoelde verwijdering of een fout in de hele regio, slaat u de configuratie van uw sandboxgroep op in versiebeheerde sjablonen voor infrastructuur als code, zoals Bicep of Terraform. Bewaar de installatiekopieën van de bronschijf in een register dat voldoet aan uw herstelvereisten.
Voor de meeste oplossingen hoeft u niet uitsluitend te vertrouwen op back-ups. Gebruik in plaats daarvan de andere mogelijkheden die in deze handleiding worden beschreven om uw tolerantievereisten te ondersteunen. Back-ups beschermen echter tegen enkele risico's die andere benaderingen niet opleveren. Zie Wat zijn redundantie, replicatie en back-up? voor meer informatie.
Tolerantie voor serviceonderhoud
Microsoft past regelmatig service-updates toe en voert ander onderhoud uit. Het Azure platform verwerkt deze activiteiten automatisch en zorgt ervoor dat onderhoud naadloos en transparant voor u is. Tijdens onderhoudsbewerkingen kunt u korte onderbrekingen observeren. Deze onderbrekingen duren doorgaans een paar seconden. Zorg ervoor dat clienttoepassingen zijn geconfigureerd voor het afhandelen van tijdelijke fouten , zodat ze bestand zijn tegen korte onderbrekingen.
Wanneer onderhoud gevolgen heeft voor een actieve sandbox, behoudt het platform de status ervan, verplaatst het deze naar goed functionerende computecapaciteit en hervat het deze automatisch. Voor sandboxes die gebruikmaken van de geheugenmodus, behoudt het platform geheugen en lokale schijfstatus. Voor sandboxes die gebruikmaken van de schijfmodus, behoudt het platform alleen de status van de lokale schijf.
Diensteniveau-overeenkomst
Azure Container Apps Sandboxes biedt geen SLA (Service Level Agreement) voor beschikbaarheid. Opslagservices die back-ups maken van uw sandboxvolumes en externe gegevensarchieven die door uw oplossing worden gebruikt, hebben mogelijk afzonderlijke SLA's. Zie ServiceOvereenkomsten voor Online Services voor meer informatie.