Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Database di Azure per PostgreSQL è un servizio di database relazionale in Azure basato sul database relazionale open source PostgreSQL. Si tratta di una soluzione di database completamente gestita e basata sul cloud che supporta carichi di lavoro cruciali con prestazioni prevedibili, sicurezza, disponibilità elevata e scalabilità dinamica. Database di Azure per PostgreSQL è basato sull'edizione community del motore di database PostgreSQL. È compatibile con l'edizione community del server PostgreSQL e supporta le funzionalità di estensione PostgreSQL, ad esempio PostGIS e TimescaleDB.
Questo articolo presuppone che come architetto siano state esaminate le opzioni dei dati di Azure e che sia stato scelto Database di Azure per PostgreSQL come archivio dati per il carico di lavoro. Le linee guida presenti in questo articolo forniscono raccomandazioni architettoniche che sono collegate ai principi dei pilastri del Framework Well-Architected.
Ambito della tecnologia
Questa revisione è incentrata sulle decisioni correlate per le risorse di Azure seguenti:
- Database di Azure per PostgreSQL
Reliability
Lo scopo del pilastro Affidabilità è fornire funzionalità continue attraverso la costruzione di una resilienza sufficiente e la capacità di recuperare rapidamente dai guasti.
Elenco di controllo per la progettazione del carico di lavoro
Acquisisci familiarità con le linee guida sull'affidabilità del prodotto Azure Database per PostgreSQL.
Per altre informazioni, vedere le risorse seguenti:Allinea i tuoi obiettivi di affidabilità e ripristino per Azure Database di PostgreSQL con i tuoi obiettivi di carico di lavoro. Scegliere uno SKU di Azure Database per PostgreSQL appropriato in grado di supportare gli obiettivi di affidabilità e ripristino.
Determinare le configurazioni appropriate per l'alta disponibilità e la ridondanza delle istanze di Azure Database per PostgreSQL. Determinare se sono necessarie configurazioni con ridondanza della zona o di zona per soddisfare i requisiti di affidabilità.
Incorporare il ripristino delle istanze di Database di Azure per PostgreSQL nella pianificazione e negli esercizi di ripristino di emergenza. Assicurarsi che l'intero carico di lavoro sia recuperabile in base alle destinazioni di ripristino.
Incorpora le istanze di Database di Azure per PostgreSQL nella piattaforma di osservabilità. Abilitare le metriche avanzate per monitorare l'integrità dell'istanza. Includere il monitoraggio dell'integrità a disponibilità elevata nella soluzione di monitoraggio.
Consigli sulla configurazione
Recommendation | Benefit |
---|---|
Selezionare la configurazione di disponibilità elevata appropriata. | Quando è configurata la disponibilità elevata, il server di Database di Azure per PostgreSQL effettua automaticamente il provisioning e gestisce una replica di standby. Questa configurazione garantisce che il servizio rimanga disponibile e non perda i dati durante un'interruzione della zona. |
Configurare i backup con ridondanza geografica. | È possibile distribuire repliche in lettura tra aree per proteggere i database da errori a livello di area. I backup con ridondanza geografica sono abilitati nelle aree selezionate e consentono il ripristino di emergenza se l'area del server primaria non è disponibile. È anche possibile ottenere la ridondanza geografica utilizzando una cassetta di Backup di Azure per l'archiviazione a lungo termine dei punti di ripristino. Se si verifica un'interruzione o un'emergenza a livello di area, è possibile usare Backup per ripristinare il server di database in un'area associata ad Azure, riducendo al minimo i tempi di inattività. Backup di Azure offre anche ridondanza geografica per Database di Azure per PostgreSQL. Questa funzionalità aumenta l'efficienza e riduce i tempi di inattività durante le emergenze o le interruzioni a livello di area. |
Testare nuovamente la strategia di backup e ripristino. | Testare regolarmente la strategia di backup e ripristino garantisce che sia possibile ripristinare i database e gestire le operazioni in caso di errore. |
Security
Lo scopo del pilastro Sicurezza è fornire garanzie di riservatezza, integrità e disponibilità al carico di lavoro.
I principi di progettazione della sicurezza forniscono una strategia di progettazione di alto livello per raggiungere tali obiettivi applicando approcci alla progettazione tecnica di Database di Azure per PostgreSQL.
Elenco di controllo per la progettazione del carico di lavoro
Esaminare la baseline di sicurezza. Per migliorare la postura di sicurezza del carico di lavoro, esaminare la baseline di sicurezza di Azure per Azure Database per PostgreSQL.
Implementare la gestione rigorosa, condizionale e controllabile delle identità e degli accessi. Usare Microsoft Entra ID per l'autenticazione e l'autorizzazione per migliorare la gestione delle identità.
Applicare la segmentazione di rete e i controlli di sicurezza. Usare il firewall predefinito a livello di server insieme ai meccanismi di firewall della rete virtuale per isolare l'istanza da altri componenti del carico di lavoro e reti pubbliche.
Usare le funzionalità di sicurezza native per aggiungere livelli aggiuntivi di protezione. Per evitare attività dannose, configurare la sicurezza a livello di riga e la limitazione delle connessioni.
Consigli sulla configurazione
Recommendation | Benefit |
---|---|
Implementare gruppi di sicurezza di rete e firewall per controllare l'accesso al database. | Come parte del modello Zero Trust per la sicurezza, usare la segmentazione di rete per limitare i percorsi di comunicazione tra componenti, ad esempio server applicazioni e database, solo a ciò che è necessario. Questa funzionalità può essere implementata usando gruppi di sicurezza di rete e gruppi di sicurezza delle applicazioni. |
Connettersi ai database tramite collegamento privato di Azure. | Collegamento privato consente di creare endpoint privati per Database di Azure per PostgreSQL per estendere il servizio all'interno della rete virtuale. |
Usare Microsoft Entra ID per l'autenticazione e l'autorizzazione per migliorare la gestione delle identità. | È possibile usare l'autenticazione di Microsoft Entra per connettersi a Database di Azure per PostgreSQL usando identità gestite in Microsoft Entra. |
Configurare la sicurezza a livello di riga. | La sicurezza a livello di riga è una funzionalità di sicurezza PostgreSQL che consente agli amministratori di database di definire criteri per controllare il modo in cui vengono visualizzate e usate righe di dati specifiche per uno o più ruoli. La sicurezza a livello di riga è un filtro aggiuntivo che è possibile applicare a una tabella di database PostgreSQL. |
Se necessario per la conformità, usare chiavi gestite dal cliente per la crittografia dei dati e archiviare le chiavi in Azure Key Vault. | I cmk offrono il controllo completo del ciclo di vita della chiave di crittografia, inclusa la rotazione delle chiavi, per allinearsi ai criteri aziendali. Key Vault consente la gestione centralizzata e l'organizzazione delle chiavi di crittografia all'interno delle proprie istanze di Key Vault dedicate. |
Abilitare la limitazione delle connessioni per gli indirizzi IP con tentativi di accesso eccessivi non riusciti. | Impostare il parametro server connection_throttling su enabled aiuta a proteggere i database da tentativi di accesso dannosi e attacchi DDoS (Denial of Service distribuito), limitando i tentativi di connessione ripetuti dallo stesso indirizzo IP. |
Eseguire regolarmente controlli di sicurezza. | Condurre regolarmente controlli di sicurezza consente di identificare e correggere potenziali vulnerabilità. |
Ottimizzazione dei costi
L'ottimizzazione dei costi è incentrata su rilevare modelli di spesa, assegnare priorità agli investimenti in aree critiche e ottimizzare in altri per soddisfare il budget dell'organizzazione rispettando i requisiti aziendali.
I principi di progettazione di Ottimizzazione costi forniscono una strategia di progettazione di alto livello per raggiungere questi obiettivi e fare compromessi in base alle esigenze nella progettazione tecnica correlata a Database di Azure per PostgreSQL e al relativo ambiente.
Elenco di controllo per la progettazione del carico di lavoro
Stimare il costo iniziale. Come parte dell'esercizio di modellazione dei costi, usa il calcolatore prezzi di Azure per valutare i costi approssimativi associati ad Azure Database per PostgreSQL per il tuo carico di lavoro.
Scegliere il livello di servizio appropriato per il carico di lavoro. Determinare se il piano tariffario Burstable, General Purpose o Memory Optimized per le risorse di calcolo soddisfa le esigenze del caso d'uso.
Applicare una strategia di ridimensionamento ben informata. Per determinare quando e come ridimensionare le risorse di Database di Azure per PostgreSQL, osservare e analizzare continuamente la capacità e la domanda del carico di lavoro.
Sfrutta gli sconti disponibili. Considera prenotazioni di calcolo della durata di uno o tre anni. Le istanze riservate possono risparmiare costi significativi per le risorse di calcolo.
Utilizza lo spazio di archiviazione fornito. Non ci sono costi aggiuntivi per l'archiviazione di backup fino a 100% rispetto all'archiviazione totale del server prevista.
Comprendere i costi di ridondanza. L'uso di configurazioni a ridondanza zonale o zonale raddoppia i costi dell'istanza, quindi valuta attentamente la progettazione della ridondanza.
Comprendere i costi relativi all'istanza protetta e all'archiviazione di backup. Quando si esegue il backup di Azure Databse per PostgreSQL usando Backup di Azure, vengono addebitati costi di istanza protetti per ogni 250 GB e costi di archiviazione di backup in base al tipo totale di dati archiviati e ridondanza.
Eseguire la distribuzione nella stessa area dell'applicazione. Eseguire la distribuzione nella stessa area delle applicazioni per ridurre al minimo i costi di trasferimento.
Consolidare database e server. Quando è pratico, il consolidamento di più database e server in un singolo server può contribuire a ridurre i costi.
Consigli sulla configurazione
Recommendations | Benefits |
---|---|
Selezionare il livello e lo SKU corretti. | La scelta del livello e dello SKU corretto consente di evitare lo spreco di denaro sulle risorse eccessivamente fornite. Azure Advisor offre raccomandazioni, include suggerimenti per i diritti dei server, per ottimizzare e ridurre la spesa complessiva di Azure. |
Ridimensionare le risorse di calcolo e archiviazione quando la domanda del carico di lavoro cambia. | È possibile ridimensionare le risorse di calcolo verticalmente (verso l'alto o verso il basso) e orizzontalmente (out o in) in base alle esigenze. Non è possibile ridurre le risorse di archiviazione dopo l'aumento delle prestazioni. |
Usare la funzionalità di avvio/arresto. | Usare la funzionalità di avvio/arresto per arrestare l'esecuzione del server quando non è necessaria. |
Eccellenza operativa
L'eccellenza operativa si concentra principalmente sulle procedure per le pratiche di sviluppo , l'osservabilità e la gestione dei rilasci.
I principi di progettazione di eccellenza operativa forniscono una strategia di progettazione di alto livello per raggiungere tali obiettivi relativi ai requisiti operativi del flusso di lavoro.
Elenco di controllo per la progettazione del carico di lavoro
Ottimizzare la recuperabilità dei database. Definire i criteri di backup e conservazione per soddisfare i requisiti di conformità.
Automatizzare le attività operative. Usare le attività di automazione per eseguire automaticamente attività come l'avvio e l'arresto di un server, il ridimensionamento delle risorse e altre attività.
Monitorare l'integrità e le prestazioni del database. Raccogliere e analizzare log e metriche dall'istanza per rilevare in modo proattivo potenziali problemi.
Rimanere aggiornati con le versioni di PostgreSQL. Le versioni più recenti sono dotate di funzionalità di aggiornamento sul posto con tempi di inattività zero, consentendo transizioni di versione principali senza interruzioni del servizio.
Consigli sulla configurazione
Recommendation | Benefits |
---|---|
Usare un criterio di Backup di Azure singolarmente o insieme ai backup automatizzati nativi per eseguire il backup dei database. | Database di Azure per PostgreSQL offre backup automatici e ripristino temporizzato per il tuo database. È possibile configurare il periodo di conservazione per i backup fino a 35 giorni. Usare Backup di Azure per definire come e quando vengono creati i backup, il periodo di conservazione per i punti di ripristino e le regole per la protezione e il ripristino dei dati. È possibile conservare punti di ripristino in una cassetta di Backup di Azure per un massimo di 10 anni. È anche possibile gestire le operazioni di backup e ripristino usando il Centro continuità aziendale di Azure. |
Pianificare finestre di manutenzione personalizzate per applicare gli aggiornamenti del servizio. | È possibile definire una pianificazione personalizzata per ogni Database di Azure per PostgreSQL nella sottoscrizione di Azure. Con una pianificazione personalizzata, è possibile specificare la finestra di manutenzione per il server scegliendo il giorno della settimana e l'ora di inizio della finestra di manutenzione di un'ora. |
Monitorare il server per assicurarsi che sia integro e che funzioni come previsto. | Database di Azure per PostgreSQL include varie metriche che forniscono informazioni dettagliate sul comportamento delle risorse che supportano l'istanza di Database di Azure per PostgreSQL. È anche possibile abilitare le metriche avanzate per ottenere il monitoraggio e gli avvisi con granularità fine sui database. |
Efficienza delle prestazioni
L'efficienza delle prestazioni riguarda mantenere l'esperienza utente anche quando si verifica un aumento del carico gestendo la capacità. La strategia include il ridimensionamento delle risorse, l'identificazione dei potenziali colli di bottiglia e la loro risoluzione, e l'ottimizzazione per prestazioni di picco.
I principi di progettazione efficienza delle prestazioni forniscono una strategia di progettazione di alto livello per raggiungere tali obiettivi di capacità rispetto all'utilizzo previsto.
Elenco di controllo per la progettazione del carico di lavoro
Ottimizzare le query. Usare le funzionalità native per trovare opportunità per ottimizzare le query.
Ottimizzare gli indici. Usare funzionalità come l'ottimizzazione degli indici per analizzare automaticamente i modelli di query e ricevere raccomandazioni utili per la creazione o l'eliminazione di indici per migliorare le prestazioni.
Effettuare il trasferimento delle operazioni di sola lettura. Se l'applicazione supporta stringhe di connessione di sola lettura, è possibile trasferire le operazioni di sola lettura alle repliche di lettura.
Consigli sulla configurazione
Recommendation | Benefits |
---|---|
Usare Query Store per tenere traccia delle prestazioni delle query nel tempo. | Query Store semplifica la risoluzione dei problemi di prestazioni consentendo di trovare rapidamente le query con esecuzione più lunga e a elevato utilizzo di risorse. |
Usare Analisi delle prestazioni delle query per identificare le principali query che consumano risorse e le query con esecuzione prolungata nel tuo carico di lavoro. | Query Performance Insight aiuta a identificare le query a esecuzione prolungata e le loro modifiche nel tempo, determinare i tipi di attesa che le interessano, analizzare le query di database principali per frequenza e offre altri vantaggi. |
Usare l'ottimizzazione dell'indice con Query Store per analizzare le query rilevate e fornire raccomandazioni. | L'ottimizzazione dell'indice analizza il carico di lavoro che query store tiene traccia. Produce raccomandazioni sugli indici per migliorare le prestazioni del carico di lavoro analizzato o per eliminare indici duplicati o inutilizzati. L'ottimizzazione degli indici consente di identificare indici utili, indici duplicati e indici inutilizzati. |
Usare l'ottimizzazione intelligente per migliorare automaticamente le prestazioni e prevenire i problemi. | L'ottimizzazione intelligente monitora continuamente lo stato del database del server flessibile di Database di Azure per PostgreSQL e adatta in modo dinamico il database al carico di lavoro. |
Criteri di Azure
Azure offre un set completo di criteri predefiniti correlati a Database di Azure per PostgreSQL e alle relative dipendenze. È possibile controllare alcune delle raccomandazioni precedenti tramite Criteri di Azure. Ad esempio, è possibile verificare se:
Per garantire una governance completa, esaminare le definizioni incorporate dei Criteri di Azure per il database PostgreSQL di Azure e altri criteri che potrebbero influire sulla sicurezza dei repository di dati.
Raccomandazioni di Azure Advisor
Azure Advisor è un consulente cloud personalizzato che consente di seguire le procedure consigliate per ottimizzare le distribuzioni di Azure.
Per altre informazioni, vedere Azure Advisor.
Architettura di esempio
Architettura di base che illustra le raccomandazioni principali: modello di app Web affidabile per Java.