Distribuire Oracle WebLogic Server in un cluster Kubernetes

Puoi distribuire Oracle WebLogic Server nei cluster Kubernetes in locale e in Oracle Cloud. L'esecuzione di Oracle WebLogic Server su Kubernetes offre un equilibrio tra automazione, portabilità e possibilità di personalizzare più domini. L'operatore Kubernetes di Oracle WebLogic Server è uno strumento open source che semplifica il processo di creazione e gestione di più domini Oracle WebLogic Server in un cluster Kubernetes.

Architettura

Questa architettura di riferimento mostra un dominio Oracle WebLogic Server distribuito in un cluster Kubernetes di cui è stato eseguito il provisioning in Oracle Cloud utilizzando OCI Kubernetes Engine. Questo servizio semplifica la creazione di un cluster Kubernetes e la fornitura dei servizi necessari, come un load balancer, uno storage a blocchi e una rete.

Il seguente diagramma illustra questa architettura di riferimento.

Descrizione di weblogic-oke.png
Descrizione dell'immagine weblogic-oke.png

weblogic-oke-oracle.zip

L'architettura presenta i seguenti componenti:

  • Area

    Un'area geografica Oracle Cloud Infrastructure è un'area geografica localizzata che contiene uno o più data center, che ospitano 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 è un raggruppamento 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. Quando distribuisci le risorse su più domini di errore, le tue applicazioni possono tollerare errori fisici del server, manutenzione del sistema e errori di alimentazione all'interno di 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

    Oracle Cloud Infrastructure Load Balancing fornisce la distribuzione automatica del traffico da un unico punto di accesso a più server.

  • Storage file

    Oracle Cloud Infrastructure File Storage offre un file system di rete di livello enterprise duraturo, scalabile, sicuro. Puoi connetterti allo storage di file OCI da qualsiasi istanza Bare Metal, virtual machine o container in una VCN. Inoltre, puoi accedere allo storage di file OCI dall'esterno della VCN utilizzando Oracle Cloud Infrastructure FastConnect e IPSec VPN.

  • Motore Kubernetes

    Oracle Cloud Infrastructure Kubernetes Engine (OCI Kubernetes Engine o OKE) è un servizio completamente gestito, scalabile e ad alta disponibilità da utilizzare per distribuire le 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.

  • Cluster Oracle WebLogic Server

    Un cluster fa parte di un dominio Oracle WebLogic Server specifico. Un cluster è composto da più istanze di Oracle WebLogic Server che vengono eseguite simultaneamente e lavorano insieme per fornire una maggiore scalabilità e affidabilità.

    Un cluster WebLogic è diverso da un cluster Kubernetes. Un cluster WebLogic viene visualizzato nei client come singola istanza di Oracle WebLogic Server. Le istanze di server che compongono un cluster possono essere eseguite sullo stesso computer o trovarsi su computer diversi. Ogni istanza di server in un cluster deve eseguire la stessa versione di Oracle WebLogic Server.

  • WebLogic Operatore Kubernetes

    Un operatore Kubernetes è un software che gestisce applicazioni complesse. L'operatore Kubernetes di Oracle WebLogic è progettato per svolgere un ruolo simile a quello di operatore umano in un'implementazione di data center tradizionale. Le sue attività includono l'avvio e l'arresto degli ambienti, l'avvio dei backup, l'esecuzione di operazioni di ridimensionamento, l'esecuzione di attività manuali associate a esigenze di disaster recovery e alta disponibilità e il coordinamento delle azioni con altri operatori in altri data center.

Suggerimenti

Le vostre esigenze potrebbero differire dall'architettura descritta qui. Utilizzare i seguenti suggerimenti come punto di partenza.

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

    Questa architettura utilizza una subnet pubblica per ospitare Oracle Cloud Infrastructure Kubernetes Engine. È inoltre possibile utilizzare una subnet privata; in tal caso, utilizzare un gateway NAT per consentire l'accesso alla rete Internet pubblica dal cluster.

  • Motore Kubernetes OCI

    Sebbene l'operatore Kubernetes Oracle WebLogic supporti qualsiasi cluster Kubernetes generico, questa architettura utilizza i cluster OCI Kubernetes Engine. Questi cluster dispongono di cinque nodi di lavoro distribuiti su host fisici diversi. Nel cluster sono dedicati tre nodi di lavoro per i server gestiti di Oracle WebLogic Server, uno per il server di amministrazione WebLogic e uno per l'operatore WebLogic Kubernetes. È possibile creare fino a 1000 nodi in un cluster. I nodi di lavoro vengono distribuiti sugli host Oracle Linux VM.Standard2.1.

  • Load balancer

    Per impostazione predefinita, i server Oracle WebLogic Server (server di amministrazione e gestiti) creati dall'operatore non sono esposti al di fuori del cluster OCI Kubernetes Engine. Per esporre l'applicazione al mondo esterno, questa architettura utilizza un load balancer pubblico su Oracle Cloud Infrastructure Load Balancing. Un load balancer pubblico dispone di un indirizzo IP pubblico accessibile da Internet. Questa architettura utilizza un load balancer con 100 Mbps per gestire il traffico. Se devi gestire un numero maggiore di traffico in entrata, puoi scegliere una larghezza di banda maggiore, fino a 8000 Mbps.

  • Storage file

    Per garantire la conformità alle procedure ottimali per l'esecuzione dei domini di Oracle WebLogic Server, i file di configurazione del dominio in questa architettura vengono memorizzati nello storage di file condiviso accessibile da tutti i server WebLogic del cluster. Questa configurazione offre i seguenti vantaggi:

    • Non è necessario ricreare le immagini Docker per le modifiche alla configurazione del dominio.
    • I backup sono più veloci e centralizzati.
    • I log vengono memorizzati per impostazione predefinita nello storage persistente.

Considerazioni

  • Scalabilità

    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. Nel cluster Kubernetes, quando crei un servizio, puoi creare un load balancer per distribuire il traffico del servizio tra i nodi assegnati a tale servizio. Invece di creare il file system e quindi fare riferimento a esso dagli script operatore, è possibile creare il volume persistente utilizzando il provisioninger di Oracle Cloud Infrastructure.

  • Disponibilità dell'applicazione

    Il cluster Kubernetes dispone di tre nodi di lavoro per i server gestiti distribuiti su diverse infrastrutture fisiche, in modo che i cluster Oracle WebLogic Server abbiano la massima disponibilità.

  • Sicurezza

    Utilizza i criteri per controllare chi può utilizzare le risorse di Oracle Cloud Infrastructure e le operazioni che possono eseguire.

    Oracle Cloud Infrastructure 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.

Log delle modifiche

Questo log elenca le modifiche significative: