Dela via


Multitenans och Azure Resource Manager

Azure Resource Manager är den viktigaste resurshanteringstjänsten för Azure. Den skapar, hanterar och tar bort alla Azure-resurser, inklusive virtuella datorer, lagringskonton och databaser. När du skapar en lösning för flera klienter använder du ofta Resource Manager för att dynamiskt etablera resurser för varje klientorganisation. I den här artikeln beskrivs viktiga funktioner i Resource Manager som gäller för lösningar med flera klientorganisationer. Den innehåller även länkar till vägledning som kan hjälpa dig att använda Resource Manager.

Funktioner i Resource Manager som stöder flera klientorganisationer

Infrastruktur som kod

Resource Manager tillhandahåller verktyg för att stödja infrastruktur som kod (IaC). Du bör definiera IaC för alla lösningar i molnet, men det är särskilt värdefullt för lösningar med flera klientorganisationer. En lösning med flera klienter kräver ofta att du anpassar distributioner och etablerar nya resurser när du tar in nya klienter. Manuellt skapande eller konfiguration av resurser tar längre tid och skapar större risker. En manuell metod resulterar i en mindre tillförlitlig distributionsprocess överlag.

Använd Bicep för att distribuera IaC från en distributionspipeline. Bicep är ett språk som är utformat för att distribuera och hantera Azure-resurser på ett deklarativt sätt. Du kan också använda JSON Azure Resource Manager-mallar (ARM-mallar), Terraform eller andra partnerprodukter som har åtkomst till underliggande Resource Manager-API:er.

Distributionsstackar hjälper dig att hantera en uppsättning resurser som en enda enhet, även om de sträcker sig över resursgrupper eller prenumerationer. Distributionsstackar är användbara om du etablerar flera klientspecifika resurser på olika platser och behöver hantera deras livscykel som en logisk enhet.

Mallspecifikationer hjälper dig att etablera nya resurser, distributionsstämplar eller miljöer från en enda, välparameteriserad mall. Använd mallspecifikationer för att skapa en central lagringsplats med mallar som du använder för att distribuera din klientspecifika infrastruktur. Azure lagrar och hanterar dessa mallar. Du kan återanvända mallspecifikationerna när du behöver distribuera infrastrukturen.

I vissa lösningar kan du skriva anpassad kod för att dynamiskt etablera eller konfigurera resurser eller initiera en malldistribution. Du kan använda Azure SDK:er i koden för att hantera din Azure-miljö. Följ metodtipsen för att autentisera ditt program till Resource Manager. Använd hanterade identiteter för att undvika att lagra och hantera autentiseringsuppgifter.

Rollbaserad åtkomstkontroll i Azure

Rollbaserad åtkomstkontroll i Azure (Azure RBAC) ger en detaljerad metod för att hantera åtkomst till dina Azure-resurser. I en lösning med flera klientorganisationer utvärderar du om resurser kräver specifika Azure RBAC-principer. Vissa klienter kan till exempel hantera känsliga data och du kan behöva använda Azure RBAC för att bevilja åtkomst till vissa personer utan att inkludera andra personer i din organisation. Klienter kan också begära direkt åtkomst till sina Azure-resurser, till exempel under en granskning. Om du tillåter den här åtkomsten kan väl begränsade Azure RBAC-behörigheter göra det möjligt för dig att bevilja åtkomst till en klientorganisations data utan att exponera andra klientorganisationers data.

Etiketter

Använd taggar för att lägga till anpassade metadata till dina Azure-resurser, resursgrupper och prenumerationer. Överväg att tagga dina klientspecifika resurser med klientorganisationens identifierare så att du kan förenkla resurshanteringen och spåra och allokera Azure-kostnader.

Azure-resurskvoter

Resource Manager är den centrala tjänsten i Azure som tillämpar gränser och kvoter för många andra Azure-tjänster. Tänk på dessa kvoter under hela designprocessen. Alla Azure-resurser har definierade gränser, inklusive antalet begäranden som tillåts mot Resource Manager inom en viss tidsperiod. Om du överskrider den här gränsen begränsar Resource Manager begäranden.

När du skapar en lösning med flera klientorganisationer som utför automatiserade distributioner kan du nå dessa gränser snabbare än andra kunder. Lösningar för flera klientorganisationer som etablerar stora mängder infrastruktur kan också utlösa dessa gränser.

En resursprovider hanterar varje Azure-tjänst. Resursprovidern kan också definiera sina egna gränser. Azure Compute Resource Provider hanterar till exempel etableringen av virtuella datorer och definierar gränser för antalet tillåtna begäranden inom en kort period. Mer information finns i Begränsningar för resursprovider.

Om du riskerar att överskrida Resource Manager- eller resursproviderns gränser bör du överväga följande åtgärder:

  • Distribuera din arbetsbelastning över flera Azure-prenumerationer.

  • Använd flera resursgrupper i varje prenumeration.

  • Skicka begäranden från olika Microsoft Entra-principaler.

  • Begär extra kvotallokeringar. Om du vill skicka en begäran om kvotallokering öppnar du vanligtvis ett supportärende. Men vissa tjänster tillhandahåller API:er för dessa begäranden, till exempel reserverade instanser för virtuella datorer.

Välj åtgärdsstrategier som direkt hanterar den specifika gräns som du stöter på.

Isoleringsmodeller

I vissa lösningar för flera klienter kan du distribuera separata eller dedikerade resurser för varje klientorganisation. Resource Manager innehåller flera modeller som du kan använda för att isolera resurser, beroende på dina krav och orsaker till isolering. Mer information finns i Azure-resursorganisationen i lösningar med flera klientorganisationer.

Bidragsgivare

Microsoft ansvarar för den här artikeln. Följande deltagare skrev den här artikeln.

Huvudförfattare:

  • John Downs | Principal Software Engineer, Azure Patterns &Practices

Annan deltagare:

Om du vill se linkedin-profiler som inte är offentliga loggar du in på LinkedIn.