Distribuire Oracle WebLogic Server per OKE utilizzando uno stack del Marketplace

Distribuisci rapidamente un dominio Oracle WebLogic Server in un cluster Kubernetes di cui è stato eseguito il provisioning in Oracle Cloud Infrastructure, con un controller Jenkins configurato per i job della pipeline CI/CD per supportare le operazioni di gestione del ciclo di vita del WebLogic Server.

Fornendo Oracle WebLogic Server come set di applicazioni per Oracle Cloud Infrastructure Kubernetes Engine (OKE) tramite Oracle Cloud Marketplace, Oracle Oracle WebLogic Server for OKE è facile e veloce. Genera una configurazione del server WebLogic su OKE in pochi minuti, con un controller Jenkins configurato per OKE e i job di pipeline di integrazione e distribuzione continua (CI/CD) per supportare le operazioni di gestione del ciclo di vita del server WebLogic.

L'utilizzo di Oracle Cloud Marketplace per eseguire il provisioning di Oracle WebLogic Server per OKE fornisce quanto segue:

  • Un equilibrio tra automazione, portabilità e possibilità di personalizzare più domini
  • Operazioni di gestione del ciclo di vita con una pipeline CI/CD utilizzando Jenkins
  • Licenze flessibili con Universal Credits Model (UCM) o Bring Your Own License (BYOL)

Architettura

Oracle WebLogic Server per OCI è completamente integrato con l'infrastruttura di base. Questa integrazione semplifica il provisioning di un cluster WebLogic, la creazione e la configurazione dell'infrastruttura richiesta e la fornitura dei servizi necessari, quali i load balancer e lo storage dei file.

L'architettura utilizza un'area con un dominio di disponibilità e subnet regionali. La stessa architettura di riferimento può essere utilizzata in un'area con più domini di disponibilità. Si consiglia di utilizzare una subnet regionale per la distribuzione, indipendentemente dal numero di domini di disponibilità.

Quando viene eseguito il provisioning, questa architettura di riferimento include quanto segue:

  • Un cluster OCI Kubernetes Engine (OKE) distribuito in una subnet privata con due pool di nodi
  • Un servizio di storage di file condiviso tra i pod
  • Un host amministrativo distribuito in una subnet privata per accedere facilmente alle aree riportate di seguito.
    • Il cluster OCI Kubernetes Engine
    • Log per il dominio Oracle WebLogic Server
    • Configurazione home Jenkins
    • Script di supporto per la gestione del dominio
    • Il servizio di storage di file
  • Un host bastion distribuito in una subnet pubblica per accedere alle risorse distribuite nella subnet privata
  • un load balancer privato per accedere alla console Jenkins e alla console amministrativa di Oracle WebLogic Server;
  • Un load balancer pubblico per accedere al cluster Oracle WebLogic Server

Il seguente diagramma illustra questa architettura di riferimento:



wls-oke-marketplace-oracle.zip

Questa architettura comprende 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).

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

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

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

  • Oracle Cloud Infrastructure Registry

    Oracle Cloud Infrastructure Registry è un servizio gestito da Oracle e che ti consente di semplificare il flusso di lavoro da sviluppo a produzione. Registry semplifica la memorizzazione, la condivisione e la gestione degli artifact di sviluppo, ad esempio le immagini Docker.

  • Dominio WebLogic

    Un dominio WebLogic è un gruppo di applicazioni e risorse correlate e le informazioni di configurazione necessarie per eseguirle. Il dominio è costituito da un server di amministrazione e da uno o più server gestiti per ospitare le distribuzioni delle applicazioni Java. Le istanze di server gestiti possono essere in cluster, non in cluster o una combinazione di istanze in cluster e non in cluster. Tutti i cluster nel dominio utilizzano lo stesso server di amministrazione.

  • Componenti del cluster WebLogic

    I componenti di un cluster possono sfruttare le opzioni di failover e bilanciamento del carico. I seguenti tipi di oggetti possono essere raggruppati in cluster in una distribuzione di Oracle WebLogic Server:

    • Servlet
    • JavaServer Pages (JSP)
    • EJB (Enterprise Java Bean)
    • Oggetti di richiamo del metodo remoto (RMI)
    • Destinazioni JMS (Java Messaging Service)
    • Connessioni JDBC (Java Database Connectivity)
  • Operatore Kubernetes di Oracle WebLogic Server

    Il dominio Oracle WebLogic Server per OKE include l'operatore Kubernetes Oracle WebLogic Server open source, che dispone di diverse funzioni chiave per facilitare la gestione dei domini in un ambiente Kubernetes. Un dominio server WebLogic viene modellato come risorsa personalizzata nel file di configurazione Kubernetes. L'operatore utilizza questa configurazione e l'API Kubernetes per automatizzare le operazioni del server WebLogic, ad esempio il provisioning, l'avvio o l'arresto di server, l'applicazione di patch, il ridimensionamento e la sicurezza.

  • Jenkins

    Oracle WebLogic Server per OKE utilizza Jenkins per automatizzare la creazione di immagini personalizzate per il dominio Oracle WebLogic Server e per distribuire tali immagini nel cluster Kubernetes. Jenkins è un motore di automazione open source che facilita un flusso di lavoro di sviluppo basato su integrazione continua e distribuzione continua (CI/CD). È possibile creare progetti che eseguono una serie di passi, ad esempio il check-out di file da un sistema di controllo del codice sorgente, la compilazione di codice o l'esecuzione di uno script. Le pipeline sono un tipo di progetto che organizza attività complesse in fasi, ad esempio la creazione, il test e la distribuzione di applicazioni.

Suggerimenti

Utilizzare i seguenti suggerimenti come punto di partenza. Le tue esigenze potrebbero differire.

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

    In questa architettura, Oracle WebLogic Server for OKE crea una rete cloud virtuale (VCN) e subnet in Oracle Cloud Infrastructure per supportare Oracle WebLogic Server, Kubernetes e i load balancer. Tuttavia, se lo desideri, puoi anche utilizzare una VCN esistente e subnet esistenti. Oracle WebLogic Server per OKE crea subnet private per l'istanza di computazione dell'host di amministrazione, per i componenti Kubernetes e per lo storage dei file. Crea subnet pubbliche per il load balancer pubblico e le istanze di computazione bastion. Si consiglia di seguire la stessa architettura quando si utilizzano le subnet esistenti.

  • Load balancer

    Quando si crea un dominio, Oracle WebLogic Server per OKE crea e configura i seguenti load balancer in Oracle Cloud Infrastructure:

    • Un load balancer pubblico distribuisce il traffico tra i server gestiti nel tuo dominio
    • Un load balancer privato consente di accedere alla console di amministrazione di Oracle WebLogic Server e alla console Jenkins

    Un load balancer è costituito da istanze primarie e in standby, ma è accessibile da un singolo indirizzo IP. Se l'istanza primaria non riesce, il traffico viene instradato automaticamente all'istanza di standby.

    A un load balancer privato non viene assegnato un indirizzo IP pubblico e non è possibile accedervi dall'esterno di Oracle Cloud Infrastructure. Puoi utilizzare l'istanza di computazione bastion per ottenere l'accesso al load balancer privato per il tuo dominio.

    Oracle WebLogic Server per OKE crea anche un controller di entrata Nginx nel cluster Kubernetes. Nginx è un servizio proxy inverso open source che controlla il flusso di traffico verso i pod all'interno del cluster Kubernetes.

  • Dominio WebLogic

    Durante la creazione del dominio, l'istanza di computazione di amministrazione viene utilizzata anche per configurare il nuovo cluster Kubernetes e distribuire i pod per il dominio. Per impostazione predefinita, questa architettura esegue il provisioning di un dominio in cluster. È possibile personalizzare il dominio in modo che non sia in cluster dopo il provisioning.

    I domini creati con Oracle WebLogic Server per OKE non utilizzano Node Manager. L'operatore Kubernetes di Oracle WebLogic Server esegue il monitoraggio dello stato del server e le operazioni del ciclo di vita.

    Oracle WebLogic Server per OKE installa il client Helm nell'istanza di computazione di amministrazione e utilizza Helm per installare il grafico per l'operatore Kubernetes Oracle WebLogic Server. Helm è un gestore di pacchetti per Kubernetes che puoi utilizzare per installare e gestire rapidamente applicazioni, strumenti e servizi Kubernetes per un cluster Kubernetes. Le applicazioni installate nel cluster Kubernetes utilizzando Helm includono CI Jenkins, Nginx e WebLogic Kubernetes Operator.

    Oracle WebLogic Server per OKE installa e configura l'operatore nel cluster Kubernetes. È possibile utilizzare l'operatore con kubectl nell'istanza di computazione di amministrazione.

    Oracle WebLogic Server per OKE utilizza Jenkins per automatizzare la creazione di immagini personalizzate per il dominio WebLogic Server e la distribuzione di tali immagini nel cluster Kubernetes.

  • Motore Kubernetes OCI

    Quando si crea un dominio con Oracle WebLogic Server per OKE, viene eseguito automaticamente il provisioning di due pool di nodi: WebLogic e non WebLogic. Per impostazione predefinita, ogni pool di nodi viene creato con un nodo di lavoro. Tuttavia, durante il provisioning, è possibile specificare il numero di nodi di lavoro desiderato in ogni pool di nodi.

    I pod riportati di seguito vengono distribuiti nel cluster Kubernetes nell'ambito dell'architettura.

    • Pool di nodi WebLogic:
      • Un pod che esegue il server di amministrazione del dominio
      • Un pod che esegue ogni server gestito nel dominio
      • Un pod che esegue l'agente Jenkins
    • Pool di nodi non WebLogic:
      • Un pod che esegue il controller Jenkins
      • Un pod che esegue un controller in entrata Nginx

    Quando si crea un dominio, Oracle WebLogic Server per OKE esegue il push di un'immagine predefinita nel registro utilizzato per eseguire il provisioning dei pod per il dominio. Dall'istanza di computazione di amministrazione, puoi aggiornare questa immagine predefinita e quindi applicare tali modifiche utilizzando Kubernetes.

    Oracle WebLogic Server per OKE esegue il provisioning del server primario Jenkins in un pod nel cluster Kubernetes. Jenkins è inoltre configurato per utilizzare il plugin Kubernetes. Quando si avvia o si pianifica un job, il server Jenkins crea un altro pod nel cluster Kubernetes e questo pod agente esegue il job.

Considerazioni

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

  • Memoria

    I file del tuo dominio vengono memorizzati localmente all'interno di ciascun pod nel cluster Kubernetes, ma Oracle WebLogic Server for OKE utilizza anche Oracle Cloud Infrastructure File Storage per supportare determinati casi d'uso di amministrazione. Oracle WebLogic Server per OKE esporta il file system in una destinazione di accesso in un dominio di disponibilità specificato, che può essere un dominio di disponibilità diverso da quello utilizzato per le istanze di computazione del dominio.

    Questa architettura crea una configurazione di base del dominio Oracle WebLogic Server, che non richiede un database. Se si desidera creare applicazioni con Oracle Application Development Framework (ADF), è possibile utilizzare Oracle WebLogic Server per OCI anche per creare un dominio abilitato per i file JRF (Java Require Files). Prendi in considerazione l'utilizzo di un database Oracle Autonomous Transaction Processing o di un sistema Oracle Cloud Infrastructure Database esistente, necessario per eseguire il provisioning di un dominio abilitato per JRF.

  • Sicurezza

    Il provisioning di un dominio in Oracle WebLogic Server per OKE richiede uno o più segreti in Oracle Cloud Infrastructure Vault. Ogni segreto memorizza una sola password. La password è obbligatoria quando si crea un cluster Oracle WebLogic Server. Questa architettura utilizza un vault standard, che è ospitato su una partizione HSM (Hardware Security Module) con più tenant e utilizza una metrica basata su chiavi più economica per la fatturazione. Un vault privato virtuale offre maggiore isolamento e prestazioni allocando una partizione dedicata a un HSM. Ogni tipo di vault ha un limite di servizio separato nella tenancy di Oracle Cloud Infrastructure.

  • Gestibilità

    Oracle WebLogic Server per OKE è accessibile come una raccolta di applicazioni in Oracle Cloud Marketplace.

    Oracle Cloud Marketplace è un negozio online disponibile nella console di Oracle Cloud Infrastructure. Quando si avvia un'applicazione Oracle WebLogic Server per OKE da Oracle Cloud Marketplace, viene richiesto di fornire informazioni di base, quindi viene indirizzato a Resource Manager per completare la configurazione del dominio Oracle WebLogic Server e supportare le risorse cloud. Resource Manager è un servizio Oracle Cloud Infrastructure che utilizza Terraform per eseguire il provisioning, l'aggiornamento e l'eliminazione di una raccolta di risorse cloud correlate sotto forma di singola unità denominata stack.

    Scegliere un'applicazione Oracle WebLogic Server per OKE che soddisfi i requisiti funzionali e di licenza.

  • Costo

    Di seguito è riportato l'elenco delle edizioni Bring Your Own License (BYOL) e Universal Credit (UCM) disponibili per Oracle WebLogic Server for Oracle Cloud Infrastructure Kubernetes Engine con la piena compatibilità con il software on-premise Oracle WebLogic Server:

    • Oracle WebLogic Server Enterprise Edition per OKE (UCM)
    • Oracle WebLogic Suite per OKE (UCM)
    • Oracle WebLogic Server Enterprise Edition per OKE (modello BYOL)
    • Oracle WebLogic Suite per OKE (modello BYOL)

Distribuire

Gli stack Terraform con diverse opzioni di licenza per distribuire questa architettura di riferimento sono disponibili in Oracle Cloud Marketplace.

Per distribuire lo stack appropriato, vedere Introduzione a Oracle WebLogic Server for OKE.

Log delle modifiche

Questo log elenca le modifiche significative: