Connetti Azure Kubernetes con Oracle Exadata Database Service su Oracle Database@Azure

Scopri come connettere Microsoft Azure Kubernetes Service a Oracle Exadata Database Service su Oracle Database@Azure per sbloccare le migliori prestazioni, l'alta disponibilità e la scalabilità di Oracle Database, tra cui Oracle Real Application Clusters (Oracle RAC) e la sicurezza per le applicazioni Azure. Ciò consente agli sviluppatori di applicazioni di distribuire un'applicazione Kubernetes dal portale Microsoft Azure e di connettersi a Oracle Exadata Database Service con Oracle Exadata Cloud Infrastructure che risiede nei data center Azure, in esecuzione nelle immediate vicinanze del servizio Azure Kubernetes per ottenere la latenza più bassa possibile.

Operazioni preliminari

Per usufruire di questa architettura di riferimento, sono necessari i seguenti elementi:

  • Servizio Microsoft Azure Kubernetes (AKS)
  • Distribuire il cluster AKS
  • Configurare Oracle Database@Azure con gli elementi riportati di seguito.
    • Accesso a una sottoscrizione e a una directory di Azure
    • Accesso a una tenancy OCI
    • Collegamento multicloud attivo di Oracle Database@Azure tra i cloud di Azure e Oracle
Prima di eseguire il provisioning di Oracle Database@Azure, assicurati di avere limiti adeguati di Oracle Exadata Database Service e limiti del servizio Oracle Cloud Infrastructure (OCI):
  1. Nel menu OCI, fare clic su Governance e amministrazione.
  2. In Gestione tenancy, fare clic su Limiti, quote e uso.
  3. Dal menu a discesa Servizio, selezionare Database.

Architettura

L'architettura mostra un'applicazione in container distribuita in Azure Kubernetes Service (AKS) e Oracle Exadata Database Service in un'area Microsoft Azure con backup automatici che vanno a Oracle Database Autonomous Recovery Service nell'area Azure o a OCI Object Storage nell'area OCI.

Kubernetes è una piattaforma open source portatile ed estendibile per la gestione di carichi di lavoro e servizi containerizzati, che facilita sia la configurazione dichiarativa che l'automazione. Kubernetes è considerata una tecnologia fondamentale per il cloud computing nativo e ha un ampio ecosistema in rapida crescita. I servizi, il supporto e gli strumenti Kubernetes sono ampiamente disponibili.

In questa architettura un'applicazione containerizzata in AKS si trova nella propria subnet di applicazione. Un cluster Kubernetes può contenere più pod, ognuno dei quali si connette al proprio Oracle Pluggable Database (PDB). I PDB nel database primario vengono distribuiti in Oracle Database@Azure che viene eseguito su Oracle Exadata Database Service on Dedicated Infrastructure in un'area di disponibilità di Azure. Le immagini dei container vengono memorizzate nel registro dei container di Azure. Gli utenti accedono all'applicazione esternamente tramite un load balancer pubblico.

L'automazione del cloud semplifica la maggior parte delle attività di gestione e del ciclo di vita per l'infrastruttura Oracle Exadata e i database multi-tenant (CDB e PDB) Oracle. Ad esempio, aggiungere server e ridimensionare le OCPU, creare database e home del database, pianificare la manutenzione dell'infrastruttura, aggiornare e aggiornare il sistema operativo VM, Grid Infrastructure e i database, eseguire operazioni di backup e ripristino e persino abilitare le protezioni per il recupero da errori irreversibili tramite Oracle Data Guard.

Il seguente diagramma illustra questa architettura di riferimento.

Descrizione di azure-kube-exadata-db.png
Descrizione dell'immagine azure-kube-exadata-db.png

azure-kube-exadata-db-oracle.zip

L'architettura presenta i seguenti componenti:

  • Aree

    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).

    Un'area di Azure è un'area geografica in cui risiedono uno o più data center fisici di Azure, denominati zone di disponibilità. Le regioni sono indipendenti da altre regioni e grandi distanze possono separarle (tra paesi o addirittura continenti).

    Azure e le region OCI sono aree geografiche localizzate. Per Oracle Database@Azure, un'area di Azure è connessa a un'area OCI, con zone di disponibilità (AZ) in Azure connesse ai domini di disponibilità (AD) in OCI. Le coppie di aree Azure e OCI vengono selezionate per ridurre al minimo distanza e latenza.

  • Area di disponibilità di Azure

    Una zona di disponibilità è un centro dati fisicamente separato all'interno di un'area progettata per essere disponibile e con tolleranza degli errori. Le zone di disponibilità sono abbastanza vicine da avere connessioni a bassa latenza con altre zone di disponibilità.

    La delega della subnet è la capacità di Microsoft di inserire un servizio gestito, in particolare un servizio platform-as-a-service, direttamente nella rete virtuale.

  • Rete virtuale Microsoft Azure

    Microsoft Azure Virtual Network (VNet) è la base fondamentale per la tua rete privata in Azure. VNet consente a molti tipi di risorse di Azure, come le macchine virtuali (VM) di Azure, di comunicare in modo sicuro tra loro, Internet e reti on-premise.

    La delega della subnet è la capacità di Microsoft di inserire un servizio gestito, in particolare un servizio platform-as-a-service, direttamente nella rete virtuale.

  • Exadata Database Service on Dedicated Infrastructure

    Oracle Exadata Database Service offre funzionalità Oracle Database comprovate su Oracle Exadata Cloud Infrastructure nel cloud pubblico appositamente e ottimizzate. L'automazione cloud integrata, la scalabilità elastica delle risorse, la sicurezza e le prestazioni rapide per OLTP, gli analytics in-memory e i carichi di lavoro convergenti di Oracle Database semplificano la gestione e riducono i costi.

    Oracle Exadata Cloud Infrastructure porta più core CPU, maggiore storage e un fabric di rete più veloce nel cloud pubblico. I server di storage Oracle Exadata includono la memoria Exadata RDMA (XRMEM), che crea un livello aggiuntivo di storage e migliora le prestazioni complessive del sistema. Exadata combina XRMEM con innovativi algoritmi RDMA che ignorano la rete e lo stack I/O, eliminando costosi interrupt CPU e switch di contesto.

    Oracle Exadata Cloud Infrastructure aumenta il throughput del suo accesso diretto remoto attivo-attivo a 100 Gbps su fabric di rete interno RoCE (Converged Ethernet), fornendo un'interconnessione più rapida rispetto alle generazioni precedenti con una latenza estremamente bassa tra tutti i server di calcolo e storage.

  • Oracle Database Autonomous Recovery Service

    Oracle Database Autonomous Recovery Service è un servizio completamente gestito progettato per proteggere i database Oracle dalla perdita di dati e dalle minacce informatiche. Offre backup più rapidi con sovraccarico ridotto del database, ripristino affidabile con backup convalidati e protezione in tempo reale che consente il ripristino entro meno di un secondo da un'interruzione o un attacco ransomware. Questo servizio fornisce un dashboard centralizzato per la protezione dei dati ed è consigliato per eseguire il backup dei database Oracle.

  • Servizi Azure Kubernetes

    Il servizio AKS (Azure Kubernetes Service) è un servizio Kubernetes gestito offerto da Microsoft Azure per distribuire e gestire applicazioni in container. Un cluster Kubernetes può contenere più pod.

  • Oracle Database@Azure

    Oracle Database@Azure è il servizio Oracle Database (Oracle Exadata Database Service on Dedicated Infrastructure e Oracle Autonomous Database Serverless) in esecuzione su Oracle Cloud Infrastructure (OCI), distribuito nei data center Microsoft Azure. Il servizio offre funzionalità e parità di prezzo con OCI, gli utenti acquistano il servizio su Azure Marketplace.

    Oracle Database@Azure integra le tecnologie Oracle Exadata Database Service, Oracle Real Application Clusters (Oracle RAC) e Oracle Data Guard nella piattaforma Azure. Gli utenti gestiscono il servizio sulla console di Azure e con gli strumenti di automazione di Azure. Il servizio viene distribuito in Azure Virtual Network (VNet) e integrato con il sistema di gestione delle identità e degli accessi di Azure. Le metriche generiche e i log di audit di OCI e Oracle Database sono disponibili in modo nativo in Azure. Il servizio richiede agli utenti di disporre di una sottoscrizione Azure e di una tenancy OCI. Oracle Autonomous Database si basa su Oracle Exadata Cloud Infrastructure, si autogestisce, si protegge e si ripara, eliminando la gestione manuale del database e gli errori umani. Autonomous Database consente lo sviluppo di applicazioni scalabili basate sull'intelligenza artificiale con qualsiasi dato utilizzando funzionalità AI integrate utilizzando il modello di linguaggio di grandi dimensioni (LLM) e la posizione di distribuzione.

    Sia Oracle Exadata Database Service che Oracle Autonomous Database Serverless vengono forniti facilmente tramite il portale nativo di Azure, consentendo l'accesso all'ecosistema Azure più ampio.

    I vantaggi commerciali dei clienti includono l'utilizzo degli impegni di Azure (MACC) per l'acquisto dei costi di Oracle Exadata Database Service, OCI Object Storage e Oracle Cloud Infrastructure Networking Data Transfer. È possibile sfruttare le licenze Oracle esistenti secondo il modello BYOL e le licenze incluse, un modello di supporto collaborativo e di procurement in Microsoft Azure Marketplace, tutti presentati come un'unica fattura unificata.

  • Piano di controllo

    Un piano di controllo Kubernetes gestisce le risorse per i nodi di lavoro e i pod all'interno di un cluster Kubernetes. I componenti del piano di controllo rilevano e rispondono agli eventi, eseguono la pianificazione e spostano le risorse del cluster.

  • Storage degli oggetti

    Lo storage degli oggetti OCI fornisce un accesso rapido a grandi quantità di dati strutturati e non strutturati di qualsiasi tipo di contenuto, inclusi backup del database, dati analitici e contenuti avanzati come immagini e video. Puoi archiviare i dati direttamente da Internet o dalla piattaforma cloud in tutta sicurezza. Puoi ridimensionare lo storage senza alcun deterioramento delle prestazioni o dell'affidabilità del servizio.

    Utilizza lo storage standard per lo storage "caldo" a cui è necessario accedere rapidamente, immediatamente e frequentemente. Utilizza lo storage di archivio per lo storage "freddo" che conservi per lunghi periodi di tempo e a cui accedi raramente o raramente.

  • Gateway del servizio

    Un gateway di servizi fornisce l'accesso da una VCN ad altri servizi, come Oracle Cloud Infrastructure Object Storage. Il traffico dalla VCN al servizio Oracle viene instradato sul fabric di rete Oracle e non attraversa Internet.

Considerazioni

Quando si distribuisce questa architettura di riferimento, tenere presente quanto riportato di seguito.

  • Aggiorna il file YAML

    Utilizzare le stringhe di connessione per aggiornare il file YAML della distribuzione del servizio Azure Kubernetes. È possibile trovare le stringhe di connessione ai database nella console OCI.

  • Prestazioni
    • Un'architettura multi-tenant Oracle è consigliata per il livello di persistenza per l'architettura dei microservizi, per l'isolamento del contesto limitato di dati, sicurezza e alta disponibilità.

      Con l'architettura multi-tenant Oracle, Oracle Database può funzionare come un container database (CDB) che contiene più pluggable database (PDB). Ciò consente ai microservizi che hanno una vasta gamma di tipi di dati e carichi di lavoro di utilizzare un singolo container database convergente. Sfruttando i PDB, Oracle può fornire i database isolati dei microservizi all'interno del CDB e consentire lo spostamento dei PDB nei container fisici. I microservizi possono connettersi a un'istanza di Oracle Database in esecuzione su Oracle Exadata Database Service on Dedicated Infrastructure.

  • Sicurezza
    • Valutare la possibilità di utilizzare un vault, ad esempio Azure Key Vault, invece di memorizzare la password e il wallet della stringa di connessione (se applicabile) nei segreti Kubernetes per il servizio Azure Kubernetes.
  • Rete
    • Richiede almeno una rete virtuale di Azure (VNet) con una subnet delegata al collegamento di rete di Oracle Database.

    • Prendi in considerazione la possibilità di distribuire la subnet del servizio Microsoft Azure Kubernetes e la subnet client del cluster VM Oracle Exadata Database Service nella stessa VNet.

  • Disponibilità
    • Prendi in considerazione la possibilità di utilizzare e configurare Universal Connection Pool (UCP), Oracle JDBC Driver e Oracle Real Application Clusters (Oracle RAC) per sfruttare le funzionalità HA (High Availability) di Oracle Database per un servizio continuo durante i tempi di inattività pianificati e non per mantenere la disponibilità continua delle tue applicazioni.

      UCP supporta tutte le configurazioni e le funzionalità mission-critical di Oracle Database (disponibilità, scalabilità e bilanciamento del carico) pronte all'uso, inclusi Oracle RAC, Oracle Data Guard, partizionamento orizzontale di Oracle, API asincrona, bilanciamento del carico di runtime, XA, continuità dell'applicazione, Transaction Guard, TAF (Transparent Application Failover), SCAN (Single Client Access Name) e DRCP (front-end to Database Resident Connection Pool). Con il sistema Oracle RAC, qualsiasi servizio di database Oracle è accessibile equamente da diversi nodi server. Se un nodo o un subset del cluster Oracle RAC non riesce o viene disattivato per manutenzione, il database rimane accessibile tramite i nodi attivi rimanenti.

    • Di seguito sono riportati gli elementi di base per l'implementazione dell'alta disponibilità delle applicazioni con Oracle Database:
      1. Utilizzare un servizio di database
      2. Configurare un URL o una stringa di connessione per High Availability
      3. Abilitare FAN ( Fast Application Notification)
      4. Implementa l'eliminazione e la disponibilità continua del database per le applicazioni Java
    • Valutare la possibilità di utilizzare Oracle Database Autonomous Recovery Service come destinazione di backup consigliata per Oracle Database.

      Di seguito sono riportate le due opzioni disponibili per memorizzare i backup: nella stessa area di Azure risiede Oracle Exadata Database Service oppure un'area OCI predefinita associata all'area di Azure.

Distribuire

Per distribuire questa architettura di riferimento, eseguire le operazioni riportate di seguito.

  1. Per distribuire il cluster AKS (Azure Kubernetes Service), andare a Quickstart: Distribuire un cluster AKS (Azure Kubernetes Service) utilizzando il portale Azure e seguire le istruzioni per distribuire un cluster Azure Kubernetes.
  2. Iscriviti a Oracle Database@Azure da Azure Marketplace.
  3. Distribuire il cluster virtuale Oracle Exadata nella subnet delegata del file VNet.
  4. Distribuire Azure Kubernetes in una subnet separata nella stessa VNet.
  5. Aggiornare la definizione dell'applicazione in modo da utilizzare le stringhe di connessione per connettersi ai database.

conferme

  • Autori: Suzanne Holliday, Julien Silverston, Paul Parkinson, Leo Alvarado