Condividi tramite


Revisione di Azure Well-Architected Framework - Database di Azure per PostgreSQL

Questo articolo fornisce procedure consigliate per l'architettura per Database di Azure per PostgreSQL.

Le linee guida si basano sui cinque pilastri dell'eccellenza architettonica:

  • Affidabilità
  • Sicurezza
  • Ottimizzazione dei costi
  • Eccellenza operativa
  • Efficienza delle prestazioni

Prerequisiti

Comprendere i pilastri di Well-Architected Framework può contribuire a produrre un'architettura cloud di alta qualità, stabile ed efficiente. È consigliabile esaminare il carico di lavoro usando la valutazione di revisione di Azure Well-Architected Framework .

Database di Azure per PostgreSQL è un servizio di database relazionale in Azure basato sul database relazionale open source PostgreSQL. Si tratta di un database distribuito come servizio completamente gestito in grado di gestire carichi di lavoro cruciali con prestazioni prevedibili, sicurezza, disponibilità elevata e scalabilità dinamica. Database di Azure per PostgreSQL si basa 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.

Nota

Per esplorare un'idea di soluzione leggera che usa Database di Azure per PostgreSQL per archiviare i risultati analitici dall'API Servizi cognitivi, vedere App intelligenti con Database di Azure per PostgreSQL.

Affidabilità

Database di Azure per PostgreSQL : il server flessibile offre supporto per la disponibilità elevata effettuando il provisioning di repliche primarie e standby separate fisicamente all'interno della stessa zona di disponibilità (zonale) o tra zone di disponibilità (con ridondanza della zona). Questo modello a disponibilità elevata garantisce che i dati di cui è stato eseguito il commit non vengano mai persi in caso di errore. Il modello è progettato anche in modo che il database non diventi un singolo punto di errore nell'architettura software. Database di Azure per PostgreSQL : il server flessibile offre funzionalità che proteggono i dati e attenuano i tempi di inattività per i database cruciali durante gli eventi di inattività pianificati e non pianificati. Basato sull'infrastruttura di Azure che offre resilienza e disponibilità affidabili, il server flessibile offre funzionalità di continuità aziendale che offrono protezione dagli errori, soddisfare i requisiti di tempo di ripristino e ridurre l'esposizione alla perdita di dati.

Elenco di controllo per la progettazione dell'affidabilità

È consigliabile esaminare i principi di progettazione per ottimizzare il costo dell'architettura.

  • Destinazioni definite per RPO (Recovery Point Objective) e RTO (Recovery Time Objective) per i carichi di lavoro.
  • Selezionare la configurazione appropriata per la disponibilità elevata.
  • Configurare il backup con ridondanza geografica.
  • Testare il piano di ripristino di emergenza per garantire un ripristino rapido dei dati in caso di errore.
  • Testare il failover su richiesta per il server abilitato per la disponibilità elevata per assicurarsi che l'applicazione si comporti come previsto.
  • Monitorare il server per assicurarsi che sia integro e che funzioni come previsto.

Raccomandazioni relative all'affidabilità

Recommendation Vantaggi
Destinazioni definite per RPO (Recovery Point Objective) e RTO (Recovery Time Objective) per i carichi di lavoro. Derivare questi valori eseguendo una valutazione dei rischi e assicurandosi di comprendere il costo e il rischio di tempi di inattività e perdita di dati. Questi sono requisiti non funzionali di un sistema e devono essere definiti in base ai requisiti aziendali.
Selezionare la configurazione di disponibilità elevata appropriata. Database di Azure per PostgreSQL Server offre configurazioni a disponibilità elevata, assicurandosi che il servizio rimanga disponibile in caso di interruzione della zona e che non vengano persi dati. Quando è configurata la disponibilità elevata, il server Database di Azure per PostgreSQL effettua automaticamente il provisioning e gestisce una replica di standby.
Configurare il 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 primario è inattiva.
Testare il piano di ripristino di emergenza per garantire un ripristino rapido dei dati in caso di errore. Le repliche in lettura possono essere distribuite in un'area diversa e alzate di livello a un server di lettura/scrittura se è necessario il ripristino di emergenza.
Monitorare il server per assicurarsi che sia integro e che funzioni come previsto. È disponibile il monitoraggio del database per monitorare e avvisare gli errori a livello di database.

Suggerimento

Per altri dettagli sulle linee guida sull'affidabilità per Database di Azure per PostgreSQL, vedere Affidabilità con Database di Azure per PostgreSQL.

Definizioni di criteri di Azure

Criteri di Azure definizioni consentono di applicare regole e configurazioni specifiche per le risorse all'interno dell'ambiente Azure. Per garantire l'affidabilità per Database di Azure per PostgreSQL, è possibile creare definizioni di Criteri di Azure personalizzate per implementare configurazioni e procedure consigliate specifiche. Ecco un esempio di alcune definizioni di Criteri di Azure personalizzate che è possibile creare per garantire l'affidabilità:

Sicurezza

Durante l'intero ciclo di vita di un'applicazione, dalla progettazione e implementazione alla distribuzione, fino alle operazioni, è necessario tenere sempre presente la sicurezza. La piattaforma Azure protegge da varie minacce, ad esempio intrusioni di rete e attacchi DDoS. È comunque necessario integrare la sicurezza nell'applicazione e nei processi DevOps.

Elenco di controllo per la progettazione della sicurezza

È consigliabile esaminare i principi di progettazione per ottimizzare il costo dell'architettura.

  • SSL e applica la crittografia per proteggere i dati in transito.
  • Implementare gruppi di sicurezza di rete e firewall per controllare l'accesso al database.
  • Usare Azure Active Directory per l'autenticazione e l'autorizzazione per migliorare la gestione delle identità.
  • Configurare la sicurezza a livello di riga.

Suggerimenti per la sicurezza

Recommendation Vantaggi
SSL e applica la crittografia per proteggere i dati in transito. Distribuire il certificato DigiCert Global Root da un certificato ca (Certificate Authority) attendibile necessario per comunicare tramite SSL con le applicazioni client.
Implementare gruppi di sicurezza di rete e firewall per controllare l'accesso al database. Come parte del modello di Zero Trust per la sicurezza, la segmentazione di rete è consigliata in cui i percorsi di comunicazione tra i componenti (in questo caso, l'applicazione e il server di database) sono limitati solo agli elementi necessari. Questa operazione può essere implementata usando il gruppo di sicurezza di rete e i gruppi di sicurezza delle applicazioni.
Usare Azure Active Directory per l'autenticazione e l'autorizzazione per migliorare la gestione delle identità. L'autenticazione di Microsoft Azure Active Directory (Azure AD) è un meccanismo di connessione al database di Azure per PostgreSQL tramite identità definite in Azure AD.
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 i criteri per controllare la visualizzazione e il funzionamento di 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.

Ottimizzazione dei costi

L'ottimizzazione dei costi riguarda la comprensione delle opzioni di configurazione e delle procedure consigliate per ridurre le spese non necessarie e migliorare l'efficienza operativa. È consigliabile esaminare il carico di lavoro per identificare le opportunità di riduzione dei costi.

Elenco di controllo per la progettazione dei costi

È consigliabile esaminare i principi di progettazione per ottimizzare il costo dell'architettura.

  • Selezionare il livello e lo SKU corretti.
  • Informazioni sulla modalità a disponibilità elevata.
  • Ridimensionare i livelli di calcolo e di archiviazione.
  • Prendere in considerazione le istanze riservate.
  • Usare l'archiviazione di cui è stato effettuato il provisioning.
  • Informazioni sui costi di ridondanza geografica.
  • Valutare le decisioni di aumento delle prestazioni delle risorse di archiviazione.
  • Eseguire la distribuzione nella stessa area di un'app.
  • Descrizione dei costi orientati alla disponibilità elevata.
  • Consolidare database e server.

Raccomandazioni sui costi

Consigli Vantaggi
Selezionare il livello e lo SKU corretti. Selezionare il piano tariffario e gli SKU di calcolo che supportano le esigenze specifiche del carico di lavoro. Azure Advisor offre raccomandazioni per ottimizzare e ridurre la spesa complessiva di Azure. Le raccomandazioni includono il ridimensionamento corretto del server da seguire.
Informazioni sulla modalità di disponibilità elevata. La disponibilità elevata rende sempre disponibile un server standby all'interno della stessa zona o area. L'abilitazione della disponibilità elevata raddoppia il costo.
Modificare i livelli di calcolo e archiviazione. È necessario modificare manualmente i livelli di calcolo e archiviazione per soddisfare i requisiti dell'applicazione nel tempo.
Usare la funzionalità Start/Stop. Il server flessibile dispone di una funzionalità Start/Stop che è possibile usare per arrestare l'esecuzione del server quando non è necessario.
Prendere in considerazione le istanze riservate. Prendere in considerazione una prenotazione di uno o tre anni per ricevere sconti significativi sul calcolo. Usare queste prenotazioni per i carichi di lavoro con un utilizzo coerente del calcolo per un anno o più.
Usare l'archiviazione con provisioning. Non è previsto alcun costo aggiuntivo per l'archiviazione di backup fino al 100% dell'archiviazione totale del server di cui è stato effettuato il provisioning.
Comprendere i costi di ridondanza. I costi di archiviazione con ridondanza geografica (GRS) sono due volte pari a quello dell'archiviazione con ridondanza locale. GrS richiede una doppia capacità di archiviazione di LRS.
Valutare le decisioni di scalabilità orizzontale dell'archiviazione. È consigliabile valutare le esigenze di archiviazione correnti e future prima di aumentare l'archiviazione. Dopo aver ridimensionato l'archiviazione, non è possibile ridurre il numero di istanze.
Distribuire nella stessa area dell'app. Distribuire nella stessa area delle applicazioni per ridurre al minimo i costi di trasferimento. Quando si usa l'integrazione della rete virtuale, le applicazioni in una rete virtuale diversa non hanno accesso diretto ai server flessibili. Per concedere loro l'accesso, è necessario configurare il peering di rete virtuale. Il peering di rete virtuale ha costi di trasferimento dei dati in ingresso e in uscita nominale.
Descrizione dei costi orientati alla disponibilità elevata. È un compromesso tra ha e costi. HA è doppio il costo per la configurazione non a disponibilità elevata, ma è necessario.
Consolidare database e server. È possibile consolidare più database e server in un singolo server per ridurre i costi.

Definizioni dei criteri di Azure

Criteri di Azure definizioni consentono di applicare regole e configurazioni specifiche per le risorse all'interno dell'ambiente di Azure. Per garantire l'ottimizzazione dei costi per Database di Azure per PostgreSQL, è possibile creare definizioni di Criteri di Azure personalizzate per applicare configurazioni e procedure consigliate specifiche. Ecco un esempio di alcune definizioni di Criteri di Azure personalizzate che è possibile creare per l'ottimizzazione dei costi:

Eccellenza operativa

I principi di eccellenza operativa sono una serie di considerazioni che consentono di definire procedure operative di livello superiore.

Per ottenere una maggiore competenza nelle operazioni, valutare e migliorare il modo in cui il software viene sviluppato, distribuito, gestito e gestito.

Elenco di controllo di progettazione dell'eccellenza operativa

È consigliabile esaminare i principi di progettazione per ottimizzare il costo dell'architettura.

  • Configurare i backup automatizzati e i criteri di conservazione per mantenere la disponibilità dei dati e soddisfare i requisiti di conformità.
  • Implementare aggiornamenti e patch automatizzati per mantenere sicura e aggiornata l'istanza di PostgreSQL.
  • Monitorare l'integrità e le prestazioni del database usando Monitoraggio di Azure e configurare gli avvisi per le metriche critiche.

Raccomandazioni relative all'eccellenza operativa

Recommendation Vantaggi
Configurare i backup automatizzati e i criteri di conservazione per mantenere la disponibilità dei dati e soddisfare i requisiti di conformità. Database di Azure per PostgreSQL fornisce backup automatici e ripristino temporizzato per il database. È possibile configurare il periodo di conservazione per i backup fino a 35 giorni.
Implementare aggiornamenti e patch automatizzati per mantenere sicura e aggiornata l'istanza di PostgreSQL. Database di Azure per PostgreSQL fornisce patch e aggiornamenti automatici per il database. È possibile configurare la finestra di manutenzione per il server per ridurre al minimo l'impatto sul carico di lavoro.
Monitorare l'integrità e le prestazioni del database usando Monitoraggio di Azure e configurare gli avvisi per le metriche critiche. Database di Azure per PostgreSQL offre funzionalità di monitoraggio e avviso predefinite. È possibile monitorare l'integrità e le prestazioni del database usando Monitoraggio di Azure. È anche possibile configurare gli avvisi per le metriche critiche per ricevere una notifica quando il database non viene eseguito come previsto.

Definizioni di criteri di eccellenza operativa

Criteri di Azure definizioni consentono di applicare regole e configurazioni specifiche per le risorse all'interno dell'ambiente di Azure. Per garantire l'eccellenza operativa per Database di Azure per PostgreSQL, è possibile creare definizioni di Criteri di Azure personalizzate per applicare configurazioni e procedure consigliate specifiche. Ecco un esempio di alcune definizioni di Criteri di Azure personalizzate che è possibile creare per l'eccellenza operativa:

Efficienza delle prestazioni

L'efficienza delle prestazioni è la capacità del carico di lavoro di ridimensionare per soddisfare le esigenze poste dagli utenti in modo efficiente. È consigliabile esaminare i principi di efficienza delle prestazioni.

Nell'elenco di controllo di progettazione e nell'elenco delle raccomandazioni seguenti, le chiamate indicano se ogni scelta si applica all'architettura del cluster, all'architettura del carico di lavoro o a entrambi.

Elenco di controllo di progettazione dell'efficienza delle prestazioni

È consigliabile esaminare i principi di progettazione per ottimizzare il costo dell'architettura.

  • Progettare lo schema e le query per ridurre al minimo l'utilizzo delle risorse.
  • Implementare repliche di lettura per scaricare il traffico di lettura e migliorare le prestazioni complessive.

Raccomandazioni sull'efficienza delle prestazioni

Recommendation Vantaggi
Progettare lo schema e le query per ridurre al minimo l'utilizzo delle risorse. È consigliabile progettare lo schema e le query per ridurre al minimo l'utilizzo delle risorse.
Implementare repliche di lettura per scaricare il traffico di lettura e migliorare le prestazioni complessive. È possibile usare repliche di lettura per scaricare il traffico di lettura e migliorare le prestazioni.

Definizioni dei criteri di efficienza delle prestazioni

Criteri di Azure definizioni consentono di applicare regole e configurazioni specifiche per le risorse all'interno dell'ambiente di Azure. Per garantire l'efficienza delle prestazioni per Database di Azure per PostgreSQL, è possibile creare definizioni di Criteri di Azure personalizzate per applicare configurazioni e procedure consigliate specifiche. Ecco un esempio di alcune definizioni di Criteri di Azure personalizzate che è possibile creare per l'efficienza delle prestazioni:

Risorse aggiuntive

Prendere in considerazione altre risorse correlate alla Database di Azure per PostgreSQL.

Linee guida del Centro architetture di Azure

Linee guida di Cloud Adoption Framework

Passaggio successivo