Questo documento descrive come prepararsi per l'esecuzione di AlloyDB Omni in qualsiasi ambiente Linux che supporti i runtime dei container.
Per una panoramica di AlloyDB Omni, consulta Panoramica di AlloyDB Omni.
Dimensioni e capacità
Le dimensioni e la capacità influiscono direttamente su prestazioni, affidabilità e convenienza della tua istanza AlloyDB Omni. Quando esegui la migrazione di un database esistente, le risorse di CPU e memoria richieste sono simili a quelle del sistema di database di origine.
Pianifica di iniziare con un deployment utilizzando risorse di CPU, RAM e disco corrispondenti e utilizza la configurazione del sistema di origine come configurazione di base di AlloyDB Omni. Potresti essere in grado di ridurre il consumo di risorse dopo aver eseguito test sufficienti dell'istanza AlloyDB Omni.
Il dimensionamento di un ambiente AlloyDB Omni include i seguenti passaggi:
Definisci il tuo carico di lavoro.
Volume di dati: stima la quantità totale di dati che archivierai in AlloyDB Omni. Prendi in considerazione sia i dati attuali sia la crescita proiettata nel tempo.
Frequenza delle transazioni: determina il numero previsto di transazioni al secondo (TPS), incluse letture, scritture, aggiornamenti ed eliminazioni.
Simultaneità: stima il numero di utenti o connessioni simultanei che accedono al database.
Requisiti di prestazioni: definisci i tempi di risposta accettabili per diversi tipi di query e operazioni.
Assicurati che l'hardware supporti i requisiti di dimensionamento.
CPU: AlloyDB Omni trae vantaggio dai sistemi con più core CPU e si adatta in modo lineare, a seconda del carico di lavoro. Tuttavia, PostgreSQL open source in genere non trae vantaggio da più di 16 vCPU. Tieni presente quanto segue:
- Il numero di core in base alla concorrenza e alle esigenze di calcolo del workload.
- Eventuali guadagni che potrebbero essere presenti a causa di una modifica della generazione della CPU o della piattaforma.
Memoria: alloca RAM sufficiente per i buffer condivisi di AlloyDB Omni per memorizzare nella cache i dati e la memoria di lavoro per l'elaborazione delle query. Il requisito esatto dipende dal carico di lavoro. Inizia con 8 GB di RAM per vCPU.
Archiviazione
Tipo: in base alle tue esigenze, scegli tra l'archiviazione NVMe locale per le prestazioni o l'archiviazione SAN per la scalabilità e la condivisione dei dati.
Capacità: assicurati che lo spazio di archiviazione sia sufficiente per il volume di dati, gli indici, il Write-Ahead Log (WAL), i backup e la crescita futura.
IOPS: stima le operazioni di I/O al secondo (IOPS) richieste in base ai pattern di lettura e scrittura del tuo workload. Quando esegui AlloyDB Omni in un cloud pubblico, considera le caratteristiche di prestazioni del tipo di archiviazione per capire se devi aumentare la capacità di archiviazione per raggiungere un target IOPS specifico.
Prerequisiti per l'esecuzione di AlloyDB Omni
Prima di eseguire AlloyDB Omni, assicurati di soddisfare i seguenti requisiti hardware e software.
Requisiti hardware
Sistema operativo/piattaforma | Requisiti hardware minimi | Hardware consigliato |
---|---|---|
Linux |
|
|
macOS |
|
|
- Ti consigliamo di utilizzare un dispositivo di archiviazione a stato solido (SSD) dedicato per archiviare i dati. Se utilizzi un dispositivo fisico per questo scopo, ti consigliamo di collegarlo direttamente alla macchina host.
Requisiti software
Sistema operativo/piattaforma | Software minimo | Software consigliato |
---|---|---|
Linux1 |
|
|
macOS |
|
|
- AlloyDB Omni presuppone che SELinux, se presente, sia configurato sull'host per consentire l'esecuzione del container, incluso l'accesso a al file system (o SELinux sia impostato su permissivo).
Tipi di archiviazione supportati
AlloyDB Omni supporta i file system sui volumi di archiviazione a blocchi nelle istanze di database. Per sistemi di sviluppo o di prova più piccoli, utilizza il file system locale dell'host in cui è in esecuzione il container. Per i carichi di lavoro aziendali, utilizza lo spazio di archiviazione riservato alle istanze AlloyDB Omni. A seconda delle esigenze impostate dal carico di lavoro del database, configura i dispositivi di archiviazione in una configurazione singleton con un dispositivo disco per ogni contenitore oppure in una configurazione consolidata in cui più contenitori leggono e scrivono dallo stesso dispositivo disco.
Archiviazione NVMe locale o SAN
Sia l'archiviazione Non-Volatile Memory Express (NVMe) locale sia l'archiviazione Storage Area Network (SAN) offrono vantaggi distinti. La scelta della soluzione giusta dipende dai requisiti specifici del carico di lavoro, dal budget e dalle esigenze di scalabilità future.
Per determinare l'opzione di archiviazione migliore, considera quanto segue:
- Per dare la priorità alle prestazioni assolute, scegli NVMe locale.
- Se hai bisogno di spazio di archiviazione condiviso su larga scala, scegli SAN.
- Se devi bilanciare prestazioni e condivisione, valuta la possibilità di utilizzare SAN con NVMe su tessuti per un accesso più rapido.
Archiviazione NVMe locale
NVMe è un protocollo ad alte prestazioni progettato per le unità a stato solido (SSD). Per le applicazioni che richiedono un accesso rapido ai dati, lo spazio di archiviazione NVMe locale offre i seguenti vantaggi:
- Le unità SSD NVMe si connettono direttamente al bus Peripheral Component Interconnect Express (PCIe) per offrire velocità di lettura e scrittura elevate.
- L'archiviazione NVMe locale offre la latenza più bassa.
- L'archiviazione NVMe locale offre la massima velocità effettiva.
Lo scaling dello spazio di archiviazione NVMe locale richiede l'aggiunta di altre unità ai singoli server. Tuttavia, l'aggiunta di più unità ai singoli server comporta pool di archiviazione frammentati e potenziali complessità di gestione. L'archiviazione NVMe locale non è progettata per la condivisione dei dati tra più server. Poiché lo spazio di archiviazione NVMe locale è locale, gli amministratori dei server devono proteggersi dai guasti del disco utilizzando hardware o software Redundant Array of Inexpensive Disks (RAID). In caso contrario, l'errore di un singolo dispositivo NVMe comporterà la perdita di dati.
Archiviazione SAN
Una SAN è una rete di archiviazione dedicata che collega più server a un pool condiviso di dispositivi di archiviazione, spesso SSD o archiviazione NVMe centralizzata. Sebbene SAN non sia veloce come NVMe locale, le SAN moderne, in particolare quelle che utilizzano NVMe over Fabrics, offrono comunque prestazioni eccellenti per la maggior parte dei carichi di lavoro aziendali.
Le SAN sono altamente scalabili. Per aggiungere maggiore capacità di archiviazione o rendimento, aggiungi nuovi array di archiviazione o esegui l'upgrade di quelli esistenti. Le SAN forniscono ridondanza a livello di archiviazione, offrendo protezione contro i guasti dei supporti di archiviazione.
Le SAN eccellono nella condivisione dei dati. Per gli ambienti aziendali che richiedono un'elevata disponibilità, più server possono accedere e condividere i dati archiviati nella SAN. In caso di guasto del server, puoi presentare l'archiviazione SAN a un altro server nel data center, consentendo un ripristino più rapido.