E-Commerce-Plattform-Deployment auf Oracle Cloud

Die steigende Nachfrage nach Flugreisen veranlasste GOL Linhas Aéreas Inteligentes (GOL), sein Passagier-Ticketing-System zu modernisieren und seine Infrastruktur für das Rekordwachstum auszubauen.

Nachdem GOL sein monolithisches Reservierungssystem auf einer cloud-nativen Plattform umgestaltet hat, die auf Oracle Cloud Infrastructure (OCI) ausgeführt wird, hat es seinen Umsatz verdreifacht, die Anzahl der Abfahrten nahezu verdoppelt und Prognosen für weitere Nettoumsatzsteigerungen trotz steigender Kraftstoffpreise erstellt.

GOL ist eine der größten kommerziellen Fluggesellschaften Brasiliens sowohl im Unternehmens- als auch in der Freizeitbranche und beschäftigt 15.000 Mitarbeiter, betreibt 127 Boeing 737 Flugzeuge und macht 715 tägliche Flüge zu über 100 Destinationen. Seit dem Deployment seiner Ticketing-Anwendung auf OCI hat die Fluggesellschaft die Batchverarbeitungszeit auf 30 Minuten verkürzt (bis zu 2,5 Stunden) und unterstützt Flugreisende derzeit dabei, 30% weniger Zeit für den Kauf von Tickets zu verbringen.

Während ihrer Black Friday-Werbeveranstaltung im Jahr 2021 verkaufte GOL 30% mehr Tickets als in den Vorjahren, während sie während des Staus im Verkehr keine Ausfallzeit hatte. Heute verwendet GOL OCI, um Vertriebs-, Marketing- und Operations-Teams dabei zu unterstützen, Ticketpreise anzupassen, Check-ins zu verwalten, Passagierrouten zu ändern und Promotions basierend auf Echtzeit-Ticketverkaufsdaten zu starten. Reisebüros und andere Partner können auch auf die Ticketing-Anwendung von GOL auf OCI zugreifen und ihnen sofortige Einblicke in Flugabflüge, Ankünfte, Verzögerungen und Stornierungen geben. Die E-Commerce-Anwendung von GOL, die in einem Oracle Cloud Infrastructure Container Engine for Kubernetes-(OKE-)Cluster ausgeführt wird, lässt sich während des normalen Betriebs zwischen 8 und 12 Knoten im Instanzpool skalieren. Wenn eine Vertriebskampagne freigegeben wird, skaliert das System bei Spitzenbedarf automatisch auf 20-30 Knoten.

Architektur

Geschäftsreisende und Urlauber können Flugtickets erwerben und ihre Reisen verwalten, indem sie sich zunächst auf der GOL Linhas Aéreas Inteligentes (GOL)-Website anmelden.

GOL ist in einer Netzwerktopologie standardisiert, die zwei virtuelle Cloud-Netzwerke (VCNs) verwendet. Sie ist in einer Hub- und Spoke-Umgebung konfiguriert. Der Hub ist als Edge-VCN konfiguriert, in dem ein dynamisches Routinggateway (DRG) für die Verbindung von On-Premise-Systemen bereitgestellt wird. Es gibt mehrere Verbindungen zum On-Premise-Netzwerk von GOL sowie zum Rest der GOL-Infrastruktur. Die GOL-Infrastruktur verwendet FastConnect, um eine Verbindung zur GOL-Cloud für Multiprotocol Label Switching (MPLS) herzustellen. Die GOL MPLS Cloud verbindet den Rest der GOL-Netzwerkinfrastruktur sowie eine Multi-Cloud-Verbindung mit Azure.

Eine sekundäre Verbindung vom On-Premise-GOL-Netzwerk ist eine VPN-Verbindung mit einem Site-to-Site-VPN-Tunnel, der über das DRG eine Verbindung zu einer OpenVPN-Instanz herstellt. Vom Hub-VCN aus stellt ein lokales Peering-Gateway (LPG) eine Verbindung zum Spoke-VCN her. Das Spoke-VCN hostet den Rest der Infrastruktur, die Load Balancer, Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE), Autonomous Database und Oracle Exadata Database Service enthält. Diese werden durch Subnetze, Routentabellen und Sicherheitsgruppen isoliert. Ein Internetgateway bietet Benutzern einen Einstiegspunkt für den Zugriff auf das GOL-E-Commerce-System sowie einen Egress-Point für die Interaktion mit externen Systemen.

Das folgende Diagramm veranschaulicht diese Referenzarchitektur.



gol-E-Commerce-oci-1-oracle.zip

Um auf das GOL-E-Commerce-System zuzugreifen, muss der Benutzertraffic zuerst eine Oracle Cloud Infrastructure Web Application Firewall (WAF) durchlaufen. Die WAF schützt die GOL-E-Commerce-Anwendung vor böswilligem und unerwünschtem Internetverkehr mithilfe von Threat Intelligence und Regeldurchsetzung. Nach dem Durchlaufen von WAF tritt der Benutzertraffic in das Spoke-VCN ein, in dem er über einen öffentlichen Load Balancer verteilt wird. Der Load Balancer leitet die Anforderung an die entsprechenden Microservices weiter, die im Backend-Subnetz ausgeführt werden.

Das Backend-Subnetz hostet ein Oracle Cloud Infrastructure Container Engine for Kubernetes-(OKE-)Cluster. Mit Microservices, die auf dem OKE-Cluster ausgeführt werden, können GOL-Reisende Flüge kaufen und buchen, den Flugstatus prüfen, ihre Reiseroute ändern oder ihre Reise abbrechen. Mit dem zusätzlichen externen Microservice und API-Services können GOL-Passagiere Mietwagen erwerben und Reiseversicherungen von der GOL E-Commerce-Anwendung kaufen. Der Einkaufs- und Buchungs-Microservice verwendet die Adresse des Kunden zur Adressverifizierung mit einem Adressvalidierungssystem. Derselbe Microservice übergibt auch die Adresse des Kunden zur Zahlungsverifizierung an ein Kreditkartenvalidierungssystem. Microservices lassen sich in Backend-Systeme integrieren.

Marketing und Customer Relationship Management (CRM) gehört ebenfalls zum GOL-E-Commerce-System. Der Microservice für die Kundenkommunikation ist mit externen Systemen wie Oracle Responsys und Oracle Service Cloud verbunden. Oracle Responsys stellt personalisierte Angebote für Kunden über eine Mail-Marketingkampagne bereit, und Oracle Service Cloud bietet Customer Relationship Management-(CRM-)Services für Kunden, die Fragen, Anfragen oder Probleme haben.

Um die Reporting- und Compliance-Anforderungen zur pünktlichen Meldung von Flugdaten und Verzögerungen an die Regierung zu erfüllen, sendet der Microservice für den Flugstatus diese Informationen an eine VM-Instanz namens WS Infraero, um die Daten zu verarbeiten. GOL hat einen ELK-(ElasticSearch LogStash Kibana-)Stack für zentralisiertes Logging bereitgestellt, um Server- und Anwendungsprobleme zu identifizieren.

GOL speichert mit Oracle Autonomous Database Benutzerprofile und Oracle Exadata Database Service Lufthansa Netline-/Ops++-Daten. Da die Architektur jetzt flexibel ist, erwägt GOL, Teile der Anwendung in andere Regionen zu verschieben und die Datenbanksynchronisierung für Disaster Recovery zu untersuchen.

In der Multi-Cloud-Umgebung verwendet GOL Microsoft Azure Data Lake als zentrales Daten-Repository, das von Rohdaten aus OCI gespeist wird und Apache Parquet nutzt. Vertriebs- und Bestandsdaten durchlaufen die IBM MQ-Anwendung, die in OCI bereitgestellt wird. Datenfeeds werden dann von Oracle Data Integrator zum Laden in Oracle Autonomous Transaction Processing verarbeitet. Um Bursty Workloads wie plötzliche Spitzen beim Online-Ticketverkauf zu verwalten, verwendet das IT-Team von GOL den Database Resident Connection Pool von Autonomous Database.

Durch die Integration mit Oracle CI/CD, Azure DevOps und Oracle Cloud Infrastructure Resource Manager konnte GOL ihre Container warten und aktualisieren. Das Anwendungs-Frontend wird mit Angular entwickelt, und das Backend wird mit .Net Core entwickelt. Azure DevOps wird für das Codemanagement verwendet. Auf Azure DevOps wird über das Internet zugegriffen, und Azure ist über einen sicheren VPN-Tunnel von Site zu Site mit OCI verbunden. Durch die Verwendung von Azure DevOps und OKE können Updates für Microservices innerhalb weniger Stunden durchgeführt werden, anstatt die Wochen, die es dauerte, als die Anwendung On Premise ausgeführt wurde.

Die Architektur umfasst die folgenden Komponenten:

  • Mandant

    Ein Mandant ist eine sichere und isolierte Partition, die Oracle bei der Registrierung für Oracle Cloud Infrastructure in Oracle Cloud einrichtet. Sie können Ihre Ressourcen in Oracle Cloud in Ihrem Mandanten erstellen, organisieren und verwalten. Ein Mandant ist synonym zu einem Unternehmen oder einer Organisation. In der Regel verfügt ein Unternehmen über einen einzelnen Mandanten und spiegelt dessen Organisationsstruktur in diesem Mandanten wider. Ein einzelner Mandant ist in der Regel mit einem einzelnen Abonnement verknüpft, und ein einzelnes Abonnement hat in der Regel nur einen Mandanten.

  • Region

    Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der mindestens ein Data Center enthält, das als Availability-Domains bezeichnet wird. Regionen sind unabhängig von anderen Regionen, und große Entfernungen können sie voneinander trennen (innerhalb von Ländern oder sogar Kontinenten).

  • Compartment

    Compartments sind regionsübergreifende logische Partitionen in einem Oracle Cloud Infrastructure-Mandanten. In Compartments können Sie Ihre Ressourcen in Oracle Cloud organisieren, den Zugriff auf die Ressourcen kontrollieren und Nutzungs-Quotas festlegen. Um den Zugriff auf die Ressourcen in einem bestimmten Compartment zu kontrollieren, definieren Sie Policys, mit denen angegeben wird, wer auf die Ressourcen zugreifen kann und welche Aktionen sie ausführen können.

  • Faultdomain

    Eine Faultdomain ist eine Gruppierung aus Hardware und Infrastruktur innerhalb einer Availability-Domain. Jede Availability-Domain umfasst drei Faultdomains mit unabhängiger Stromversorgung und Hardware. Wenn Sie Ressourcen auf mehrere Faultdomains verteilen, können Ihre Anwendungen physische Serverausfälle, Systemwartungen und Stromausfälle innerhalb einer Faultdomain tolerieren.

  • Web Application Firewall (WAF)

    Oracle Cloud Infrastructure Web Application Firewall (WAF) ist ein PCI-konformer, regionaler und Edge-Enforcement-Service, der an einen Enforcement Point angehängt ist, wie einen Load Balancer oder einen Domainnamen einer Webanwendung. WAF schützt Anwendungen vor böswilligem und unerwünschtem Internettraffic. WAF kann beliebige internetseitige Endpunkte schützen und bietet eine konsistente Regeldurchsetzung über alle Anwendungen eines Kunden hinweg.

  • Virtual Cloud Network (VCN) und Subnetze

    Ein VCN ist ein anpassbares, Software-definiertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region einrichten können. Wie herkömmliche Data Center-Netzwerke erhalten Sie mit VCNs vollständige 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 fortlaufenden 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 ist öffentlich oder privat.

  • Sicherheitsliste

    Für jedes Subnetz können Sie Sicherheitsregeln erstellen, die Quelle, Ziel und Typ des Traffics angeben, der in das und aus dem Subnetz zugelassen werden muss.

  • Load Balancer

    Der Oracle Cloud Infrastructure Load Balancing-Service ermöglicht automatisierte Trafficverteilung von einem einzelnen Einstiegspunkt auf mehrere Server im Backend.

  • Objektspeicher

    Mit Object Storage erhalten Sie schnellen Zugriff auf große Mengen an strukturierten und unstrukturierten Daten eines beliebigen Inhaltstyps, darunter Datenbankbackups, Analysendaten und umfangreiche Inhalte, wie Bilder und Videos. Sie können Daten sicher und geschützt speichern und dann direkt aus dem Internet oder aus der Cloud-Plattform abrufen. Sie können den Speicher nahtlos skalieren, ohne dass die Performance oder Servicezuverlässigkeit beeinträchtigt wird. Verwenden Sie Standardspeicher für "Hot Storage", auf den Sie schnell, sofort und häufig zugreifen müssen. Verwenden Sie Archivspeicher für "Cold Storage", den Sie über lange Zeiträume beibehalten möchten und auf den Sie nur selten zugreifen.

  • Compute

    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. Nach dem Erstellen einer Compute-Instanz können Sie sicher auf die Compute-Instanz zugreifen, sie neu starten, Datenträger anhängen und trennen und sie beenden, wenn Sie sie nicht mehr benötigen.

  • Autonomous Database

    Oracle Cloud Infrastructure Autonomous Database ist eine vollständig verwaltete, vorkonfigurierte Datenbankumgebung, die Sie für Transaktionsverarbeitungs- und Data Warehousing-Workloads verwenden können. Sie müssen keine Hardware konfigurieren oder verwalten und keine Software installieren. Oracle Cloud Infrastructure verwaltet das Erstellen der Datenbank sowie Backup, Patching, Upgrade und Optimierung der Datenbank.

  • Autonomous Transaction Processing

    Oracle Autonomous Transaction Processing ist ein für Transaktionsverarbeitungs-Workloads optimierter, selbstsichernder und selbstreparierender Datenbankservice. Sie müssen keine Hardware konfigurieren oder verwalten und keine Software installieren. Oracle Cloud Infrastructure verwaltet das Erstellen der Datenbank sowie Backup, Patching, Upgrade und Optimierung der Datenbank.

Integrierte und bereitgestellte Features bereitstellen

Möchten Sie zeigen, was Sie auf Oracle Cloud Infrastructure erstellt haben? Möchten Sie Ihre Erkenntnisse, Best Practices und Referenzarchitekturen mit unserer globalen Community aus Cloud-Architekten teilen? Wir helfen Ihnen bei den ersten Schritten.

  1. Laden Sie die Vorlage (PPTX) herunter

    Erstellen Sie eine eigene Referenzarchitektur, indem Sie die Symbole in den Beispiel-Drahtrahmen ziehen und ablegen.

  2. Architektur-Tutorial ansehen

    Schritt-für-Schritt-Anweisungen zum Erstellen einer Referenzarchitektur.

  3. Diagramm einreichen

    Senden Sie uns eine E-Mail mit Ihrem Diagramm. Unsere Cloud-Architekten überprüfen Ihr Diagramm und kontaktieren Sie, um Ihre Architektur zu besprechen.

Mehr erfahren

Erfahren Sie mehr über die Features dieser Architektur und die zugehörigen Architekturen.

Bestätigungen

  • Autoren: Robert Huie, Gustavo Alves, Sasha Banks-Louie
  • Mitwirkender: Robert Lies, Alexandre Nakahara