Oracle WebLogic Server für OKE mit einem Marketplace-Stack bereitstellen
Stellen Sie schnell eine Oracle WebLogic Server-Domain in einem in Oracle Cloud Infrastructure bereitgestellten Kubernetes-Cluster bereit, wobei ein Jenkins-Controller für CI/CD-Pipelinejobs zur Unterstützung von WebLogic Server-Lebenszyklusverwaltungsvorgängen konfiguriert ist.
Wenn Sie Oracle WebLogic Server als eine Gruppe von Anwendungen für Oracle Cloud Infrastructure Kubernetes Engine (OKE) über den Oracle Cloud Marketplace bereitstellen, ist die Konfiguration von Oracle Oracle WebLogic Server für OKE einfach und schnell. Es generiert in Minutenschnelle eine WebLogic Server-Konfiguration auf OKE, wobei ein Jenkins-Controller für OKE und Pipelinejobs für kontinuierliche Integration und kontinuierliche Bereitstellung (CI/CD) konfiguriert ist, um WebLogic Server-Lebenszyklusverwaltungsvorgänge zu unterstützen.
Die Verwendung von Oracle Cloud Marketplace zum Provisioning von Oracle WebLogic Server für OKE bietet Folgendes:
- Ein Gleichgewicht zwischen Automatisierung, Portabilität und der Möglichkeit, mehrere Domains anzupassen
- Lebenszyklusmanagementvorgänge mit einer CI/CD-Pipeline mit Jenkins
- Flexible Lizenzierung mit Universal Credits Model (UCM) oder Bring Your Own License (BYOL)
Architektur
Oracle WebLogic Server für OCI ist vollständig in die zugrunde liegende Infrastruktur integriert. Durch diese Integration können Sie ganz einfach ein WebLogic-Cluster bereitstellen, die erforderliche Infrastruktur erstellen und konfigurieren und die erforderlichen Services wie Load Balancer und Dateispeicher bereitstellen.
Die Architektur verwendet eine Region mit einer Availability-Domain und regionalen Subnetzen. Die gleiche Referenzarchitektur kann in einer Region mit mehreren Availability-Domains verwendet werden. Es wird empfohlen, unabhängig von der Anzahl der Availability-Domains ein regionales Subnetz für Ihr Deployment zu verwenden.
Bei der Bereitstellung umfasst diese Referenzarchitektur Folgendes:
- Ein OCI Kubernetes Engine-(OKE-)Cluster, das in einem privaten Subnetz mit zwei Knotenpools bereitgestellt wird
- Ein Dateispeicherservice, der über Pods gemeinsam verwendet wird
- Ein in einem privaten Subnetz bereitgestellter administrativer Host für den einfachen Zugriff auf die folgenden Bereiche:
- Das OCI Kubernetes Engine-Cluster
- Logs für die Oracle WebLogic Server-Domain
- Jenkins-Home-Konfiguration
- Hilfsskripte zur Verwaltung Ihrer Domain
- Der Dateispeicherservice
- Ein Bastionhost, der in einem öffentlichen Subnetz für den Zugriff auf die im privaten Subnetz bereitgestellten Ressourcen bereitgestellt wird
- n privater Load Balancer für den Zugriff auf die Jenkins-Konsole und die Oracle WebLogic Server-Administrationskonsole
- Ein öffentlicher Load Balancer für den Zugriff auf das Oracle WebLogic Server-Cluster
Das folgende Diagramm veranschaulicht diese Referenzarchitektur:
Diese Architektur umfasst die folgenden Komponenten:
- Region
Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der mindestens ein Data Center enthält und Availability-Domains hostet. Regionen sind unabhängig von anderen Regionen, und große Entfernungen können sie trennen (über Länder oder sogar Kontinente).
- Availability-Domain
Availability-Domains sind eigenständige, unabhängige Data Center innerhalb einer Region. Die physischen Ressourcen in jeder Availability-Domain sind von den Ressourcen in den anderen Availability-Domains isoliert, was eine Fehlertoleranz sicherstellt. Availability-Domains haben keine gemeinsame Infrastruktur wie Stromversorgung oder Kühlung oder das interne Availability-Domainnetzwerk. Ein Fehler in einer Availability-Domain sollte sich also nicht auf die anderen Availability-Domains in der Region auswirken.
- Virtuelles Cloud-Netzwerk (VCN) und Subnetz
Ein VCN ist ein anpassbares, softwaredefiniertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region einrichten. Wie herkömmliche Data Center-Netzwerke erhalten Sie mit VCNs die Kontrolle über Ihre Netzwerkumgebung. Ein VCN kann mehrere sich nicht überschneidende CIDR-Blöcke aufweisen, die Sie nach dem Erstellen des VCN ändern können. Sie können ein VCN in Subnetze segmentieren, die sich auf eine Region oder eine Availability-Domain beschränken. Jedes Subnetz besteht aus einem Bereich zusammenhängender Adressen, die sich nicht mit anderen Subnetzen im VCN überschneiden. Sie können die Größe eines Subnetzes nach der Erstellung ändern. Ein Subnetz kann öffentlich oder privat sein.
- Servicegateway
Ein Servicegateway ermöglicht den Zugriff von einem VCN auf andere Services wie Oracle Cloud Infrastructure Object Storage. Der Traffic vom VCN zum Oracle-Service wird über die Oracle-Netzwerkstruktur geleitet und durchläuft nicht das Internet.
- Load Balancer
Oracle Cloud Infrastructure Load Balancing bietet eine automatisierte Trafficverteilung von einem einzelnen Einstiegspunkt auf mehrere Server.
- Dateispeicher
Oracle Cloud Infrastructure File Storage stellt ein dauerhaftes, skalierbares, sicheres Netzwerkdateisystem der Unternehmensklasse bereit. Sie können eine Verbindung zu OCI File Storage von jeder Bare-Metal-, Virtual-Machine- oder Containerinstanz in einem VCN herstellen. Sie können auch von außerhalb des VCN mit Oracle Cloud Infrastructure FastConnect und IPSec-VPN auf OCI File Storage zugreifen.
- Kubernetes Engine
Oracle Cloud Infrastructure Kubernetes Engine (OCI Kubernetes Engine oder OKE) ist ein vollständig verwalteter, skalierbarer und hoch verfügbarer Service, mit dem Sie Ihre Containeranwendungen in der Cloud bereitstellen können. Sie geben die Compute-Ressourcen an, die Ihre Anwendungen benötigen, und Kubernetes Engine stellt sie in Oracle Cloud Infrastructure in einem vorhandenen Mandanten bereit. OKE automatisiert mit Kubernetes das Deployment, die Skalierung und die Verwaltung containerisierter Anwendungen über Cluster von Hosts hinweg.
- Oracle Cloud Infrastructure Registry
Oracle Cloud Infrastructure Registry ist ein von Oracle verwalteter Service, mit dem Sie Ihren Workflow von der Entwicklung bis zur Produktion vereinfachen können. Die Registry erleichtert Ihnen das Speichern, Teilen und Verwalten von Entwicklungsartefakten wie Docker-Images.
- WebLogic-Domain
Eine WebLogic-Domain ist eine Gruppe zusammengehöriger Anwendungen und Ressourcen sowie die Konfigurationsinformationen, die für deren Ausführung erforderlich sind. Die Domain besteht aus einem Administration Server und einem oder mehreren Managed Servern zum Hosten Ihrer Java-Anwendungs-Deployments. Managed Server-Instanzen können geclustert, nicht geclustert oder eine Kombination aus geclusterten und nicht geclusterten Instanzen sein. Alle Cluster in der Domain verwenden denselben Administration Server.
- WebLogic-Clusterkomponenten
Komponenten in einem Cluster können Failover- und Load Balancing-Optionen nutzen. Die folgenden Objekttypen können in einem Oracle WebLogic Server-Deployment geclustert werden:
- Servlets
- JavaServer Pages (JSPs)
- Enterprise Java Beans (EJBs)
- RMI-(Remote Method Invocation-)Objekte
- Java Messaging Service-(JMS-)Ziele
- JDBC-(Java Database Connectivity-)Verbindungen
- Kubernetes-Operator von Oracle WebLogic Server
Die Oracle WebLogic Server for OKE-Domain umfasst den Open-Source-Kubernetes-Operator von Oracle WebLogic Server, der mehrere wichtige Features zur Verwaltung von Domains in einer Kubernetes-Umgebung enthält. Eine WebLogic Server-Domain wird als benutzerdefinierte Ressource in der Kubernetes-Konfigurationsdatei modelliert. Der Operator verwendet diese Konfiguration und die Kubernetes-API, um WebLogic Server-Vorgänge wie Provisioning, Starten oder Stoppen von Servern, Patching, Skalierung und Sicherheit zu automatisieren.
- Jenkins
Oracle WebLogic Server for OKE verwendet Jenkins, um die Erstellung benutzerdefinierter Images für Ihre Oracle WebLogic Server-Domain zu automatisieren und diese Images im Kubernetes-Cluster bereitzustellen. Jenkins ist eine Open-Source-Automatisierungs-Engine, die einen Entwicklungsworkflow basierend auf kontinuierlicher Integration und kontinuierlicher Bereitstellung (CI/CD) ermöglicht. Sie erstellen Projekte, die eine Reihe von Schritten ausführen, wie das Auschecken von Dateien aus einem Quellkontrollsystem, das Kompilieren von Code oder das Ausführen eines Skripts. Pipelines sind ein Projekttyp, der komplexe Aktivitäten in Phasen organisiert, wie das Erstellen, Testen und Bereitstellen von Anwendungen.
Empfehlungen
Verwenden Sie die folgenden Empfehlungen als Ausgangspunkt. Ihre Anforderungen können abweichen.
- VCN
Wenn Sie ein VCN erstellen, bestimmen Sie die Anzahl der erforderlichen CIDR-Blöcke und die Größe jedes Blocks basierend auf der Anzahl der Ressourcen, die Sie an Subnetze im VCN anhängen möchten. Verwenden Sie CIDR-Blöcke, die sich innerhalb des privaten IP-Standardadressraums befinden.
Wählen Sie CIDR-Blöcke aus, die sich nicht mit einem anderen Netzwerk (in Oracle Cloud Infrastructure, Ihrem On-Premise-Data Center oder einem anderen Cloud-Provider) überschneiden, zu dem Sie private Verbindungen einrichten möchten.
Nachdem Sie ein VCN erstellt haben, können Sie die CIDR-Blöcke ändern, hinzufügen und entfernen.
In dieser Architektur erstellt Oracle WebLogic Server for OKE ein virtuelles Cloud-Netzwerk (VCN) und Subnetze in Oracle Cloud Infrastructure, um Oracle WebLogic Server, Kubernetes und die Load Balancer zu unterstützen. Sie können jedoch auch ein vorhandenes VCN und vorhandene Subnetze verwenden. Oracle WebLogic Server for OKE erstellt private Subnetze für die Compute-Instanz des Administrationshosts, für die Kubernetes-Komponenten und für den Dateispeicher. Er erstellt öffentliche Subnetze für den öffentlichen Load Balancer und die Bastion-Compute-Instanzen. Es wird empfohlen, bei Verwendung vorhandener Subnetze dieselbe Architektur zu verwenden.
- Load Balancer
Wenn Sie eine Domain erstellen, erstellt und konfiguriert Oracle WebLogic Server for OKE die folgenden Load Balancer in Oracle Cloud Infrastructure:
- Ein öffentlicher Load Balancer verteilt den Traffic auf die Managed Server in Ihrer Domain
- Ein privater Load Balancer bietet Zugriff auf die Oracle WebLogic Server-Administrationskonsole und die Jenkins-Konsole
Ein Load Balancer besteht aus Primär- und Standbyinstanzen, ist aber über eine einzige IP-Adresse zugänglich. Wenn die primäre Instanz ausfällt, wird der Traffic automatisch an die Standbyinstanz weitergeleitet.
Einem privaten Load Balancer ist keine öffentliche IP-Adresse zugewiesen, und von außerhalb von Oracle Cloud Infrastructure kann nicht darauf zugegriffen werden. Mit der Bastion-Compute-Instanz können Sie Zugriff auf den privaten Load Balancer für Ihre Domain erhalten.
Oracle WebLogic Server for OKE erstellt auch einen Nginx-Ingress-Controller im Kubernetes-Cluster. Nginx ist ein Open-Source-Reverse-Proxyservice, der den Trafficfluss zu Pods im Kubernetes-Cluster steuert.
- WebLogic-Domain
Während der Domainerstellung wird die Administrations-Compute-Instanz auch verwendet, um das neue Kubernetes-Cluster zu konfigurieren und die Pods für die Domain bereitzustellen. Standardmäßig stellt diese Architektur eine geclusterte Domain bereit. Sie können die Domain nach dem Provisioning so anpassen, dass sie nicht geclustert wird.
Domains, die mit Oracle WebLogic Server for OKE erstellt wurden, verwenden den Node Manager nicht. Der Oracle WebLogic Server-Kubernetes-Operator führt Überwachung des Serverzustands und Lebenszyklusvorgänge aus.
Oracle WebLogic Server for OKE installiert den Helm-Client auf der Administrations-Compute-Instanz und installiert das Diagramm für den Oracle WebLogic Server-Kubernetes-Operator mit Helm. Helm ist ein Paketmanager für Kubernetes, mit dem Sie Kubernetes-Anwendungen, -Tools und -Services für ein Kubernetes-Cluster schnell installieren und verwalten können. Zu den im Kubernetes-Cluster mit Helm installierten Anwendungen gehören Jenkins CI, Nginx und WebLogic Kubernetes Operator.
Oracle WebLogic Server for OKE installiert und konfiguriert den Operator im Kubernetes-Cluster. Sie können den Operator mit
kubectl
auf der Compute-Instanz der Administration verwenden.Oracle WebLogic Server for OKE verwendet Jenkins, um die Erstellung benutzerdefinierter Images für Ihre WebLogic Server-Domain und das Deployment dieser Images im Kubernetes-Cluster zu automatisieren.
- OCI Kubernetes Engine
Wenn Sie eine Domain mit Oracle WebLogic Server for OKE erstellen, werden automatisch zwei Knotenpools bereitgestellt: WebLogic-Knotenpool und Nicht-WebLogic-Knotenpool. Standardmäßig wird jeder Knotenpool mit einem Worker-Knoten erstellt. Beim Provisioning können Sie jedoch die Anzahl der gewünschten Worker-Knoten in jedem Knotenpool angeben.
Die folgenden Pods werden im Rahmen der Architektur im Kubernetes-Cluster bereitgestellt:
- Knotenpool WebLogic:
- Ein Pod, auf dem der Administrationsserver der Domain ausgeführt wird
- Ein Pod, auf dem jeder Managed Server in der Domain ausgeführt wird
- Ein Pod, auf dem der Jenkins-Agent ausgeführt wird
- Nicht-WebLogic-Knotenpool:
- Ein Pod, auf dem der Jenkins-Controller ausgeführt wird
- Ein Pod, auf dem ein Nginx-Ingress-Controller ausgeführt wird
Wenn Sie eine Domain erstellen, überträgt Oracle WebLogic Server for OKE ein Standardimage an die Registry, mit der die Pods für Ihre Domain bereitgestellt werden. In der Compute-Instanz für die Administration können Sie dieses Standardimage aktualisieren und diese Änderungen dann mit Kubernetes anwenden.
Oracle WebLogic Server for OKE stellt den primären Jenkins-Server auf einem Pod im Kubernetes-Cluster bereit. Jenkins ist auch für die Verwendung des Kubernetes-Plug-ins konfiguriert. Wenn Sie einen Job starten oder planen, erstellt der Jenkins-Server einen weiteren Pod im Kubernetes-Cluster, und dieser Agent-Pod führt den Job aus.
- Knotenpool WebLogic:
Hinweise
Beachten Sie beim Deployment dieser Referenzarchitektur die folgenden Punkte:
- Speicherung
Die Dateien Ihrer Domain werden lokal in jedem Pod im Kubernetes-Cluster gespeichert. Oracle WebLogic Server for OKE verwendet jedoch auch Oracle Cloud Infrastructure File Storage, um bestimmte Administrationsanwendungsfälle zu unterstützen. Oracle WebLogic Server for OKE exportiert das Dateisystem in ein Mountziel in einer angegebenen Availability-Domain, die eine andere Availability-Domain als die für die Compute-Instanzen der Domain verwendet werden kann.
Diese Architektur erstellt eine grundlegende Oracle WebLogic Server-Domainkonfiguration, für die keine Datenbank erforderlich ist. Wenn Sie Anwendungen mit Oracle Application Development Framework (ADF) erstellen möchten, kann Oracle WebLogic Server for OCI auch verwendet werden, um eine Java-Domain mit erforderlicher Datei (JRF) zu erstellen. Verwenden Sie eine vorhandene Oracle Autonomous Transaction Processing-Datenbank oder ein Oracle Cloud Infrastructure Database-System, das für das Provisioning einer JRF-fähigen Domain erforderlich ist.
- Sicherheit
Für das Provisioning einer Domain in Oracle WebLogic Server für OKE ist mindestens ein Secret in Oracle Cloud Infrastructure Vault erforderlich. Jedes Secret speichert nur ein Kennwort. Das Kennwort ist erforderlich, wenn Sie ein Oracle WebLogic Server-Cluster erstellen. Diese Architektur verwendet einen Standard-Vault, der auf einer Hardware Security Module-(HSM-)Partition mit mehreren Mandanten gehostet wird, und verwendet zu Abrechnungszwecken eine kosteneffizientere, schlüsselbasierte Metrik. Ein virtueller privater Vault bietet größere Isolation und Performance, indem eine dedizierte Partition auf einem HSM zugewiesen wird. Jeder Vault-Typ hat ein separates Servicelimit in Ihrem Oracle Cloud Infrastructure-Mandanten.
- Verwaltbarkeit
Der Zugriff auf Oracle WebLogic Server for OKE erfolgt als Sammlung von Anwendungen im Oracle Cloud Marketplace.
Oracle Cloud Marketplace ist ein Online-Shop, der in der Oracle Cloud Infrastructure-Konsole verfügbar ist. Wenn Sie eine Oracle WebLogic Server for OKE-Anwendung über Oracle Cloud Marketplace starten, werden Sie zur Eingabe grundlegender Informationen aufgefordert. Anschließend werden Sie an Resource Manager weitergeleitet, um die Konfiguration der Oracle WebLogic Server-Domain und der unterstützenden Cloud-Ressourcen abzuschließen. Resource Manager ist ein Oracle Cloud Infrastructure-Service, der mit Terraform eine Sammlung zugehöriger Cloud-Ressourcen als eine einzelne Einheit, die als Stack bezeichnet wird, bereitstellt, aktualisiert und zerstört.
Wählen Sie eine Oracle WebLogic Server for OKE-Anwendung aus, die Ihren Funktions- und Lizenzanforderungen entspricht.
- Kostenfaktor
Im Folgenden finden Sie eine Liste der Editionen von Bring Your Own License (BYOL) und Universal Credits (UCM), die für Oracle WebLogic Server for Oracle Cloud Infrastructure Kubernetes Engine mit vollständiger Kompatibilität mit der On-Premise-Software von Oracle WebLogic Server verfügbar sind:
- Oracle WebLogic Server Enterprise Edition für OKE (UCM)
- Oracle WebLogic Suite für OKE (UCM)
- Oracle WebLogic Server Enterprise Edition für OKE (BYOL)
- Oracle WebLogic Suite für OKE (BYOL)
Stellen Sie
Terraform-Stacks mit verschiedenen Lizenzierungsoptionen zur Bereitstellung dieser Referenzarchitektur sind im Oracle Cloud Marketplace verfügbar.
Informationen zum Bereitstellen des entsprechenden Stacks finden Sie unter Erste Schritte mit Oracle WebLogic Server für OKE.