Distribuisci OCI Kubernetes Engine con Autonomous Transaction Processing in Oracle Cloud
Implementa OCI Kubernetes Engine (OKE) con il database Oracle Autonomous Transaction Processing (ATP) per creare, distribuire e gestire in modo affidabile applicazioni cloud native utilizzando la tecnologia di database Oracle su Oracle Cloud Infrastructure.
Architettura
Implementa Oracle Cloud Infrastructure Kubernetes Engine (OKE) con il database Oracle Autonomous Transaction Processing (ATP) per creare, distribuire e gestire in modo affidabile applicazioni cloud native utilizzando la tecnologia di database Oracle su Oracle Cloud Infrastructure.
Il seguente diagramma descrive l'architettura.
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).
- 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.
- Domini di errore
Un dominio di errore consiste in un gruppo di hardware e infrastruttura all'interno di un dominio di disponibilità. Ogni dominio di disponibilità dispone di tre domini di errore con alimentazione e hardware indipendenti. OCI Kubernetes Engine gestisce la distribuzione dei nodi nel cluster in più domini di errore. L'applicazione containerizzata è quindi protetta da guasti fisici al server, manutenzione del sistema e guasti di alimentazione in un dominio di errore.
- 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 load balancer fornito da OCI Kubernetes Engine (OKE) fornisce la distribuzione automatica del traffico da un singolo punto di accesso alle risorse nel cluster.
- Autonomous Transaction Processing
Oracle Autonomous Transaction Processing è un servizio di database self-driving, self-securing, self-repairing ottimizzato per i carichi di lavoro di elaborazione delle transazioni. Non è necessario configurare o gestire alcun componente hardware né installare software. Oracle Cloud Infrastructure gestisce la creazione del database, nonché il backup, l'applicazione di patch, l'upgrade e il tuning del database.
- Motore Kubernetes OCI
Oracle Cloud Infrastructure Kubernetes Engine (Kubernetes Engine o OKE) è un servizio completamente gestito, scalabile e ad alta disponibilità che puoi utilizzare per distribuire le tue applicazioni containerizzate nel cloud. Puoi specificare le risorse di computazione richieste dalle tue applicazioni e Kubernetes Engine le esegue sul Oracle Cloud Infrastructure in una tenancy esistente. OKE utilizza Kubernetes per automatizzare l'implementazione, la scalabilità e la gestione di applicazioni containerizzate tra cluster di host.
Suggerimenti
Utilizzare i seguenti suggerimenti come punto di partenza. Le vostre esigenze potrebbero differire dall'architettura descritta qui.
- VCN
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.
Selezionare i blocchi CIDR che non si sovrappongono a qualsiasi altra rete (in Oracle Cloud Infrastructure, nel data center on premise o in un altro provider cloud) a cui si intende impostare 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.
Utilizzare le subnet regionali.
Per semplicità, questa architettura utilizza una subnet pubblica per ospitare Oracle Cloud Infrastructure Kubernetes Engine(OKE). Puoi anche utilizzare una subnet privata. In tal caso, utilizzare un gateway NAT per consentire l'accesso alla rete Internet pubblica dal cluster.
- Motore Kubernetes OCI
In questa architettura, i nodi di lavoro nel cluster Kubernetes utilizzano la forma VM.Standard2.1 ed eseguono su Oracle Linux. È possibile creare fino a 1000 nodi in un cluster.
- Autonomous Database
In questa architettura, l'applicazione memorizza i dati relazionali in un database Oracle Autonomous Transaction Processing. Si consiglia di utilizzare la versione più recente.
Considerazioni
Quando si implementa questa architettura, considerare i requisiti per i seguenti parametri:
- Scalabilità del database autonomo
Puoi ridimensionare manualmente il numero base di memorie centrali CPU del database in qualsiasi momento. La funzione di ridimensionamento automatico di Autonomous Transaction Processing consente al database di utilizzare fino a tre volte il numero base corrente di memorie centrali CPU in qualsiasi momento. Con l'aumento della domanda, il ridimensionamento automatico aumenta automaticamente il numero di core in uso. Autonomous Transaction Processing ti consente di ridimensionare la capacità di storage del database in qualsiasi momento senza influire sulla disponibilità o sulle prestazioni.
- Backup di Autonomous Database
Oracle Cloud Infrastructure esegue automaticamente il backup dei tuoi database autonomi e conserva questi backup per 60 giorni. Puoi ripristinare e recuperare il database in qualsiasi point-in-time in questo periodo di conservazione. Puoi anche creare backup manuali per integrare i tuoi backup automatici. I backup manuali vengono memorizzati in un bucket Oracle Cloud Infrastructure Object Storage che viene creato e conservato per 60 giorni.
- Scalabilità Kubernetes
Puoi eseguire lo scale out della tua applicazione aggiornando il numero di nodi di lavoro nel cluster Kubernetes, a seconda del carico. Analogamente, è possibile eseguire lo scale in riducendo il numero di nodi di lavoro nel cluster. Quando crei un servizio nel cluster Kubernetes, puoi creare un load balancer per distribuire il traffico del servizio tra i nodi assegnati a tale servizio.
- Disponibilità dell'applicazione
I domini di errore offrono la migliore resilienza all'interno di un singolo dominio di disponibilità. È inoltre possibile distribuire istanze o nodi che eseguono gli stessi task in più domini di disponibilità. Questa progettazione rimuove un singolo punto di errore introducendo la ridondanza.
- Sicurezza
Utilizza criteri che limitano chi può accedere a quali risorse Oracle Cloud Infrastructure e come possono accedervi.
OCI Kubernetes Engine è integrato con Oracle Cloud Infrastructure Identity and Access Management (IAM). IAM offre un'autenticazione semplice con la funzionalità di identità nativa di Oracle Cloud Infrastructure.
Distribuire
Il codice necessario per distribuire questa architettura di riferimento è disponibile in GitHub. Puoi estrarre il codice in Oracle Cloud Infrastructure Resource Manager con un solo clic, creare lo stack e distribuirlo. In alternativa, scaricare il codice da GitHub sul computer, personalizzare il codice e distribuire l'architettura utilizzando l'interfaccia della riga di comando Terraform.
- Implementa utilizzando Oracle Cloud Infrastructure Resource Manager:
- Fare clic su
Se non si è già connessi, immettere la tenancy e le credenziali utente.
- Esaminare e accettare i termini e condizioni.
- Selezionare l'area in cui distribuire lo stack.
- Seguire i prompt visualizzati e le istruzioni per creare lo stack.
- Dopo aver creato lo stack, fare clic su Azioni Terraform e selezionare Piano.
- Attendere il completamento del job e rivedere il piano.
Per apportare eventuali modifiche, tornare alla pagina Dettagli stack, fare clic su Modifica stack e apportare le modifiche necessarie. Eseguire quindi di nuovo l'azione Piano.
- Se non sono necessarie ulteriori modifiche, tornare alla pagina Dettagli stack, fare clic su Azioni Terraform e selezionare Applica.
- Fare clic su
- Distribuire utilizzando l'interfaccia della riga di comando Terraform:
- Passare a GitHub.
- Scaricare o clonare il codice nel computer locale.
- Seguire le istruzioni in
deploy/complete/README.md
.
Visualizza altro
Scopri di più sulla distribuzione di applicazioni basate su microservizi containerizzati nei cluster Kubernetes nel cloud.