Scegli l'architettura MySQL giusta su OCI

Poiché le organizzazioni che si affidano a database open source, come Oracle HeatWave MySQL, eseguono la migrazione da soluzioni on-premise autogestite a servizi di database cloud gestiti (come il database MySQL) per ridurre i costi e migliorare l'efficienza operativa, è importante imparare a scegliere l'architettura MySQL giusta su Oracle Cloud Infrastructure (OCI).

Oracle HeatWave MySQL è un servizio di database gestito su OCI che mira a fornire un servizio di database altamente scalabile e disponibile senza la necessità di pianificare ed eseguire noiose attività operative quotidiane, come il provisioning del database, il backup, le patch e gli upgrade. Se dovessi adottare Oracle HeatWave MySQL per i tuoi carichi di lavoro su OCI, non solo stai riducendo gli attuali costi operativi dei tuoi database autogestiti, ma anche per essere in grado di concentrarti su lavori di alto valore e innovazione. Per ottenere i massimi vantaggi derivanti dall'esecuzione dei carichi di lavoro su Oracle HeatWave MySQL e OCI, devi comprendere Oracle HeatWave MySQL e OCI per progettare un'architettura cloud flessibile e scalabile che ti consenta di crescere ed espandere l'uso del cloud in base alle tue esigenze e ai tuoi requisiti aziendali.

Architettura

Questa architettura di riferimento mira a fornire informazioni tecniche pertinenti per aiutare la progettazione e l'ottimizzazione di un'architettura MySQL flessibile e scalabile su OCI per supportare i requisiti dei carichi di lavoro.

L'ambito di applicazione di questa architettura di riferimento presuppone i seguenti requisiti e specifiche non funzionali:

Domini Requisiti Descrizioni
Disponibilità R1 L'architettura dovrebbe essere altamente disponibile per supportare il funzionamento 24/7 con un tempo di attività del servizio di almeno il 99,95%
  R2
  • RTO <= 4 ore
  • RPO <= 1 ora
Scalabilità R3 L'architettura deve essere flessibile e scalabile per supportare i carichi di lavoro
Sicurezza R4 L'architettura deve essere altamente protetta con meccanismi di controllo degli accessi e di autorizzazione

In base a questi requisiti, il modello Oracle HeatWave MySQL High Availability viene selezionato insieme ad altri servizi OCI per creare l'architettura per i carichi di lavoro.

Questa architettura di riferimento è illustrata in tre diversi punti di vista per affrontare le preoccupazioni degli architetti dell'infrastruttura, degli architetti dell'informazione, degli ingegneri DevOps e degli ingegneri operativi.

Vista infrastruttura



mysql-oci-architecture-infrastructure-oracle.zip

In questa vista dell'architettura, viene eseguito il provisioning di una rete cloud virtuale regionale con subnet pubbliche e private in una singola area OCI che comprende tre domini di disponibilità (AD). Il modello di alta disponibilità Oracle HeatWave MySQL distribuirà tre istanze di database MySQL ridondanti nei tre domini AD in un'area OCI multi-AD o tre domini di errore in un'area OCI a singolo AD.

Questa vista architetturale illustra le opzioni di distribuzione delle applicazioni e le opzioni di connettività di rete per Oracle HeatWave MySQL:

  • Oracle HeatWave MySQL viene distribuito nella subnet privata protetta senza alcun accesso pubblico da Internet.
  • Opzioni di connettività per accedere a Oracle HeatWave MySQL:
    • Attraverso Internet utilizzando Oracle Cloud Infrastructure Load Balancing.
    • Tramite una VPN tra i tuoi data center e le region OCI utilizzando OCI Dynamic Routing Gateway:
      • VPN da sito a sito OCI
      • Oracle Cloud Infrastructure FastConnect
  • In genere, esistono tre pattern di distribuzione delle applicazioni per accedere a Oracle HeatWave MySQL in OCI:
    • Applicazioni distribuite su istanze di Oracle Cloud Infrastructure Compute o su istanze di Oracle Cloud Infrastructure Kubernetes Engine (il pattern più preferito con l'applicazione e MySQL Database collocato nella stessa cloud region OCI).
    • Applicazioni ospitate nel tuo data center.
    • Applicazioni ospitate in un cloud non OCI (ad esempio Amazon Web Services, Microsoft Azure e altri).

Vista infrastruttura (scalabilità/ridondanza)



mysql-oci-architettura-scalabilità-oracle.zip

In questa vista dell'architettura, l'area OCI primaria con il modello High Availability Oracle HeatWave MySQL è interconnessa con un'altra area OCI tramite OCI Dynamic Routing Gateway. Questa vista architettonica illustra la scalabilità MySQL all'interno della stessa region OCI e la ridondanza in un'altra region OCI:

  • Le istanze di database MySQL primarie possono essere ridimensionate facilmente distribuendo le istanze di "Replica di lettura gestita" all'interno della stessa area OCI per ridimensionare le transazioni di lettura (vedere Esplora altro).
  • Le istanze MySQL primarie possono essere replicate in una replica MySQL distribuita in un'altra area OCI per fornire ridondanza per i carichi di lavoro (vedere Esplora altro).

Vista di accesso al database

Questa vista architettura illustra le opzioni degli strumenti per l'utilizzo di Oracle HeatWave MySQL per amministratori e sviluppatori di database:

  • Gli strumenti OCI Database Tools (SQL Worksheet) e Oracle Cloud Infrastructure Cloud Shell con lo strumento MySQL Shell preinstallato sono accessibili utilizzando i browser Web sulla rete Internet pubblica per utilizzare MySQL.
  • Oracle Cloud Infrastructure Bastion può essere utilizzato per connettere i tuoi strumenti a Oracle HeatWave MySQL tramite Internet.
    • Il servizio Oracle Cloud Infrastructure Bastion può essere utilizzato per connettere i tuoi strumenti a Oracle MySQL Database Service tramite Internet.
    • È possibile utilizzare Visual Studio Code con la versione di anteprima del plugin Shell MySQL, nonché una configurazione minima per connettersi a Oracle HeatWave MySQL.


mysql-oci-architecture-database-access-oracle.zip

Vista operazione

Questa vista architetturale illustra gli aspetti di monitoraggio di Oracle HeatWave MySQL utilizzando i servizi Oracle Cloud Observability and Management Platform:

  • Crea soglie pertinenti sulla console Oracle HeatWave MySQL per attivare gli allarmi per l'azione di supporto delle operazioni.
  • Monitoraggio basato su eventi che utilizza OCI Events per tenere traccia di eventi MySQL specifici (ad esempio, il riavvio del database).
  • Monitoraggio in tempo reale mediante OCI Dashboard per creare personalizzazione di OCI Dashboard su istanze MySQL specifiche.


mysql-oci-architecture-operation-oracle.zip

  • Area

    Un'area geografica Oracle Cloud Infrastructure è un'area geografica localizzata che contiene uno o più data center, denominati domini di disponibilità. Le regioni sono indipendenti da altre regioni e grandi distanze possono separarle (tra paesi o addirittura continenti).

  • Domini di disponibilità

    I domini di disponibilità sono data center standalone e indipendenti all'interno di un'area geografica. Le risorse fisiche in ciascun dominio di disponibilità sono isolate dalle risorse negli altri domini di disponibilità, il che fornisce tolleranza agli errori. I domini di disponibilità non condividono l'infrastruttura, ad esempio alimentazione o raffreddamento, o la rete interna del dominio di disponibilità. Pertanto, un errore in un dominio di disponibilità non dovrebbe influire sugli altri domini di disponibilità nell'area.

  • Rete cloud virtuale (VCN) e subnet

    Una VCN è una rete personalizzabile e definita dal software configurata in un'area Oracle Cloud Infrastructure. Come le tradizionali reti di data center, le reti VCN consentono di controllare l'ambiente di rete. Una VCN può avere più blocchi CIDR non sovrapposti che è possibile modificare dopo aver creato la VCN. Puoi segmentare una VCN in subnet, che possono essere definite in un'area o in un dominio di disponibilità. Ogni subnet è costituita da un intervallo contiguo di indirizzi che non si sovrappongono alle altre subnet nella VCN. È possibile modificare le dimensioni di una subnet dopo la creazione. Una subnet può essere pubblica o privata.

  • Load balancer

    Il servizio Oracle Cloud Infrastructure Load Balancing fornisce la distribuzione automatica del traffico da un unico punto di accesso a più server nel back-end.

  • Lista di sicurezza

    Per ogni subnet, puoi creare regole di sicurezza che specificano l'origine, la destinazione e il tipo di traffico che devono essere consentiti all'interno e all'esterno della subnet.

  • Calcolo

    Con Oracle Cloud Infrastructure Compute, puoi eseguire il provisioning e gestire gli host di computazione nel cloud. Puoi avviare istanze di computazione con forme che soddisfano i requisiti delle risorse per CPU, memoria, larghezza di banda di rete e storage. Dopo aver creato un'istanza di computazione, è possibile accedervi in modo sicuro, riavviarla, collegare e scollegare volumi e arrestarla quando non è più necessaria.

  • Eventi

    I servizi Oracle Cloud Infrastructure emettono eventi, ovvero messaggi strutturati che descrivono le modifiche alle risorse. Gli eventi vengono emessi per le operazioni di creazione, lettura, aggiornamento o eliminazione (CRUD), le modifiche allo stato del ciclo di vita delle risorse e gli eventi di sistema che influiscono sulle risorse cloud.

  • Notifiche

    Il servizio Oracle Cloud Infrastructure Notifications trasmette messaggi ai componenti distribuiti tramite un pattern di pubblicazione/sottoscrizione, offrendo messaggi sicuri, altamente affidabili, a bassa latenza e duraturi per le applicazioni ospitate su Oracle Cloud Infrastructure.

  • Servizio bastion

    Oracle Cloud Infrastructure Bastion offre un accesso sicuro limitato e limitato nel tempo alle risorse che non dispongono di endpoint pubblici e che richiedono severi controlli di accesso alle risorse, come bare metal e virtual machine, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Cloud Infrastructure Kubernetes Engine (OKE) e qualsiasi altra risorsa che consente l'accesso al protocollo SSH (Secure Shell Protocol). Con il servizio OCI Bastion, puoi abilitare l'accesso agli host privati senza distribuire e gestire un jump host. Inoltre, è possibile migliorare le impostazioni di sicurezza con autorizzazioni basate sull'identità e una sessione SSH centralizzata, controllata e con limiti di tempo. OCI Bastion elimina la necessità di un IP pubblico per l'accesso bastion, eliminando la seccatura e la potenziale superficie di attacco quando si fornisce l'accesso remoto.

  • FastConnect

    Oracle Cloud Infrastructure FastConnect consente di creare facilmente una connessione dedicata e privata tra il data center e Oracle Cloud Infrastructure. FastConnect fornisce opzioni per una maggiore larghezza di banda e un'esperienza di rete più affidabile se confrontata con le connessioni basate su Internet.

  • MySQL HeatWave

    Oracle MySQL Database Service è un servizio di database completamente gestito che consente agli sviluppatori di sviluppare e distribuire rapidamente applicazioni sicure e native nel cloud utilizzando il database open source più diffuso al mondo. Oracle HeatWave MySQL è un nuovo acceleratore di query in memoria, integrato e ad alte prestazioni per Oracle MySQL Database Service che accelera le prestazioni MySQL per l'analitica e le query transazionali.

Suggerimenti

Utilizza i seguenti suggerimenti come punto di partenza per progettare l'architettura OCI in base ai tuoi requisiti di carico di lavoro.

  • VCN
    • Utilizza le subnet regionali per motivi di flessibilità.
    • Quando crei una VCN, determina il numero di blocchi CIDR necessari e la dimensione di ciascun blocco in base al numero di risorse che intendi collegare alle subnet nella VCN.
    • Utilizzare i blocchi CIDR all'interno dello spazio di indirizzi IP privati standard:
      • 10.0.0.0 - 10.255.255.255
      • 172.16.0.0 - 172.31.255.255
      • 192.168.0.0 - 192.168.255.255
    • Selezionare i blocchi CIDR che non si sovrappongono a qualsiasi altra rete (in OCI, nel data center on premise o in un altro provider cloud) a cui si intende impostare le connessioni private.
    • Dopo aver creato una VCN, puoi modificarne, aggiungerne e rimuoverne i blocchi CIDR.
    • Quando si progettano le subnet, considerare il flusso di traffico e i requisiti di sicurezza. Collega tutte le risorse all'interno di un livello o ruolo specifico alla stessa subnet, che può fungere da limite di sicurezza. Oracle MySQL Database Service è sempre disponibile in una subnet privata.
  • Sicurezza
    • Per le risorse che richiedono la massima sicurezza, Oracle consiglia di utilizzare le zone di sicurezza. Una zona di sicurezza è un compartimento associato a una ricetta definita da Oracle dei criteri di sicurezza che si basano sulle best practice. Ad esempio, le risorse in una zona di sicurezza non devono essere accessibili dalla rete Internet pubblica e devono essere cifrate utilizzando chiavi gestite dal cliente. Quando crei e aggiorni le risorse in una zona di sicurezza, OCI convalida le operazioni rispetto ai criteri nella ricetta della zona di sicurezza e nega le operazioni che violano qualsiasi criterio.
  • Cloud Guard
    • Duplica e personalizza le ricette predefinite fornite da Oracle per creare ricette personalizzate del rilevatore e del rispondente. Queste ricette consentono di specificare il tipo di violazione della sicurezza che genera un'avvertenza e le azioni consentite per l'esecuzione. Ad esempio, potresti voler rilevare i bucket di Oracle Cloud Infrastructure Object Storage con visibilità pubblica.
  • Gruppi di sicurezza di rete (NSG)

    Puoi utilizzare i gruppi NSG per definire un set di regole in entrata e in uscita che si applicano a VNIC specifiche. Si consiglia di utilizzare i gruppi NSG anziché le liste di sicurezza perché i gruppi NSG consentono di separare l'architettura della subnet della VCN dai requisiti di sicurezza dell'applicazione.

Considerazioni

Durante la standardizzazione e l'operatività di Oracle HeatWave MySQL come servizio di database cloud di base, prendi in considerazione queste altre configurazioni di servizi cloud per semplificare il funzionamento e la flessibilità.

  • Connettività di rete
    • Durante la progettazione della rete cloud, tenere presente il limite relativo di vari limiti della VCN, ad esempio il limite di 50 VCN per ogni tenancy OCI. Questi limiti possono essere modificati inviando una richiesta di servizio al supporto OCI.
    • Oracle HeatWave MySQL richiede un set minimo di indirizzi IP privati a scopo di manutenzione:
      • MySQL Il sistema standalone richiede tre indirizzi IP privati
      • MySQL High Availability richiede sette indirizzi IP privati
    • Il servizio Oracle Cloud Infrastructure Bastion è limitato a un massimo di tre ore di utilizzo, quindi se hai bisogno di un servizio bastion ad alta disponibilità per le tue applicazioni o per scopi di sviluppo, è meglio utilizzare un'istanza di Oracle Cloud Infrastructure Compute dedicata come host bastion per connetterti alle istanze MySQL.
  • Funzionalità

    Assicurarsi di OCI Dashboard per creare un dashboard personalizzato per la flotta di istanze MySQL per l'operazione di servizio.

  • Disponibilità

    Se si intende creare una replica MySQL come backup in un'altra area, è necessario considerare la latenza di rete tra l'area primaria e quella di backup. OCI fornisce informazioni sulla latenza di rete tra più aree per aiutarti a decidere quale area utilizzare come area di backup per la tua area primaria. L'altro fattore di considerazione per la replica MySQL è la durata di tempo (binlog_expire_logs_seconds) per mantenere i log delle transazioni binarie prima che i log vengano eliminati, la durata di tempo predefinita per mantenere il log delle transazioni binarie è di 3.600 secondi o 60 minuti. Se si verifica una grave latenza di rete tra le aree primaria e di backup, è possibile aumentare questo parametro in modo che i log delle transazioni vengano conservati più a lungo in modo che possano essere trasmessi e applicati alla replica MySQL nell'area di backup.

  • Portabilità e flessibilità
    • Utilizzare DNS (Domain Name Service) OCI per risolvere il nome host MySQL per la portabilità. Assegnare un nome host personalizzato in base alla convenzione di denominazione all'istanza MySQL durante la creazione in modo che il nome host possa essere risolto dal DNS OCI come resolver VCN.
    • Utilizza il nome host DNS di Oracle Cloud Infrastructure Load Balancing per le istanze di replica di lettura MySQL gestite per ridurre al minimo le modifiche al codice dell'applicazione a scopo di flessibilità. Puoi trovare il nome host DNS assegnato di questo Oracle Cloud Infrastructure Load Balancing nella console del servizio DNS OCI.

conferme

Authors: Ryan Kuan

Contributors: John Sulyok