DigitalOcean è un provider di servizi cloud, più un provider IaaS (Infrastructure-as-a-Service) più adatto alle piccole e medie imprese. Puoi saperne di più su DigitalOcean qui. Quello che fa è leggermente diverso da altri fornitori di cloud come AWS o Azure e non è ancora molto globale, dai un'occhiata a questo video che confronta DigitalOcean con AWS.
Offrono una piattaforma di elaborazione geograficamente distribuita sotto forma di macchine virtuali in cui le aziende possono distribuire le proprie applicazioni sull'infrastruttura cloud in modo facile, veloce e flessibile. Il loro obiettivo principale è fornire ambienti cloud altamente flessibili, facili da configurare e scalabili per vari tipi di carichi di lavoro.
Quello che mi ha attratto in DigitalOcean è il servizio “droplets”. I droplet sono VM basate su Linux che possono essere create come standalone o possono far parte di una grande infrastruttura cloud con un sistema operativo Linux scelto come CentOS, Ubuntu, ecc.
PostgreSQL su DigitalOcean
Con DigitalOcean, la creazione di ambienti PostgreSQL può essere eseguita in due modi, un modo è creare manualmente da zero utilizzando droplet (solo VM basate su Linux) o l'altro modo è utilizzare servizi gestiti.
DigitalOcean ha avviato servizi gestiti per PostgreSQL con l'intenzione di accelerare il provisioning dei server di database sotto forma di macchine virtuali su una grande infrastruttura cloud. In caso contrario, l'unico modo per creare ambienti PostgreSQL è manualmente utilizzando le goccioline. Le funzionalità supportate con i servizi gestiti sono disponibilità elevata, failover automatico, registrazione e monitoraggio. La capacità di avviso non esiste ancora.
I servizi gestiti sono più o meno simili a AWS RDS. È possibile accedere alle istanze PostgreSQL solo tramite l'interfaccia utente, non è possibile accedere all'host che esegue l'istanza del database. Gestione, monitoraggio, configurazione dei parametri, tutto deve essere fatto da una UI.
Compatibilità PostgreSQL con DigitalOcean
Puoi creare ambienti PostgreSQL su Digital Ocean con le goccioline o utilizzare servizi gestiti (simili ad AWS RDS) che possono davvero farti risparmiare tempo. Le uniche versioni supportate sui servizi gestiti sono 10 e 11. Ciò significa che le aziende che desiderano sfruttare i servizi gestiti PostgreSQL di DigitalOcean dovranno utilizzare/aggiornare alla versione 10 o 11. Inoltre, tieni presente che non è disponibile il supporto per il sistema operativo Windows.
Questo blog si concentrerà sui servizi gestiti.
Servizi PostgreSQL gestiti
DigitalOcean ha iniziato a fornire servizi di database PostgreSQL gestiti da febbraio 2019. L'intenzione era quella di introdurre un modo più rapido per il provisioning dell'infrastruttura con le istanze PostgreSQL, che può far risparmiare tempo prezioso ai professionisti dei database dell'infrastruttura. Il provisioning di un'istanza PostgreSQL è piuttosto semplice.
Questo può essere fatto accedendo all'account DO → vai a una pagina di creazione del cluster di database → scegli la versione PostgreSQL → scegli le specifiche in base al prezzo → scegli la posizione → fai clic su crea. Siete tutti bravi. Guarda questo video qui per una migliore comprensione.
Alta disponibilità
L'elevata disponibilità è uno dei requisiti critici per i database per garantire la continuità aziendale. È fondamentale garantire che l'elevata disponibilità soddisfi gli SLA definiti per RTO e RPO. DigitalOcean fornisce servizi ad alta disponibilità in modo più rapido e affidabile.
Prezzi
Il modello di prezzo in DigitalOcean non è complesso. Il prezzo dell'istanza è direttamente proporzionale alla capacità e all'architettura dell'istanza. Di seguito è riportato un esempio di prezzo per un'istanza standalone -
La capacità e il prezzo che soddisfa il requisito possono essere scelti tra le opzioni disponibili . Il minimo è di $ 15 al mese per 10 GB di disco e 1 vCPU. Se l'alta disponibilità è un requisito, è possibile configurare anche il nodo standby. La limitazione è che un nodo standby può essere aggiunto solo se la dimensione del database primario è di almeno 25 GB. E possono essere aggiunti solo un massimo di 5 nodi standby. Di seguito sono elencate le opzioni di standby disponibili
Se puoi osservare sopra, il prezzo di standby è piuttosto semplice e non dipende sulla capacità. L'aggiunta di un nodo in standby costerà $ 20 indipendentemente dalle dimensioni.
Accesso
È possibile accedere alle istanze PostgreSQL create utilizzando i servizi gestiti utilizzando le GUI e in remoto tramite CLI solo in modalità SSL. Tuttavia, è possibile accedere alle istanze PostgreSQL installate manualmente su droplet tramite ssh.
Centri dati
DigitalOcean non è ancora molto globale. I data center si trovano in alcuni paesi come mostrato di seguito. Ciò significa che non è possibile distribuire/eseguire servizi per le aziende che gestiscono i propri servizi in paesi diversi da quelli mostrati di seguito.
Vantaggi dei servizi gestiti di PostgreSQL
I servizi gestiti per PostgreSQL sono vantaggiosi per vari motivi. Nella mia esperienza come DBA, spesso sorge l'esigenza di creare ambienti per gli sviluppatori in un modo più rapido possibile per eseguire test funzionali, di regressione e delle prestazioni per le versioni. In genere, l'approccio consiste nell'utilizzare strumenti come chef o puppet per creare moduli di automazione per applicazioni e ambienti di database e quindi utilizzare tali modelli per creare VM cloud. I servizi gestiti di DigitalOcean possono essere un'opzione eccezionale, efficiente ed economica per tali requisiti in quanto è destinato a far risparmiare tempo. Diamo un'occhiata al vantaggioso in dettaglio -
- La scelta di servizi gestiti può far risparmiare molto tempo a DBA e sviluppatori nella creazione di ambienti PostgreSQL da zero. Ciò significa che non ci sono costi di amministrazione e manutenzione del database.
- Gli ambienti PostgreSQL possono essere dotati di High-availability con funzionalità di failover automatico.
- Le istanze gestite sono progettate per sostenere il disastro. I backup giornalieri possono essere configurati con la funzionalità PITR (point-in-time-recovery). È importante sottolineare che i backup sono gratuiti.
- Le istanze PostgreSQL gestite sono progettate per essere altamente scalabili. I clienti di DigitalOcean sono stati in grado di ottenere una maggiore scalabilità con le istanze PostgreSQL e le estensioni TimescaleDB.
- Il dashboard può essere configurato per monitorare i file di registro e le prestazioni delle query.
- Il modello di costo di DigitalOcean è piuttosto semplice.
- Poiché si tratta di un'infrastruttura cloud, il ridimensionamento verticale può essere semplice.
- Le istanze di database gestite sono altamente protette e ottimizzate. Gran parte del recupero dei dati è possibile solo tramite connessioni basate su SSL.
- La documentazione è disponibile in modo molto dettagliato.
Limitazioni dell'esecuzione di PostgreSQL su DigitalOcean
- Sono supportate le versioni PostgreSQL 10 e 11, non è possibile utilizzare altre versioni.
- I data center di DigitalOcean sono disponibili solo in località geografiche limitate.
- Il numero di nodi in standby non può superare 5.
- PITR non può andare oltre i 7 giorni.
- Non tutte le estensioni per PostgreSQL sono supportate, possono essere utilizzate solo estensioni selezionate.
- Le istanze possono essere solo ingrandite. Non possono essere ridimensionati.
- L'accesso come superutente non è consentito.
- Gli avvisi su determinate soglie non sono ancora disponibili.
- Le istanze di database gestite possono essere ripristinate su un nuovo nodo solo durante il ripristino dai backup.
Conclusione
I servizi PostgreSQL gestiti offerti da DigitalOcean sono un'ottima opzione per le aziende che cercano soluzioni di tipo devops per ambienti PostgreSQL che possono davvero aiutare a ridurre il tempo, la pianificazione, l'amministrazione e le spese generali di manutenzione coinvolte nella creazione di ambienti PostgreSQL su larga scala e protetti per vari carichi di lavoro. Il loro modello di prezzo è molto semplice e può essere un'opzione conveniente. Tuttavia, non può essere davvero paragonato agli enormi provider di servizi cloud come AWS o Azure. DigitalOcean può sicuramente avvantaggiare le aziende con le sue innovative soluzioni cloud.