Condividi tramite


Multitenancy e Azure Resource Manager

Azure Resource Manager è il servizio di gestione delle risorse di base per Azure. Crea, gestisce ed elimina ogni risorsa di Azure, incluse macchine virtuali, account di archiviazione e database. Quando si compila una soluzione multi-tenant, spesso si usa Resource Manager per effettuare il provisioning dinamico delle risorse per ogni tenant. Questo articolo descrive le funzionalità principali di Resource Manager che si applicano alle soluzioni multi-tenant. Include anche collegamenti a linee guida che consentono di usare Resource Manager.

Funzionalità di Resource Manager che supportano la multitenancy

Infrastruttura come codice

Resource Manager fornisce strumenti per supportare l'infrastruttura come codice (IaC). È consigliabile definire IaC per tutte le soluzioni nel cloud, ma è particolarmente utile per le soluzioni multi-tenant. Una soluzione multi-tenant spesso richiede la scalabilità delle distribuzioni e il provisioning di nuove risorse quando si esegue l'onboarding di nuovi tenant. La creazione manuale delle risorse o la configurazione richiede più tempo e crea più rischi. Un approccio manuale comporta un processo di distribuzione meno affidabile nel complesso.

Usare Bicep per distribuire IaC da una pipeline di distribuzione. Bicep è un linguaggio progettato per distribuire e gestire le risorse di Azure in modo dichiarativo. È anche possibile usare modelli di Azure Resource Manager JSON (modelli ARM), Terraform o altri prodotti partner che accedono alle API di Resource Manager sottostanti.

Gli stack di distribuzione consentono di gestire un set di risorse come singola unità, anche se si estendono tra gruppi di risorse o sottoscrizioni. Gli stack di distribuzione sono utili se si effettua il provisioning di più risorse specifiche del tenant in posizioni diverse ed è necessario gestire il ciclo di vita come un'unità logica.

Le specifiche del modello aiutano a fornire nuove risorse, modelli di distribuzione o ambienti da un unico modello ben parametrizzato. Usare le specifiche di modello per creare un repository centrale di modelli usati per distribuire l'infrastruttura specifica del tenant. Azure archivia e gestisce questi modelli. È possibile riutilizzare le specifiche del modello ogni volta che è necessario distribuire l'infrastruttura.

In alcune soluzioni è possibile scrivere codice personalizzato per effettuare il provisioning o configurare in modo dinamico le risorse o avviare una distribuzione di modelli. È possibile usare gli SDK di Azure nel codice per gestire l'ambiente di Azure. Seguire le procedure consigliate per l'autenticazione dell'applicazione in Resource Manager. Per evitare di archiviare e gestire le credenziali, usare le identità gestite.

Controllo dell'accesso basato sui ruoli di Azure

Il controllo degli accessi in base al ruolo di Azure offre un approccio granulare per gestire l'accesso alle risorse di Azure. In una soluzione multiutente, valutare se le risorse richiedono criteri RBAC di Azure specifici. Ad esempio, alcuni tenant potrebbero gestire i dati sensibili e potrebbe essere necessario applicare il controllo degli accessi in base al ruolo di Azure per concedere l'accesso a determinati utenti senza includere altre persone nell'organizzazione. I tenant possono anche richiedere l'accesso diretto alle risorse di Azure, ad esempio durante un controllo. Se si consente questo accesso, le autorizzazioni di Controllo degli accessi in base al ruolo di Azure con ambito specifico consentono di concedere l'accesso ai dati di un tenant senza esporre i dati di altri tenant.

Etichette

Usare i tag per aggiungere metadati personalizzati alle risorse, ai gruppi di risorse e alle sottoscrizioni di Azure. Prendere in considerazione l'assegnazione di tag alle risorse specifiche del tenant con l'identificatore del tenant in modo da semplificare la gestione delle risorse e tenere traccia e allocare i costi di Azure.

Quote di risorse di Azure

Resource Manager è il servizio centrale in Azure che applica limiti e quote in molti altri servizi di Azure. Prendere in considerazione queste quote durante il processo di progettazione. Tutte le risorse di Azure hanno definito limiti, incluso il numero di richieste consentite per Resource Manager entro un determinato periodo di tempo. Se si supera questo limite, Resource Manager limita le richieste.

Quando si compila una soluzione multi-tenant che esegue distribuzioni automatizzate, è possibile raggiungere questi limiti più velocemente rispetto ad altri clienti. Anche le soluzioni multi-tenant che effettuano il provisioning di grandi quantità di infrastruttura possono attivare questi limiti.

Un provider di risorse gestisce ogni servizio di Azure. Il provider di risorse potrebbe anche definire i propri limiti. Ad esempio, il provider di risorse di calcolo di Azure gestisce il provisioning delle macchine virtuali e definisce i limiti per il numero di richieste consentite entro un breve periodo. Per altre informazioni, vedere Limiti del provider di risorse.

Se si rischia di superare i limiti di Resource Manager o del provider di risorse, prendere in considerazione le mitigazioni seguenti:

  • Distribuire il carico di lavoro tra più sottoscrizioni di Azure.

  • Usare più gruppi di risorse all'interno di ogni sottoscrizione.

  • Inviare richieste da diverse entità di Microsoft Entra.

  • Richiedere allocazioni di quote aggiuntive. Per inviare una richiesta di allocazione della quota, in genere si apre un caso di supporto. Tuttavia, alcuni servizi forniscono API per queste richieste, ad esempio le istanze riservate delle macchine virtuali.

Scegliere le strategie di mitigazione che consentono di risolvere direttamente il limite specifico riscontrato.

Modelli di isolamento

In alcune soluzioni multi-tenant è possibile distribuire risorse separate o dedicate per ogni tenant. Resource Manager offre diversi modelli che è possibile usare per isolare le risorse, a seconda dei requisiti e dei motivi dell'isolamento. Per altre informazioni, vedere Organizzazione delle risorse di Azure in soluzioni multi-tenant.

Contributori

Microsoft gestisce questo articolo. I collaboratori seguenti hanno scritto questo articolo.

Autore principale:

Altro collaboratore:

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.