WordPress CMS einrichten, das mit einem MySQL Database in der Cloud verbunden ist
Erstellen und verwalten Sie moderne Websites in der Cloud, ohne dass Sie einen Abschluss in Programmierung oder Datenbankadministration benötigen. Nutzen Sie die benutzerfreundlichen Funktionen der WordPress-Plattform sowie die Elastizität und Kostenvorteile beim Hosten Ihrer Webseiten und Blogs in Oracle Cloud Infrastructure.
Architektur
Diese Architektur stellt einen WordPress CMS- und Oracle MySQL-Datenbankservice in Oracle Cloud Infrastructure (OCI) bereit.
Sie können WordPress in einem einzelnen Knoten oder als Teil einer High Availability-Konfiguration für mehrere Knoten bereitstellen. Diese Referenzarchitektur enthält die Terraform-Automatisierung, die mit beiden Konfigurationen kompatibel ist.
Stellen Sie für eine komplexe High-Availability-Umgebung mit mehreren Knoten WordPress-Knoten in mehreren Faultdomains mit primären und Standby-Load Balancern und gemeinsamem Oracle Cloud Infrastructure File Storage-Service (verwaltetem NFS-Service) für alle WordPress-Knoten bereit.
Das folgende Diagramm veranschaulicht diese Multinode-Architektur.

Beschreibung der Abbildung oci-arch-wordpress-mds.png
oci-arch-wordpress-mds-oracle.zip
Beim Konfigurieren einer Multinode-Umgebung können Sie Folgendes ausführen:
- Definieren Sie die Anzahl der Layer-Knoten WordPress.
- Stellen Sie öffentliche Load Balancer bereit, und blenden Sie die WordPress-Knoten in einem privaten Subnetz aus.
- Stellen Sie Bastionhosts oder Bastion Services für den Zugriff auf private Ressourcen bereit.
- Verwenden Sie Oracle Cloud Infrastructure File Storage-Services mit gemeinsam genutztem NFS-Speicher für WordPress-Inhalt (gemeinen Sie Uploads, Plug-ins und Themes zwischen Knoten).
Das folgende Diagramm veranschaulicht eine einfache Single-Node-Architektur. Sie besteht aus einem leichten Deployment, das für Lernzwecke geeignet sein kann oder als Konzeptnachweis dient.

Beschreibung der Abbildung deploy-wordpress-cms-mysql-dbs.png
Deploy-wordpress-cms-mysql-dbs-oracle.zip
Die Architekturen enthalten einige oder alle der folgenden Komponenten:
- Region
Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der mindestens ein Rechenzentrum (Availability-Domains) enthält. Regionen sind unabhängig von anderen Regionen, und große Entfernungen können sie trennen (über Länder oder sogar Kontinente).
- Verfügbarkeitsdomains
Availability-Domains sind eigenständige, unabhängige Rechenzentren innerhalb einer Region. Die physischen Ressourcen in jeder Availability-Domain werden von den Ressourcen in den anderen Availability-Domains isoliert, was eine Fehlertoleranz bietet. Verfügbarkeitsdomänen teilen keine Infrastruktur wie Strom oder Kühlung oder das interne Availability-Domänennetzwerk. Somit ist es unwahrscheinlich, dass ein Fehler bei einer Availability-Domain die anderen Availability-Domains in der Region beeinträchtigt.
- Faultdomain
Eine Fehlerdomain ist eine Gruppierung aus Hardware und Infrastruktur innerhalb einer Availability-Domain. Jede Availability-Domain hat drei Faultdomains mit unabhängiger Stromversorgung und Hardware. Wenn Sie Ressourcen auf mehrere Faultdomains verteilen, können Ihre Anwendungen physische Serverfehler, Systemwartung und Stromausfälle innerhalb einer Faultdomain tolerieren.
- Virtuelles Cloud-Netzwerk (VCN) und Subnetze
Ein VCN ist ein anpassbares, softwaredefiniertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region eingerichtet haben. Wie herkömmliche Rechenzentrumsnetze geben VCNs Ihnen die vollständige Kontrolle über Ihre Netzwerkumgebung. Ein VCN kann mehrere nicht überlappende CIDR-Blöcke enthalten, die Sie nach dem Erstellen des VCN ändern können. Sie können ein VCN in Subnetze segmentieren, die für eine Region oder eine Availability-Domain Geltungsbereich haben können. Jedes Subnetz besteht aus einem zusammenhängenden Adressbereich, der sich nicht mit den anderen Subnetzen im VCN überschneidet. Sie können die Größe eines Subnetzes nach der Erstellung ändern. Ein Subnetz kann öffentlich oder privat sein.
- Internetgateway
Das Internetgateway ermöglicht den Datenverkehr zwischen den öffentlichen Subnetzen in einem VCN und dem öffentlichen Internet.
- Network Address Translation-(NAT-)Gateway
Mit einem NAT-Gateway können private Ressourcen in einem VCN auf Hosts im Internet zugreifen, ohne diese Ressourcen für eingehende Internetverbindungen bereitzustellen.
- Netzwerksicherheitsgruppe (NSG)
NSGs fungieren als virtuelle Firewalls für Ihre Cloud-Ressourcen. Mit dem Null-Trust-Sicherheitsmodell von Oracle Cloud Infrastructure wird der gesamte Datenverkehr abgelehnt, und Sie können den Netzwerkverkehr in einem VCN steuern. Ein NSG besteht aus einer Gruppe von Ingress- und Egress-Sicherheitsregeln, die nur für eine bestimmte Gruppe von VNICs in einem einzelnen VCN gelten.
- Sicherheitsliste
Für jedes Subnetz können Sie Sicherheitsregeln erstellen, die Quelle, Ziel und Typ des Traffics angeben, der im Subnetz und aus dem Subnetz zugelassen werden muss.
- Oracle MySQL-Datenbankservice
Oracle MySQL Database Service ist ein vollständig verwalteter Oracle Cloud Infrastructure -(OCI-)Datenbankservice, mit dem Entwickler sichere, Cloud-native Anwendungen schnell entwickeln und bereitstellen können. Für OCI optimiert und exklusiv verfügbar, wird MySQL Database Service zu 100 % von OCI- und MySQL-Engineering-Teams erstellt, verwaltet und unterstützt.
In dieser Referenzarchitektur wird Oracle MySQL Database Service auf einem virtuellen Rechner bereitgestellt und zum Hosten der Contentinformationen für WordPress verwendet. Das Deployment befindet sich nicht in einem Cluster.
- Dateispeicher
Oracle Cloud Infrastructure File Storage Service stellt ein dauerhaftes, skalierbares, sicheres Netzwerkdateisystem der Enterprise-Klasse bereit. Sie können über jede Bare-Metal- oder VM- oder Containerinstanz in einem VCN eine Verbindung mit einem File Storage Service-Dateisystem herstellen. Sie können auch außerhalb des VCN mit Oracle Cloud Infrastructure FastConnect und IPSec-VPN auf ein Dateisystem zugreifen.
- WordPress Content Management System (CMS)
Mit WordPress CMS können Sie eine vollständige Blog-Website oder eine generelle Website erstellen. Diese Architektur verwendet eine reguläre Compute-Instanz, um die WordPress CMS-Engine bereitzustellen.
- Load Balancer
Der Oracle Cloud Infrastructure Load Balancing-Service ermöglicht automatisierte Trafficverteilung von einem einzelnen Einstiegspunkt auf mehrere Server im Backend.
- Bastionsservice
Oracle Cloud Infrastructure Bastion bietet eingeschränkten und zeitlich begrenzten sicheren Zugriff auf Ressourcen, die keine öffentlichen Endpunkte haben und strenge Ressourcenzugriffskontrollen erfordern, wie Bare-Metal- und virtuelle Maschinen, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Container Engine for Kubernetes (OKE) und jede andere Ressource, die Secure Shell Protocol-(SSH-)Zugriff zulässt. Mit dem Oracle Cloud Infrastructure-Bastion-Service können Sie den Zugriff auf private Hosts aktivieren, ohne einen Jump-Host bereitzustellen und zu verwalten. Außerdem erhalten Sie eine verbesserte Sicherheitslage mit identitätsbasierten Berechtigungen und einer zentralen, auditierten und zeitgebundenen SSH-Session. Mit Oracle Cloud Infrastructure Bastion ist keine öffentliche IP mehr für Bastionzugriffe erforderlich. Dadurch entfällt die problemlose und potenzielle Angriffsfläche, wenn Sie Remotezugriff bereitstellen.
- Berechnen
Mit dem Oracle Cloud Infrastructure Compute-Service können Sie Compute-Hosts in der Cloud bereitstellen und verwalten. Sie können Compute-Instanzen mit Ausprägungen starten, die Ihren Ressourcenanforderungen für CPU, Arbeitsspeicher, Netzwerkbandbreite und Speicher entsprechen. Nachdem Sie eine Compute-Instanz erstellt haben, können Sie sicher darauf zugreifen, sie neu starten, Volumes anhängen und trennen und bei Bedarf beenden.
Empfehlungen
- 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 in VCN anhängen möchten. Verwenden Sie CIDR-Blöcke, die sich innerhalb des standardmäßigen privaten IP-Adressraums befinden.
Wählen Sie CIDR-Blöcke, die sich nicht mit einem anderen Netzwerk überschneiden (in Oracle Cloud Infrastructure, Ihrem On-Premise-Rechenzentrum oder einem anderen Cloud-Provider), 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.
Wenn Sie die Subnetze entwerfen, berücksichtigen Sie Ihre Verkehrsfluss- und Sicherheitsanforderungen. Ordnen Sie alle Ressourcen innerhalb einer bestimmten Ebene oder Rolle an dasselbe Subnetz zu, das als Sicherheitsgrenze dienen kann.
- Sicherheitslisten
Verwenden Sie Sicherheitslisten, um Ingress- und Egressregeln zu definieren, die für das gesamte Subnetz gelten.
- Compute Shapes
Diese Architektur verwendet ein Oracle Linux 7.8-BS-Image mit einer VM.Standard2.1-Form für WordPress CMS. Wenn der Ressourcenbedarf Ihrer Anwendung unterschiedlich ist, können Sie eine andere Form wählen.
- Oracle MySQL Database Service
In dieser Architektur speichert WordPress CMS die relationalen Daten in Oracle MySQL Database Service. Wir empfehlen, die neueste Version zu verwenden.
Überlegungen
Wenn Sie WordPress in Oracle Cloud bereitstellen, sollten Sie Folgendes berücksichtigen: Skalierbarkeit, Verfügbarkeit und Backup:
- WordPress CMS-Skalierbarkeit
Sie können WordPress CMS skalieren, indem Sie Instanzpool und automatische Skalierungsfunktionen verwenden.
Mit Instanzpools können Sie mehrere Compute-Instanzen basierend auf derselben Konfiguration innerhalb derselben Region bereitstellen und erstellen.
Mit der automatischen Skalierung können Sie die Anzahl der Compute-Instanzen in einem Instanzpool basierend auf Performancemetriken, wie der CPU-Auslastung, automatisch anpassen. Autoscaling hilft Ihnen, konsistente Leistung für Benutzer in Perioden mit hohem Bedarf zu bieten und hilft Ihnen, Ihre Kosten in Perioden mit niedrigem Bedarf zu senken.
- Skalierbarkeit von Oracle MySQL-Datenbankservice
Wählen Sie die Form des Rechners für den Oracle MySQL-Datenbankservice basierend auf der geplanten Workload.
- Anwendungsverfügbarkeit
Fault-Domains bieten die beste Resilienz innerhalb einer Availability-Domain. Wenn Sie eine höhere Verfügbarkeit benötigen, sollten Sie mehrere Availability-Domains oder mehrere Regionen verwenden.
- Backups von Oracle MySQL-Datenbankservice
MySQL Database Service unterstützt zwei Backuptypen: vollständiges Backup aller Daten im Datenbanksystem und inkrementelles Backup nur der Daten, die seit dem letzten vollständigen Backup hinzugefügt oder geändert wurden. Backups werden wie folgt ausgeführt:
-
Handbuch: Eine Aktion in der Konsole oder Anforderung, die über die API ausgeführt wird, initiiert das Backup. Manuelle Backups können für mindestens einen Tag und maximal 365 Tage beibehalten werden.
-
Automatisch: Automatisch geplante Backups laufen ohne erforderliche Interaktion zu einem Zeitpunkt der Auswahl des Benutzers. Automatische Backups werden zwischen einem und 35 Tagen beibehalten. Der Standardwert für die Aufbewahrung beträgt sieben Tage. Wenn definiert, können Sie den Aufbewahrungszeitraum eines automatischen Backups nicht bearbeiten
Mit dem Oracle Cloud Infrastructure Block Volumes-Service können Sie Point-in-Time-Backups von Daten auf einem Block-Volume erstellen. Anschließend können Sie diese Backups sofort oder später auf neue Volumes wiederherstellen.
Sie können den Service auch verwenden, um ein zeitnahes, absturzkonsistentes Backup eines Boot-Volumes ohne Anwendungsunterbrechung oder Ausfallzeit zu erstellen. Boot-Volume-Backup-Funktionen sind die gleichen wie Block-Volume-Backup-Funktionen.
-
- Sicherheits-Policys
Mit Policys können Sie einschränken, wer auf welche Oracle Cloud Infrastructure -(OCI-)Ressourcen Ihres Unternehmens zugreifen kann und wie.
- Netzwerksicherheit
Der Networking-Service bietet zwei virtuelle Firewall-Funktionen, die Sicherheitsregeln zur Steuerung des Datenverkehrs auf Paketebene verwenden: Sicherheitslisten und Netzwerksicherheitsgruppen (NSGs). Ein NSG besteht aus einer Gruppe von Ingress- und Egress-Sicherheitsregeln, die nur für eine Gruppe von VNICs Ihrer Wahl in einem einzelnen VCN gelten. Beispiel: Sie können alle Compute-Instanzen wählen, die als Webserver in der Web-Tier einer mehrstufigen Anwendung in Ihrem VCN fungieren.
NSG-Sicherheitsregeln funktionieren genauso wie Sicherheitslistenregeln. Für die Quelle oder das Ziel einer NSG-Sicherheitsregel können Sie jedoch anstelle eines CIDR-Blocks ein NSG angeben. So können Sie problemlos Sicherheitsregeln schreiben, um den Traffic zwischen zwei NSGs in demselben VCN oder Traffic innerhalb eines einzelnen NSG zu steuern. Wenn Sie ein Datenbanksystem erstellen, können Sie eine oder mehrere NSGs angeben. Sie können auch ein vorhandenes Datenbanksystem aktualisieren, um eine oder mehrere NSGs zu verwenden.
Bereitstellen
Der Terraform-Code für diese Referenzarchitektur ist auf GitHub verfügbar. Sie können den Code mit einem einzigen Klick in Oracle Cloud Infrastructure Resource Manager ziehen, den Stack erstellen und bereitstellen. Alternativ können Sie den Code von GitHub auf Ihren Computer herunterladen, den Code anpassen und die Architektur mit der Terraform-CLI bereitstellen.
- Bereitstellen mit dem Beispielstack in Oracle Cloud Infrastructure Resource Manager:
- Klicken Sie auf
Wenn Sie noch nicht angemeldet sind, geben Sie die Mandanten- und Benutzerzugangsdaten ein.
- Prüfen und akzeptieren Sie die Allgemeinen Geschäftsbedingungen.
- Wählen Sie die Region, in der der Stack bereitgestellt werden soll.
- Befolgen Sie die Anweisungen und Aufforderungen auf dem Bildschirm, um den Stack zu erstellen.
- Klicken Sie nach dem Erstellen des Stacks auf Terraform-Aktionen, und wählen Sie Plan aus.
- Warten Sie, bis der Job abgeschlossen ist, und prüfen Sie den Plan.
Um Änderungen vorzunehmen, kehren Sie zur Seite "Stackdetails" zurück, klicken auf Stack bearbeiten, und nehmen Sie die erforderlichen Änderungen vor. Führen Sie dann die Aktion Plan erneut aus.
- Wenn keine weiteren Änderungen erforderlich sind, kehren Sie zur Seite "Stackdetails" zurück, klicken Sie auf Terraform-Aktionen, und wählen Sie Anwenden aus.
- Klicken Sie auf
- Deployment mit dem Terraform-Code in GitHub:
- Gehen Sie zu GitHub.
- Klonen oder laden Sie das Repository auf Ihren lokalen Computer herunter.
- Befolgen Sie die Anweisungen im Dokument
README
.
- Stellen Sie mit dem Tutorial WordPress CMS in Oracle Linux mit MySQL-Datenbank installieren bereit.
Mehr erfahren
Erfahren Sie mehr über Oracle Cloud Infrastructure Best Practices und Oracle MySQL Database Service.
Prüfen Sie diese zusätzlichen Ressourcen:
Änderungslog
In diesem Log werden wichtige Änderungen aufgeführt:
Juni 8, 2022 |
|
September 14, 2021 |
|