Definire una convenzione di denominazione personalizzata
Un buon nome per una risorsa consente di identificare rapidamente il tipo, il carico di lavoro associato, il relativo ambiente e l'area di Azure in cui viene eseguito. A tale scopo, i nomi devono seguire un formato coerente, ovvero una convenzione di denominazione, costituita da informazioni importanti su ogni risorsa. Le informazioni nei nomi includono idealmente qualsiasi elemento necessario per identificare istanze specifiche delle risorse. Ad esempio, un indirizzo IP pubblico (PIP) per un carico di lavoro SharePoint di produzione nell'area Stati Uniti occidentali potrebbe essere pip-sharepoint-prod-westus-001
.
Diagramma 1: Componenti di un nome di risorsa di Azure.
Componenti di denominazione consigliati
Quando si costruisce la convenzione di denominazione, identificare le informazioni chiave da acquisire in un nome di risorsa. Le diverse informazioni sono rilevanti per i diversi tipi di risorse e non tutti i componenti di denominazione stabiliti possono essere usati per ogni tipo di risorsa. Stabilire una convenzione di denominazione standard per l'ambiente che è facile da seguire, concisa e utile per riconoscere le informazioni rilevanti per la risorsa distribuita.
L'elenco seguente fornisce esempi di componenti di denominazione utili quando si creano nomi di risorse:
Componente di denominazione | Descrizione |
---|---|
Azienda | Nome di primo livello dell'organizzazione, normalmente utilizzato come gruppo di gestione principale o, in organizzazioni più piccole, parte della convenzione di denominazione. Esempio: contoso |
Business unit o reparto | Divisione di primo livello dell'azienda proprietaria della sottoscrizione o del carico di lavoro a cui appartiene la risorsa. Nelle organizzazioni più piccole, questo componente potrebbe rappresentare un singolo elemento aziendale di primo livello aziendale. Esempi: fin , mktg , product , it , corp |
Tipo di risorsa | Abbreviazione che rappresenta il tipo di risorsa o asset di Azure. Questo componente è spesso un prefisso o un suffisso nel nome. Per altre informazioni, vedere Abbreviazioni consigliate per i tipi di risorse di Azure. Esempi: rg , vm |
Nome progetto, applicazione o servizio | Nome di un progetto, di un'applicazione o di un servizio di cui fa parte la risorsa. Esempi: navigator , emissions , sharepoint , hadoop |
Ambiente | Fase del ciclo di vita di sviluppo per il carico di lavoro supportato dalla risorsa. Esempi: prod , dev , qa , stage , test |
Location | Area o provider di servizi cloud in cui viene distribuita la risorsa. Esempi: westus , eastus2 , westeu , usva , ustx |
Ruolo macchina virtuale | Identificatore dello scopo della macchina virtuale. Esempi: db (database), ws (server Web), ps (server di stampa) |
Istanza | Numero di istanze per una risorsa specifica, per differenziarlo da altre risorse con la stessa convenzione di denominazione e i componenti di denominazione. Esempi, 01 , 001 |
Nota
Anche se i nomi delle macchine virtuali in Azure possono essere più lunghi rispetto al nome NetBIOS consentito della macchina virtuale, è consigliabile mantenerli coerenti. Per altre informazioni e per altre restrizioni, vedere Nomi computer.
Considerazioni sulla denominazione
Oltre a definire i componenti di denominazione, è necessario considerare anche l'ordine in cui sono elencati i componenti di denominazione e quale tipo di delimitatori (se presente) deve essere visualizzato tra i componenti. Prendere in considerazione anche le diverse regole di denominazione associate ai tipi di risorse.
Ambito
Tutti i tipi di risorse di Azure hanno un ambito che definisce il livello di tale risorsa. Inoltre, una risorsa deve avere un nome univoco all'interno del relativo ambito.
Ad esempio, una rete virtuale ha l'ambito di un gruppo di risorse, il che significa che può essere presente una sola rete denominata vnet-prod-westus-001
in un gruppo di risorse specifico. Anche altri gruppi di risorse possono avere reti virtuali denominate vnet-prod-westus-001
, ma ogni gruppo di risorse può avere un solo gruppo di risorse con tale nome. L'ambito delle subnet è quello delle reti virtuali, quindi ogni subnet all'interno di una rete virtuale deve avere un nome distinto.
Alcuni nomi di risorse hanno un ambito globale, ad esempio un nome per una piattaforma distribuita come servizio (PaaS) con un endpoint pubblico o un'etichetta DNS della macchina virtuale. Una risorsa in un ambito globale deve avere un nome univoco nell'intera piattaforma Azure.
Diagramma 2: Livelli di ambito per i nomi delle risorse di Azure.
Regole di denominazione di Azure
Le regole di denominazione di Azure variano a seconda del tipo di risorsa. Quando si definisce una convenzione di denominazione, è importante comprendere le regole di denominazione di Azure per il tipo di risorsa per evitare confusione e ritardare le distribuzioni.
Ad esempio, i nomi delle risorse hanno limiti di lunghezza. È consigliabile mantenere breve la lunghezza dei componenti di denominazione per evitare di superare i limiti di lunghezza dei nomi delle risorse.
Nota
Il bilanciamento del contesto di un nome con il relativo ambito e limite di lunghezza è importante quando si sviluppano convenzioni di denominazione. Per altre informazioni, vedere Regole di denominazione e restrizioni per le risorse di Azure.
Quando si definisce la convenzione di denominazione, identificare le informazioni chiave che devono riflettersi in un nome di risorsa. Le informazioni importanti variano a seconda dei tipi di risorse. L'elenco seguente fornisce esempi di informazioni utili per la creazione di nomi di risorse.
È possibile abbreviare i nomi delle risorse e i componenti di denominazione come strategia per ridurre la lunghezza e la complessità dei nomi delle risorse. La riduzione dei nomi può essere utile per uno dei componenti di denominazione, ma è particolarmente importante mantenere i nomi delle risorse entro i limiti di lunghezza dei nomi. Ad esempio, un nome di macchina virtuale in Azure può essere più lungo rispetto alle restrizioni di denominazione del sistema operativo. Mantenere i nomi delle macchine virtuali di Azure più brevi rispetto alle restrizioni di denominazione del sistema operativo consente di creare coerenza, migliorare la comunicazione durante la discussione delle risorse e ridurre la confusione quando si lavora nel portale di Azure durante l'accesso alla macchina virtuale stessa.
Componente di denominazione | Descrizione |
---|---|
Tipo di risorsa | Abbreviazione che rappresenta il tipo di risorsa o asset di Azure. Questo componente viene spesso usato come prefisso o suffisso nel nome. Per altre informazioni, vedere Abbreviazioni consigliate per i tipi di risorse di Azure. Esempi: rg , vm |
Business Unit | Divisione di livello principale della società che possiede la sottoscrizione o carico di lavoro a cui appartiene la risorsa. Nelle organizzazioni più piccole questo componente potrebbe rappresentare un singolo elemento organizzativo di livello principale dell'azienda. Esempi: fin , mktg , product , it , corp |
Nome applicazione o servizio | Nome dell'applicazione, del carico di lavoro o del servizio di cui fa parte la risorsa. Esempi: navigator , emissions , sharepoint , hadoop |
Scopo della sottoscrizione | Descrizione riepilogativa dello scopo della sottoscrizione che contiene la risorsa. Spesso suddiviso in base all'ambiente o a carichi di lavoro specifici. Esempi: prod , shared , client |
Ambiente | Fase del ciclo di vita di sviluppo per il carico di lavoro supportato dalla risorsa. Esempi: prod , dev , qa , stage , test |
Area | Area di Azure in cui è distribuita la risorsa. Esempi: westus , eastus2 , westeu , usva , ustx |
Nota
Quando si è pronti per assegnare un nome alle risorse e agli asset, vedere Abbreviazioni consigliate per i tipi di risorse di Azure.
La sezione seguente fornisce nomi di esempio per i tipi di risorse comuni di Azure in una distribuzione cloud aziendale.
Nota
Alcuni di questi nomi di esempio usano uno schema di riempimento a tre cifre (###
), ad esempio mktg-prod-001
.
Il riempimento interna migliora la leggibilità e l'ordinamento degli asset quando tali asset vengono gestiti in un database di gestione della configurazione (CMDB), in uno strumento di gestione degli asset IT o in strumenti di contabilità tradizionali. Quando l'asset distribuito viene gestito centralmente come parte di un inventario o di un portfolio più ampio di asset IT, l'approccio di riempimento è allineato alle interfacce usate da tali sistemi per gestire la denominazione dell'inventario.
Sfortunatamente, l'approccio tradizionale alla spaziatura interna degli asset può rivelarsi problematico negli approcci di infrastruttura come codice che potrebbero scorrere gli asset in base a un numero non riempito. Questo approccio è comune durante le attività di distribuzione o gestione della configurazione automatizzata. Questi script devono rimuovere regolarmente il riempimento e convertire il numero riempito in un numero reale, rallentando lo sviluppo e la fase di esecuzione degli script.
Scegliere un approccio adatto all'organizzazione. La spaziatura interna illustrata di seguito illustra l'importanza di usare un approccio coerente alla numerazione dell'inventario, invece di mostrare quale approccio è superiore. Prima di scegliere uno schema di numerazione, con o senza spaziatura interna, valutare cosa influirà sulle operazioni a lungo termine: CMDB e soluzioni di gestione degli asset o gestione dell'inventario basata su codice. Seguire quindi in modo coerente l'opzione di riempimento più adatta alle proprie esigenze operative.
La sezione seguente fornisce alcuni nomi di esempio per i comuni tipi di risorse di Azure in una distribuzione cloud aziendale. Per altri esempi, vedere Lo strumento di denominazione di Azure.
Nota
Gli esempi seguenti sono destinati a fornire la visualizzazione di una convenzione di denominazione, ma le convenzioni effettive variano in base all'organizzazione.
Nomi di esempio: Generale
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
Gruppo di gestione | Business unit e/o dell'ambiente di |
mg-business< unit>[-<environment>] mg-mktg mg-hr mg-corp-prod mg-fin-client |
Abbonamento | Account/Contratto Enterprise | <Scopo> della sottoscrizione business unit-<><###> mktg-prod-001 corp-shared-001 fin-client-001 |
Gruppo di risorse | Subscription | Scopo> di rg-app< o nome-sottoscrizione>< del servizio-<###> rg-mktgsharepoint-prod-001 rg-acctlookupsvc-shared-001 rg-ad-dir-services-shared-001 |
Istanza del servizio Gestione API | Generale | apim-<app or service name> apim-navigator-prod |
Identità gestita | Gruppo di risorse | id-app< o nome> servizio-environment-region<<> name>-<###> id-appcn-keda-prod-eastus2-001 |
Nomi di esempio: Rete
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
Rete virtuale | Gruppo di risorse | vnet-subscription< purpose-region>><-<###> vnet-shared-eastus2-001 vnet-prod-westus-001 vnet-client-eastus2-001 |
Subnet | Rete virtuale | snet-subscription< purpose-region>><-<###> snet-shared-eastus2-001 snet-prod-westus-001 snet-client-eastus2-001 |
Interfaccia di rete | Gruppo di risorse | nic-<##>-<vm name-subscription<> purpose>-<###> nic-01-dc1-shared-001 nic-02-vmhadoop1-prod-001 nic-02-vmtest1-client-001 |
Indirizzo IP pubblico | Gruppo di risorse | pip-<vm name or app name>-<environment>-<region>-<###> pip-dc1-shared-eastus2-001 pip-hadoop-prod-westus-001 |
Bilanciamento del carico (esterno) | Gruppo di risorse | Nome dell'app lbe< o role-environment-<><>###> lbe-navigator-prod-001 lbe-sharepoint-dev-001 |
Gruppo di sicurezza di rete | Subnet o scheda di interfaccia di rete | nsg-<policy name or app name>-<###> nsg-weballow-001 nsg-rdpallow-001 nsg-sqlallow-001 nsg-dnsblocked-001 |
Gateway di rete locale | Gateway virtuale | lgw-subscription< purpose-region>><-<###> lgw-shared-eastus2-001 lgw-prod-westus-001 lgw-client-eastus2-001 |
Gateway di rete virtuale | Rete virtuale | vgw-subscription< purpose-region>><-<###> vgw-shared-eastus2-001 vgw-prod-westus-001 vgw-client-eastus2-001 |
Connessione VPN | Gruppo di risorse | vcn-subscription1< purpose-region1-to-subscription2>>><< purpose-region2->><> vcn-shared-eastus2-to-shared-westus vcn-prod-eastus2-to-prod-westus |
Tabella di route | Gruppo di risorse | rt-route< table name> rt-navigator rt-sharepoint |
Etichetta DNS | Generale | <DNS A record for VM>.<region>.cloudapp.azure.com dc1.westus.cloudapp.azure.com web1.eastus2.cloudapp.azure.com |
Nomi di esempio: Ambiente di calcolo e Web
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
Macchina virtuale | Gruppo di risorse | vm-vm< role-environment>><-<###> vm-sql-test-001 vm-hadoop-prod-001 |
Applicazione Web | Generale | app-project<, app o service-environment>><-<###>.azurewebsites.net app-navigator-prod-001.azurewebsites.net app-accountlookup-dev-001.azurewebsites.net |
App per le funzioni | Generale | func-project<, app o service-environment>><-<###>.azurewebsites.net func-navigator-prod-001.azurewebsites.net func-accountlookup-dev-001.azurewebsites.net |
Nomi di esempio: Database
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
Database SQL di Azure | Azure SQL Server | sqldb-project<, app o service-environment><> sqldb-users-prod sqldb-users-dev |
Database di Azure Cosmos DB | Generale | cosmos-project<, app o service-environment><> cosmos-navigator-prod cosmos-emissions-dev |
Istanza di cache di Azure per Redis | Generale | redis-project<, app o service-environment><> redis-navigator-prod redis-emissions-dev |
Nomi di esempio: Archiviazione
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
Account di archiviazione (utilizzo generico) | Generale | st<project, app o service><###> stnavigatordata001 stemissionsoutput001 |
Azure StorSimple | Generale | ssimp<project, app o service><environment> ssimpnavigatorprod ssimpemissionsdev |
Registro Azure Container | Generale | cr<project, app o service><environment><###> crnavigatorprod001 |
Nomi di esempio: Intelligenza artificiale e apprendimento automatico
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
Azure AI Search | Generale | srch-project<, app o service-environment><> srch-navigator-prod srch-emissions-dev |
Servizio OpenAI di Azure | Gruppo di risorse | oai-project<, app o ambiente del< servizio>> oai-navigator-prod oai-emissions-dev |
Azure Machine Learning workspace (Area di lavoro di Azure Machine Learning) | Gruppo di risorse | mlw-project<, app o service-environment><> mlw-navigator-prod mlw-emissions-dev |
Nomi di esempio: Analisi e IoT
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
Azure Analysis Services | Generale | come<ambiente del nome dell'app><> asnavigatorprod asemissionsdev |
Azure Data Factory | Generale | adf-project<, app o service-environment><> adf-navigator-prod adf-emissions-dev |
Aree di lavoro di Azure Synapse Analytics | Gruppo di risorse | synw-project<, app o ambiente del< servizio>> synw-navigator-prod synw-emissions-dev |
Account Data Lake Storage | Generale | progetto dls<, ambiente app o servizio><> dlsnavigatorprod dlsemissionsdev |
Hub IoT | Generale | iot-project<, app o service-environment><> iot-navigator-prod iot-emissions-dev |
Nomi di esempio: Integrazione
Tipo di cespite | Ambito | Formato ed esempi |
---|---|---|
spazio dei nomi bus di servizio | Generale | sbns-project<, app o service-environment.servicebus.windows.net><> sbns-navigator-prod.servicebus.windows.net sbns-emissions-dev.servicebus.windows.net |
coda del bus di servizio | Bus di servizio | sbq-project<, app o servizio> sbq-navigator |
Argomento del bus di servizio | Bus di servizio | sbt-project<, app o servizio> sbt-navigator |