Déploiement de la plate-forme de commerce électronique sur Oracle Cloud
La demande croissante de voyages aériens a incité GOL Linhas Aéreas Inteligentes (GOL) à moderniser son système de billetterie de passagers et à étendre son infrastructure pour s'adapter à la croissance record.
Après avoir remanié son système de réservation monolithique sur une plate-forme cloud native qui s'exécute sur Oracle Cloud Infrastructure (OCI), GOL a triplé ses revenus, presque doublé le nombre de départs et prévoit des augmentations continues du chiffre d'affaires net, malgré la hausse des prix du carburant.
GOL est l'une des plus grandes compagnies aériennes commerciales du Brésil dans les secteurs des entreprises et des loisirs, employant 15 000 employés, exploitant 127 avions Boeing 737 et effectuant 715 vols quotidiens vers plus de 100 destinations. Depuis le déploiement de son application de billetterie sur OCI, la compagnie aérienne a réduit le temps de traitement par lots à 30 minutes (contre 2,5 heures) et aide actuellement les voyageurs à passer 30 % moins de temps à acheter des billets.
Lors de leur événement promotionnel Black Friday en 2021, GOL a vendu 30 % de billets de plus qu'au cours des années précédentes, tout en ne subissant aucun temps d'inactivité pendant l'éclatement du trafic. Aujourd'hui, GOL utilise OCI pour aider les équipes commerciales, marketing et opérationnelles à ajuster les prix des billets, à gérer les check-ins, à modifier les itinéraires passagers et à lancer des promotions en fonction des données de vente de billets en temps réel. Les agences de voyage et d'autres partenaires peuvent également accéder à l'application de tickets de GOL sur OCI, ce qui leur donne un aperçu immédiat des départs, arrivées, retards et annulations de vols. L'application de commerce électronique de GOL, exécutée dans un cluster Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE), évolue entre 8 et 12 noeuds du pool d'instances en fonctionnement normal. Lorsqu'une campagne de vente est lancée, le système passe automatiquement à 20-30 noeuds lors des pics de demande.
Architecture
Les voyageurs d'affaires et les vacanciers peuvent acheter des billets d'avion et gérer leurs voyages en se connectant d'abord au site de GOL Linhas Aéreas Inteligentes (GOL).
GOL s'est normalisé sur une topologie réseau qui utilise deux réseaux cloud virtuels (VCN). Il est configuré dans un environnement hub et satellite. Le hub est configuré en tant que VCN périphérique où une passerelle de routage dynamique (DRG) est déployée pour connecter des systèmes sur site. Il existe plusieurs connexions pour connecter le réseau sur site de GOL ainsi que le reste de l'infrastructure GOL. L'infrastructure GOL utilise FastConnect pour se connecter au cloud MPLS (Multiprotocol Label Switching) de GOL. Le cloud GOL MPLS connecte le reste de l'infrastructure réseau de GOL ainsi qu'une connexion multicloud à Azure.
Une connexion secondaire à partir du réseau sur site de GOL est une connexion VPN à l'aide d'un tunnel VPN site à site se connectant via le DRG à une instance OpenVPN. A partir du VCN hub, une passerelle d'appairage local (LPG) se connecte au VCN satellite. Le VCN satellite héberge le reste de l'infrastructure contenant les équilibreurs de charge, Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE), Autonomous Database et Oracle Exadata Database Service. Chacun de ces éléments est isolé à l'aide de sous-réseaux, de tables de routage et de groupes de sécurité. Une passerelle Internet fournit aux utilisateurs un point d'entrée pour accéder au système de commerce électronique GOL et un point de sortie pour interagir avec les systèmes externes.
Le diagramme suivant illustre cette architecture de référence.
gol-e-commerce-oci-1-oracle.zip
Pour accéder au système de commerce électronique GOL, le trafic utilisateur doit d'abord passer par un Oracle Cloud Infrastructure Web Application Firewall (WAF). WAF protège l'application de commerce électronique GOL du trafic Internet malveillant et indésirable à l'aide de renseignements sur les menaces et de l'application des règles. Après avoir passé le WAF, le trafic utilisateur entre dans le VCN satellite où il est distribué via un équilibreur de charge public. L'équilibreur de charge transmet la demande aux microservices appropriés exécutés sur le sous-réseau back-end.
Le sous-réseau back-end héberge un cluster Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE). Les microservices exécutés sur le cluster OKE permettent aux voyageurs GOL d'acheter et de réserver des vols, de vérifier l'état des vols, de modifier leur itinéraire ou d'annuler leur voyage. Grâce aux services externes auxiliaires de microservice et d'API, les passagers de GOL peuvent acheter des voitures de location et acheter une assurance voyage à partir de l'application de commerce électronique GOL. Le microservice d'achat et de réservation utilise l'adresse du client pour la vérification d'adresse avec un système de validation d'adresse. Le même microservice transmet également l'adresse du client à un système de validation de carte de crédit pour vérification du paiement. Les microservices s'intègrent aux systèmes back-end.
Marketing et gestion de la relation client (CRM) font également partie du système de commerce électronique GOL. Le microservice de communication client communique avec des systèmes externes tels qu'Oracle Responsys et Oracle Service Cloud. Oracle Responsys fournit des offres personnalisées aux clients via une campagne marketing par courrier et Oracle Service Cloud fournit des services de gestion de la relation client (CRM) aux clients ayant des questions, des demandes ou des problèmes.
Pour satisfaire aux exigences en matière de rapports et de conformité afin de déclarer les données de vol dans les temps et de retard au gouvernement, le microservice de statut de vol envoie ces informations à une instance de machine virtuelle appelée WS Infraero pour traiter les données. GOL a déployé une pile ELK (ElasticSearch LogStash Kibana) pour la journalisation centralisée afin d'identifier les problèmes liés au serveur et à l'application.
GOL utilise Oracle Autonomous Database pour stocker les profils utilisateur et Oracle Exadata Database Service pour stocker les données Lufthansa Netline/Ops++. L'architecture étant désormais flexible, GOL envisage de déplacer des parties de l'application vers différentes régions et d'étudier la synchronisation de la base de données pour la récupération après sinistre.
Dans son environnement multicloud, GOL utilise le lac de données Microsoft Azure comme référentiel de données central, alimenté par des données brutes à partir d'OCI et exploite Apache Parquet. Les données de vente et d'inventaire passent par l'application IBM MQ, qui est déployée dans OCI. Les flux de données sont ensuite traités par Oracle Data Integrator pour chargement dans Oracle Autonomous Transaction Processing. Pour gérer les charges globales éclatantes, telles que les pics soudains de ventes de tickets en ligne, l'équipe informatique de GOL utilise le pool de connexions résident de base de données d'Autonomous Database.
L'intégration à l'intégration continue et au déploiement continu d'Oracle, Azure DevOps et Oracle Cloud Infrastructure Resource Manager a aidé GOL à maintenir et à mettre à jour ses conteneurs. Le front-end de l'application est développé à l'aide d'Angular et le back-end est développé à l'aide de .Net Core. Azure DevOps est utilisé pour la gestion du code. Azure DevOps est accessible via Internet et Azure est connecté à OCI à l'aide d'un tunnel VPN site à site sécurisé. Grâce à l'utilisation d'Azure DevOps et d'OKE, les mises à jour des microservices peuvent être effectuées en quelques heures, plutôt que les semaines nécessaires à l'exécution de son application sur site.
L'architecture se compose des éléments suivants :
- Location
Une location est une partition sécurisée et isolée qu'Oracle configure dans Oracle Cloud lorsque vous êtes inscrit à Oracle Cloud Infrastructure. Vous pouvez créer, organiser et administrer vos ressources dans Oracle Cloud au sein de votre location. Une location est synonyme d'entreprise ou d'organisation. Généralement, une entreprise dispose d'une location unique et reflète sa structure organisationnelle dans cette location. Une location unique est généralement associée à un seul abonnement et un seul abonnement ne comporte généralement qu'une seule location.
- Région
Une région Oracle Cloud Infrastructure est une zone géographique localisée qui contient des centres de données, appelés domaines de disponibilité. Les régions sont indépendantes les unes des autres et de grandes distances peuvent les séparer (dans des pays voire des continents).
- Compartiment
Les compartiments sont des partitions logiques inter-région au sein d'une location Oracle Cloud Infrastructure. Utilisez des compartiments pour organiser vos ressources dans Oracle Cloud, contrôler l'accès aux ressources et définir des quotas d'utilisation. Pour contrôler l'accès aux ressources d'un compartiment donné, vous définissez des stratégies qui indiquent qui peut accéder aux ressources et les actions réalisables.
- Domaine de pannes
Un domaine de pannes est un regroupement de matériel et d'infrastructures au sein d'un domaine de disponibilité. Chaque domaine de disponibilité comporte trois domaines de pannes avec une alimentation et un matériel indépendants. Lorsque vous distribuez des ressources sur plusieurs domaines de pannes, vos applications peuvent tolérer les pannes de serveur physique, de maintenance du système et d'alimentation au sein d'un domaine de pannes.
- Pare-feu d'applications Web (WAF)
Oracle Cloud Infrastructure Web Application Firewall (WAF) est un service d'application en périphérie, régional et conforme à PCI attaché à un point d'application, tel qu'un équilibreur de charge ou un nom de domaine d'application Web. WAF protège les applications du trafic Internet malveillant et indésirable. WAF peut protéger toutes les adresses Internet, en assurant l'exécution cohérente des règles sur les différentes applications d'un client.
- Réseau cloud virtuel (VCN) et sous-réseaux
Un VCN est un réseau personnalisable défini par logiciel que vous configurez dans une région Oracle Cloud Infrastructure. Comme les réseaux de centres de données traditionnels, les réseaux cloud virtuels vous donnent un contrôle total sur votre environnement réseau. Un VCN peut comporter plusieurs blocs CIDR qui ne se chevauchent pas et que vous pouvez modifier après avoir créé le VCN. Vous pouvez segmenter un VCN en sous-réseaux, qui peuvent être ciblés vers une région ou un domaine de disponibilité. Chaque sous-réseau se compose d'une plage contiguë d'adresses qui ne chevauchent pas les autres sous-réseaux du VCN. Vous pouvez modifier la taille d'un sous-réseau après sa création. Un sous-réseau peut être public ou privé.
- Liste de sécurité
Pour chaque sous-réseau, vous pouvez créer des règles de sécurité qui indiquent la source, la destination et le type de trafic qui doivent être autorisés vers et depuis le sous-réseau.
- Programme d'équilibrage de charge
Le service Oracle Cloud Infrastructure Load Balancing fournit une répartition de trafic automatisée à partir d'un seul point d'entrée vers plusieurs serveurs du back-end.
- Stockage d'objets
Object Storage offre un accès rapide à de grandes quantités de données structurées et non structurées de tout type de contenu, y compris des sauvegardes de base de données, des données analytiques et du contenu enrichi tel que des images et des vidéos. Vous pouvez stocker les données, puis les extraire directement à partir d'Internet ou de la plate-forme cloud, et ce, en toute sécurité. Vous pouvez adapter le stockage de manière transparente sans subir de dégradation des performances ni de la fiabilité du service. Utilisez le stockage standard pour le stockage "à chaud" auquel vous devez accéder rapidement, immédiatement et fréquemment. Utilisez le stockage d'archive pour un stockage "froid" que vous conservez pendant de longues périodes et que vous accédez rarement ou rarement.
- Calcul
Le service Oracle Cloud Infrastructure Compute vous permet de provisionner et de gérer les hôtes de calcul dans le cloud. Vous pouvez lancer des instances de calcul avec des formes qui répondent à vos besoins en ressources en matière de CPU, de mémoire, de bande passante réseau et de stockage. Après avoir créé une instance de calcul, vous pouvez y accéder en toute sécurité, la redémarrer, attacher et détacher des volumes, et y mettre fin lorsque vous n'en avez plus besoin.
- Autonomous Database
Oracle Cloud Infrastructure Autonomous Database est un environnement de base de données entièrement géré et préconfiguré que vous pouvez utiliser pour le traitement des transactions et l'entreposage de données. Il n'est pas nécessaire de configurer ou de gérer du matériel, ni d'installer un logiciel. Oracle Cloud Infrastructure gère la création de la base de données, ainsi que la sauvegarde, l'application de patches, la mise à niveau et le réglage de la base de données.
- Autonomous Transaction Processing
Oracle Autonomous Transaction Processing est un service de base de données à pilotage, sécurité et réparation automatiques, optimisé pour les charges de travail de traitement des transactions. Il n'est pas nécessaire de configurer ou de gérer du matériel, ni d'installer un logiciel. Oracle Cloud Infrastructure gère la création de la base de données, ainsi que la sauvegarde, l'application de patches, la mise à niveau et le réglage de la base de données.
Apparaissez dans Création et déploiement
Vous souhaitez montrer ce que vous avez créé sur Oracle Cloud Infrastructure ? Vous souhaitez partager vos enseignements, vos meilleures pratiques et vos architectures de référence avec notre communauté mondiale d'architectes cloud ? Laissez-vous guider.
- Télécharger le modèle (PPTX)
Illustrez votre propre architecture de référence en glissant-déposant les icônes dans l'exemple d'image filaire.
- Regarder le tutoriel sur l'architecture
Obtenez des instructions détaillées sur la création d'une architecture de référence.
- Soumettre votre diagramme
Envoyez-nous un courriel avec votre diagramme. Nos architectes cloud passeront en revue votre diagramme et vous contacteront pour discuter de votre architecture.
