Wat is Azure Resource Manager?

Azure Resource Manager is de implementatie- en beheerservice voor Azure. Het biedt een beheerlaag waarmee u resources in uw Azure-account kunt maken, bijwerken en verwijderen. U kunt beheerfuncties gebruiken, zoals toegangscontrole, vergrendelingen en tags, om uw resources te beveiligen en te organiseren na de implementatie.

Zie het overzicht van arm-sjablonen (Arm-sjablonen) voor meer informatie over Azure Resource Manager-sjablonen. Zie Bicep-overzicht voor meer informatie over Bicep.

In de volgende video worden de basisconcepten van Azure Resource Manager behandeld.

Consistente beheerlaag

Wanneer u een aanvraag verzendt via een van de Azure-API's, hulpprogramma's of SDK's, ontvangt Resource Manager de aanvraag. De aanvraag wordt geverifieerd en geautoriseerd voordat deze naar de juiste Azure-service wordt doorgestuurd. Omdat alle aanvragen worden verwerkt via dezelfde API, ziet u consistente resultaten en mogelijkheden in de verschillende hulpprogramma's.

In de volgende afbeelding ziet u welke rol Azure Resource Manager speelt bij het verwerken van Azure-aanvragen.

Diagram that shows the role of Azure Resource Manager in handling Azure requests.

Alle mogelijkheden die beschikbaar zijn in de Azure-portal zijn ook beschikbaar via Azure PowerShell, Azure CLI, de Azure REST API's en client-SDK's. Functionaliteit die in eerste instantie wordt uitgebracht via API's, wordt binnen 180 dagen na de eerste release weergegeven in de portal.

Belangrijk

Azure Resource Manager biedt alleen ondersteuning voor Tls 1.2 (Transport Layer Security) 1.2 of hoger in het najaar van 2023. Zie Migreren naar TLS 1.2 voor Azure Resource Manager voor meer informatie.

Terminologie

Als u nog geen ervaring hebt met de Azure Resource Manager, zijn er enkele termen die u mogelijk niet kent.

  • resource - een beheerbaar item dat beschikbaar is via Azure. Virtuele machines, opslagaccounts, web-apps, databases en virtuele netwerken zijn voorbeelden van resources. Resourcegroepen, abonnementen, beheergroepen en tags zijn ook voorbeelden van resources.
  • resourcegroep - een container met gerelateerde resources voor een Azure-oplossing. De resourcegroep bevat die resources die u als groep wilt beheren. U bepaalt welke resources deel uitmaken van een resourcegroep op basis van wat voor uw organisatie het meest zinvol is. Zie Wat is een resourcegroep?
  • resourceprovider - een service die zorgt voor Azure-resources. Een veelgebruikte resourceprovider is bijvoorbeeld Microsoft.Compute, die de virtuele machine levert. Microsoft.Storage is een andere veel voorkomende resourceprovider. Zie Resourceproviders en -typen.
  • Declaratieve syntaxis- Syntaxis waarmee u kunt aangeven dat 'Dit is wat ik wil maken' zonder dat u de reeks programmeeropdrachten hoeft te schrijven om deze te maken. ARM-sjablonen en Bicep-bestanden zijn voorbeelden van declaratieve syntaxis. In deze bestanden definieert u de eigenschappen voor de infrastructuur die in Azure moet worden geïmplementeerd.
  • ARM-sjabloon : een JSON-bestand (JavaScript Object Notation) dat een of meer resources definieert die moeten worden geïmplementeerd in een resourcegroep, abonnement, beheergroep of tenant. De sjabloon kan worden gebruikt om de resources consistent en herhaaldelijk te implementeren. Zie Overzicht van sjabloonimplementatie.
  • Bicep-bestand: een bestand voor het declaratief implementeren van Azure-resources. Bicep is een taal die is ontworpen om de beste ontwerpervaring te bieden voor infrastructuur als codeoplossingen in Azure. Zie Bicep-overzicht.
  • extensieresource : een resource die wordt toegevoegd aan de mogelijkheden van een andere resource. Een roltoewijzing is bijvoorbeeld een extensieresource. U past een roltoewijzing toe op een andere resource om toegang op te geven. Zie Extensiebronnen.

Zie basisconcepten van Azure voor meer definities van Azure-terminologie.

De voordelen van Resource Manager

Met Resource Manager kunt u het volgende doen:

  • Uw infrastructuur beheren via declaratieve sjablonen in plaats van scripts.

  • Alle resources voor uw oplossing implementeren, beheren en bewaken als groep, in plaats van deze resources afzonderlijk te verwerken.

  • Uw oplossing gedurende de ontwikkelingscyclus herhaaldelijk implementeren en erop vertrouwen dat de resources consistent worden geïmplementeerd.

  • De afhankelijkheden tussen resources zo definiëren dat deze in de juiste volgorde worden geïmplementeerd.

  • Toegangsbeheer toepassen op alle services omdat op rollen gebaseerde toegangscontrole van Azure (Azure RBAC) is geïntegreerd in het beheerplatform.Toegangsbeheer toepassen op alle services omdat op rollen gebaseerd toegangsbeheer (RBAC) is geïntegreerd in het beheerplatform.

  • Tags toepassen op de resources om alle resources in uw abonnement op een logische manier te organiseren.

  • De facturering van uw organisatie transparanter maken door te kijken naar de kosten voor een groep resources met dezelfde tag.

Bereik

Azure biedt vier beheerniveaus: beheergroepen, abonnementen, resourcegroepen en resources. In de volgende afbeelding ziet u een voorbeeld van deze lagen.

Diagram that illustrates the four levels of scope in Azure: management groups, subscriptions, resource groups, and resources.

U past beheerinstellingen toe op elk van deze bereikniveaus. Het niveau dat u selecteert, bepaalt hoe breed de instelling wordt toegepast. Lagere niveaus nemen instellingen over van hogere niveaus. Als u een beleid bijvoorbeeld toepast op het abonnement, wordt het beleid toegepast op alle resourcegroepen en resources in het abonnement. Wanneer u een beleid toepast op de resourcegroep, wordt dit beleid toegepast op de resourcegroep en alle bijbehorende resources. Een andere resourcegroep beschikt echter niet over die beleidstoewijzing.

Zie Microsoft Entra-id voor informatie over het beheren van identiteiten en toegang.

U kunt sjablonen implementeren op tenants, beheergroepen, abonnementen of resourcegroepen.

Wat is een resourcegroep?

Een resourcegroep is een container waarmee u gerelateerde resources voor een Azure-oplossing kunt beheren. Met behulp van de resourcegroep kunt u wijzigingen in de gerelateerde resources coördineren. U kunt bijvoorbeeld een update implementeren in de resourcegroep en erop vertrouwen dat de resources worden bijgewerkt in een gecoördineerde bewerking. Als u klaar bent met de oplossing, kunt u de resourcegroep verwijderen en weten dat alle resources worden verwijderd.

Er zijn een aantal belangrijke factoren waarmee u rekening moet houden bij het definiëren van de resourcegroep:

  • Alle resources in uw groep moeten dezelfde levenscyclus hebben. U implementeert ze samen, werkt ze samen bij en verwijdert ze samen. Als een bepaalde resource, zoals een server, onderdeel moet zijn van een andere implementatiecyclus, moet deze in een andere resourcegroep worden geplaatst.

  • Elke resource kan maar in één resourcegroep voorkomen.

  • U kunt een resource op elk gewenst moment toevoegen aan of verwijderen uit een resourcegroep.

  • U kunt een resource van de ene naar de andere resourcegroep verplaatsen. Zie voor meer informatie Resources verplaatsen naar een nieuwe resourcegroep of een nieuw abonnement.

  • De resources in een resourcegroep kunnen zich in andere regio's bevinden dan de resource groep.

  • Wanneer u een resourcegroep maakt, moet u een locatie voor die resourcegroep opgeven.

    U vraagt zich misschien af: 'Waarom heeft een resourcegroep een locatie nodig? En als de resources andere locaties kunnen hebben dan de resourcegroep, wat is dan het nut van een locatie voor de resourcegroep?'

    De resourcegroep slaat metagegevens op over de resources. Als u een locatie voor de resourcegroep opgeeft, geeft u op waar deze metagegevens worden opgeslagen. In verband met nalevingsvereisten moet u er mogelijk voor zorgen dat uw gegevens worden opgeslagen in een bepaalde regio.

    Om statusconsistentie voor de resourcegroep te garanderen, worden alle besturingsvlakbewerkingen gerouteerd via de locatie van de resourcegroep. Wanneer u een locatie voor een resourcegroep selecteert, wordt u aangeraden een locatie te selecteren dicht bij de locatie waar uw besturingsbewerkingen vandaan komen. Normaal gesproken is deze locatie de locatie die het dichtst bij uw huidige locatie ligt. Deze routeringsvereiste is alleen van toepassing op besturingsvlakbewerkingen voor de resourcegroep. Dit heeft geen invloed op aanvragen die naar uw toepassingen worden verzonden.

    Als de regio van een resourcegroep tijdelijk niet beschikbaar is, kunt u mogelijk geen resources in de resourcegroep bijwerken omdat de metagegevens niet beschikbaar zijn. De resources in andere regio's werken nog steeds zoals verwacht, maar u kunt ze mogelijk niet bijwerken. Deze voorwaarde kan ook van toepassing zijn op globale resources zoals Azure DNS, Azure DNS-privézones, Azure Traffic Manager en Azure Front Door. U kunt bekijken welke typen hun metagegevens hebben die worden beheerd door Azure Resource Manager via de lijst met typen voor de Azure Resource Graph-resourcetabel.

    Zie Betrouwbare Azure-toepassingen ontwerpen voor meer informatie over het bouwen van betrouwbare toepassingen.

  • Een resourcegroep kan worden gebruikt voor het bepalen van de mate van toegangsbeheer voor beheertaken. Als u een resourcegroep wilt beheren, kunt u Azure-beleidsregels, Azure-rollenof resourcevergrendelingen toewijzen.

  • U kunt tags toepassen op een resourcegroep. De resources in de resourcegroep nemen deze tags niet over.

  • Een resource kan verbinding maken met resources in andere resourcegroepen. Dit scenario is gebruikelijk wanneer de twee resources gerelateerd zijn, maar niet dezelfde levenscyclus hebben. U kunt bijvoorbeeld een web-app hebben die verbinding maakt met een database in een andere resourcegroep.

  • Wanneer u een resourcegroep verwijdert, worden ook alle resources in de resourcegroep verwijderd. Zie Azure Resource Manager-resourcegroep en het verwijderen van resourcesvoor meer informatie over hoe Azure Resource Manager deze verwijdert.

  • U kunt maximaal 800 exemplaren van een resourcetype implementeren in elke resourcegroep. Sommige resourcetypen worden uitgesloten van de limiet van 800 exemplaren. Zie resourcegroeplimieten voor meer informatie.

  • Sommige resources kunnen buiten een resourcegroep bestaan. Deze resources worden geïmplementeerd in het abonnement, de beheergroep of de tenant. In deze bereiken worden alleen specifieke resourcetypen ondersteund.

  • Als u een resourcegroep wilt maken, kunt u de portal, PowerShell, Azure CLI of een ARM-sjabloon gebruiken.

Tolerantie van Azure Resource Manager

De Azure Resource Manager-service is ontworpen voor tolerantie en voortdurende beschikbaarheid. Resource Manager-bewerkingen en besturingsvlakbewerkingen (aanvragen die zijn verzonden naar management.azure.com) in de REST API zijn:

  • Gedistribueerd over verschillende regio's. Azure Resource Manager heeft een afzonderlijk exemplaar in elke regio van Azure, wat betekent dat een storing van het Azure Resource Manager-exemplaar in één regio geen invloed heeft op de beschikbaarheid van Azure Resource Manager of andere Azure-services in een andere regio. Hoewel Azure Resource Manager wordt verdeeld over regio's, zijn sommige services regionaal. Dit onderscheid betekent dat, terwijl de eerste verwerking van de besturingsvlakbewerking tolerant is, de aanvraag mogelijk vatbaar is voor regionale storingen wanneer deze naar de service wordt doorgestuurd.

  • Verdeeld over Beschikbaarheidszones (en regio's) op locaties met meerdere Beschikbaarheidszones. Deze distributie zorgt ervoor dat wanneer een regio een of meer zones verliest, Azure Resource Manager een failover naar een andere zone of naar een andere regio kan uitvoeren om de beheervlakmogelijkheden voor de resources te blijven bieden.

  • Niet afhankelijk van één logisch datacentrum.

  • Nooit offline gezet voor onderhoudsactiviteiten.

Deze tolerantie is van toepassing op services die aanvragen ontvangen via Resource Manager. Key Vault heeft bijvoorbeeld voordelen vanwege deze tolerantie.

Locatie-uitlijning van resourcegroep

Als u de impact van regionale storingen wilt verminderen, raden we u aan om resources in dezelfde regio te vinden als de resourcegroep.

De locatie van de resourcegroep is waar Azure Resource Manager metagegevens voor de resources in de resourcegroep opslaat. Azure Resource Manager gebruikt deze locatie voor routering en caching. Wanneer u bijvoorbeeld uw resources vermeldt in het bereik van het abonnement of de resourcegroep, haalt Azure Resource Manager de informatie op uit de cache.

Wanneer de regio van de resourcegroep niet beschikbaar is, kan Azure Resource Manager de metagegevens van uw resource niet bijwerken en worden uw schrijfaanroepen geblokkeerd. Door uw resource- en resourcegroepregio te verplaatsen, vermindert u het risico dat regio niet beschikbaar is, omdat uw resources en metagegevens zich in één regio bevinden in plaats van meerdere regio's.

Gelijktijdige bewerkingen oplossen

Wanneer twee of meer bewerkingen tegelijkertijd dezelfde resource proberen bij te werken, detecteert Azure Resource Manager het conflict en kan slechts één bewerking worden voltooid. Azure Resource Manager blokkeert de andere bewerkingen en retourneert een fout.

Gelijktijdige resource-updates kunnen onverwachte resultaten veroorzaken. Deze oplossing zorgt ervoor dat uw updates deterministisch en betrouwbaar zijn. U kent de status van uw resources en voorkomt inconsistentie of gegevensverlies.

Stel dat u twee aanvragen (A en B) hebt die dezelfde resource tegelijkertijd proberen bij te werken. Als aanvraag A is voltooid voordat aanvraag B, slaagt aanvraag A en mislukt aanvraag B. Aanvraag B retourneert de 409-fout. Nadat u deze foutcode hebt opgehaald, kunt u de bijgewerkte status van de resource ophalen en bepalen of u aanvraag B opnieuw wilt verzenden.

Volgende stappen