Déploiement d'une solution de récupération après sinistre pour une passerelle d'API Oracle Cloud Infrastructure

Oracle Cloud Infrastructure API Gateway est disponible dans une région OCI régie par des contrats de niveau de service. Cette architecture de référence détaille l'architecture sous-jacente à l'implémentation d'une solution de récupération après sinistre inter-région gérée par le client pour OCI API Gateway.

Cette solution de récupération après sinistre prend en charge :
  • Topologies "Active-passive", dans lesquelles une seule passerelle traite l'intégralité de la charge même si les deux passerelles sont censées être opérationnelles. Une passerelle active est déterminée non pas par son état (Actif/Supprimé/Mise à jour), mais par la passerelle vers laquelle le trafic est dirigé et est activée pour exécuter toutes les fonctions.
  • Réplication gérée par le client des catégories OCI API Gateway, par exemple les déploiements d'API, les plans d'utilisation et les abonnés d'API.
Si les passerelles d'API principales et secondaires utilisent les mêmes catégories d'API et fournisseurs d'autorisation, après la permutation, vous pouvez accéder aux API de la même manière dans les régions.

Avant de commencer

Avant de commencer la configuration de la récupération après sinistre pour les intégrations, vous devez :
  • Provisionnez une deuxième passerelle d'API OCI dans une autre région OCI.
  • Obtenez un DNS/nom d'hôte personnalisé (dans un domaine de votre choix) et un certificat SSL associé.

Architecture

Cette architecture de référence pour OCI API Gateway se compose de deux passerelles d'API OCI dans deux régions cloud différentes, accessibles à l'aide d'une seule adresse personnalisée (URL). Pour implémenter une adresse personnalisée unique, vous pouvez utiliser une zone DNS (système de noms de domaine) OCI pour résoudre le nom d'adresse personnalisé.

Vous pouvez utiliser ces URL personnalisées comme point d'entrée pour les passerelles d'API OCI, par exemple, api.mycompany.com. Pour plus d'informations sur la configuration des adresses personnalisées, reportez-vous à la section "Gestion des zones de service DNS", à laquelle vous pouvez accéder à partir de la section "En savoir plus", ci-dessous.

Les deux passerelles d'API OCI de l'architecture sont désignées comme principales et secondaires, et les deux passerelles s'exécutent simultanément. Cependant, une seule des passerelles reçoit le trafic. Au départ, la passerelle principale reçoit le flux de trafic. Si la région principale devient indisponible, l'enregistrement DNS peut être mis à jour pour acheminer le trafic vers la région secondaire.

Le diagramme suivant illustre cette architecture de référence pour une passerelle publique (modèle de zone d'atterrissage pour OCI API Gateway) :


Description de l'image apigw-oci-customer-managed-dr-topology.png
Description de l'illustration apigw-oci-customer-managed-dr-topology.png

apigw-oci-customer-managed-dr-topology-oracle.zip

Ces architectures comportent les composants suivants :
  • Tenancy

    Une location est une partition sécurisée et isolée configurée par Oracle dans Oracle Cloud lors de votre inscription à 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. En général, une entreprise dispose d'une seule location et reflète sa structure organisationnelle au sein de cette location. Une location unique est généralement associée à un seul abonnement, et un seul abonnement n'a généralement qu'une seule location.

  • Région

    Une région Oracle Cloud Infrastructure est une zone géographique précise, incluant un ou plusieurs 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 (entre les pays ou même les continents).

  • Compartiment

    Les compartiments sont des partitions logiques inter-régionales au sein d'une location Oracle Cloud Infrastructure. Utilisez des compartiments pour organiser, contrôler l'accès et définir des quotas d'utilisation pour vos ressources Oracle Cloud. Dans un compartiment donné, vous définissez des stratégies qui contrôlent l'accès et définissent des privilèges pour les ressources.

  • Domaine de disponibilité

    Les domaines de disponibilité sont des centres de données autonomes indépendants au sein d'une région. Les ressources physiques de chaque domaine de disponibilité sont isolées de celles des autres, ce qui garantit la tolérance aux pannes. Les domaines de disponibilité ne partagent ni infrastructure (par exemple, alimentation, système de refroidissement), ni réseau de domaine de disponibilité interne. Par conséquent, une panne sur un domaine de disponibilité ne doit pas affecter les autres domaines de disponibilité de la région.

  • Réseau cloud virtuel (VCN) et sous-réseau

    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 centre de données traditionnels, les réseaux cloud virtuels vous donnent le contrôle sur l'environnement réseau. Un réseau cloud virtuel peut comporter plusieurs blocs CIDR qui ne se chevauchent pas et que vous pouvez modifier après l'avoir créé. Vous pouvez segmenter un réseau cloud virtuel en plusieurs sous-réseaux ciblant une région ou un domaine de disponibilité. Chaque sous-réseau est composé d'une plage contiguë d'adresses qui ne chevauchent pas celles des autres sous-réseaux du réseau cloud virtuel. Vous pouvez modifier la taille d'un sous-réseau après sa création. Un sous-réseau peut être public ou privé.

  • Table de routage

    Les tables de routage virtuelles contiennent des règles pour acheminer le trafic des sous-réseaux vers des destinations en dehors d'un VCN, généralement via des passerelles.

  • 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 à entrer et à sortir du sous-réseau.

  • Service Oracle Cloud Infrastructure DNS

    Les zones DNS publiques contiennent les enregistrements DNS faisant autorité qui résident sur les serveurs de noms d'OCI. Vous pouvez créer des zones publiques avec des noms de domaine publics accessibles sur Internet. Pour plus d'informations, reportez-vous à la section "Présentation de DNS", à laquelle vous pouvez accéder à partir de "En savoir plus", ci-dessous.

  • Passerelle Internet

    La passerelle Internet autorise le trafic entre les sous-réseaux publics d'un VCN et le réseau Internet public.

  • Oracle Cloud Infrastructure Web Application Firewall (WAF)

    Les WAF protègent les applications contre le trafic Internet malveillant et indésirable grâce à un service de pare-feu d'applications Web global basé sur le cloud, conforme PCI. En combinant les informations sur les menaces et l'application cohérente des règles sur OCI Flexible Network Load Balancer, Oracle Cloud Infrastructure Web Application Firewall renforce les défenses et protège les serveurs d'applications Internet et les applications internes. (Ce composant est facultatif)

  • Flexible Load Balancer

    Un équilibreur de charge améliore l'utilisation des ressources en dirigeant les demandes entre les services applicatifs qui fonctionnent en parallèle. A mesure que la demande augmente, le nombre de services applicatifs peut être augmenté et l'équilibreur de charge les utilise pour équilibrer le traitement des demandes. (Ce composant est facultatif)

  • Service Bastion

    Oracle Cloud Infrastructure Bastion fournit un accès sécurisé limité et limité dans le temps aux ressources qui n'ont pas d'adresses publiques et qui nécessitent des contrôles stricts d'accès aux ressources, tels que les machines virtuelles et Bare Metal, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Cloud Infrastructure Kubernetes Engine (OKE), ainsi que toute autre ressource autorisant l'accès SSH (Secure Shell Protocol). Avec le service OCI Bastion, vous pouvez activer l'accès aux hôtes privés sans déployer et gérer un hôte de saut. En outre, vous bénéficiez d'une meilleure posture de sécurité avec des droits d'accès basés sur l'identité et une session SSH centralisée, auditée et limitée dans le temps. OCI Bastion élimine la nécessité d'une adresse IP publique pour l'accès au bastion, éliminant ainsi les tracas et la surface d'attaque potentielle lors de la fourniture d'un accès à distance.

  • API Gateway

    Oracle Cloud Infrastructure API Gateway vous permet de publier des API avec des adresses privées accessibles à partir de votre réseau et que vous pouvez exposer au réseau Internet public si nécessaire. Les adresses prennent en charge la validation d'API, la transformation des demandes et des réponses, CORS, l'authentification et l'autorisation, ainsi que la limitation des demandes.

  • Analytics

    Oracle Analytics Cloud est un service cloud public évolutif et sécurisé qui permet aux analystes d'entreprise d'utiliser des fonctions d'analyse modernes en libre-service basées sur l'IA pour la préparation des données, la visualisation, le reporting d'entreprise, l'analyse augmentée, ainsi que le traitement et la génération du langage naturel. Avec Oracle Analytics Cloud, vous bénéficiez également de fonctionnalités de gestion des services flexibles, notamment une configuration rapide, une mise à l'échelle et des correctifs faciles, ainsi qu'une gestion automatisée du cycle de vie.

  • Identity and Access Management (IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM) est le plan de contrôle d'accès pour Oracle Cloud Infrastructure (OCI) et Oracle Cloud Applications. L'API IAM et l'interface utilisateur vous permettent de gérer les domaines d'identité et les ressources au sein du domaine d'identité. Chaque domaine d'identité OCI IAM représente une solution autonome de gestion des identités et des accès ou une population d'utilisateurs différente.

  • Domaine d'identité (IDom)

    IAM utilise les domaines d'identité (IDom) pour fournir des fonctionnalités de gestion des identités et des accès telles que l'authentification, l'accès avec connexion unique (SSO) et la gestion du cycle de vie des identités pour Oracle Cloud, ainsi que pour les applications Oracle et non Oracle, que ce soit SaaS, hébergé dans le cloud ou sur site.

  • Règle

    Une stratégie Oracle Cloud Infrastructure Identity and Access Management indique qui peut accéder à quelles ressources et comment. L'accès est accordé au niveau d'un groupe et d'un compartiment, ce qui signifie que vous pouvez écrire une stratégie qui offre à un groupe un type d'accès spécifique dans un compartiment donné ou dans la location.

  • Audit

    Le service Oracle Cloud Infrastructure Audit enregistre automatiquement les appels vers toutes les adresses d'API publique Oracle Cloud Infrastructure prises en charge en tant qu'événements de journal. Tous les services OCI prennent en charge la journalisation par Oracle Cloud Infrastructure Audit.

  • Logging
    Logging est un service hautement évolutif et entièrement géré qui permet d'accéder aux types de journal suivants à partir des ressources du cloud :
    • Journaux d'audit : journaux liés aux événements émis par le service Audit.
    • Journaux de service : journaux émis par des services individuels tels qu'API Gateway, Events, Functions, Load Balancing, Object Storage et les journaux de flux VCN.
    • Journaux personnalisés : journaux contenant des informations de diagnostic issues d'applications personnalisées, d'autres fournisseurs cloud ou d'un environnement sur site.
  • Analyses de journalisation

    Logging Analytics est un service cloud basé sur l'apprentissage automatique qui surveille, regroupe, indexe et analyse toutes les données des journaux des environnements sur site et multiclouds. Permettre aux utilisateurs de rechercher, d'explorer et de corréler ces données pour résoudre et résoudre les problèmes plus rapidement et obtenir des informations pour prendre de meilleures décisions opérationnelles.

Recommandations

Utilisez les recommandations suivantes comme point de départ lors du déploiement d'une solution de récupération après sinistre pour une passerelle d'API OCI. Vos exigences peuvent différer de l'architecture décrite ici.
  • VCN

    Lorsque vous créez un VCN, déterminez le nombre de blocs CIDR requis et la taille de chaque bloc en fonction du nombre de ressources que vous prévoyez d'attacher à des sous-réseaux dans le VCN. Utilisez des blocs CIDR qui se trouvent dans l'espace d'adresse IP privée standard.

    Sélectionnez les blocs CIDR qui ne chevauchent aucun autre réseau (dans Oracle Cloud Infrastructure, votre centre de données sur site ou un autre fournisseur cloud) auquel vous avez l'intention de configurer des connexions privées.

    Après avoir créé un VCN, vous pouvez modifier, ajouter et supprimer ses blocs CIDR.

    Lorsque vous concevez les sous-réseaux, tenez compte du flux de trafic et des exigences de sécurité. Attachez toutes les ressources d'un niveau ou d'un rôle spécifique au même sous-réseau, qui peut servir de limite de sécurité.

    Utiliser des sous-réseaux régionaux.

  • Connectivité (passerelle API privée)

    Lorsque vous déployez des ressources vers OCI, vous pouvez commencer petit, avec une seule connexion à votre réseau sur site. Cette connexion unique peut s'effectuer via OCI FastConnect ou via le VPN IPSec. Pour planifier la redondance, tenez compte de tous les composants (périphériques matériels, installations, circuits et alimentation) entre votre réseau sur site et OCI. Pensez également à la diversité pour vous assurer que les installations ne sont pas partagées entre les chemins.

Points à prendre en compte

Lors du déploiement d'une solution de récupération après sinistre pour une OCI API Gateway, tenez compte de ces facteurs.

  • Utilisation d'une zone de gestion DNS OCI

    Configurez des enregistrements DNS pour vos passerelles d'API OCI. Vous pouvez utiliser une zone DNS OCI pour gérer les enregistrements DNS et fournir une résolution de nom d'hôte pour vos passerelles d'API OCI.

    Une fois que vous avez acquis un domaine (ou un sous-domaine) pour vos passerelles d'API, ajoutez une zone DNS OCI via la console OCI ou l'API. Pour plus d'informations sur la création d'une zone DNS OCI et l'ajout d'un enregistrement à cette zone, reportez-vous à la section "Gestion des zones de service DNS", à laquelle vous pouvez accéder à partir de la section "En savoir plus", ci-dessous.
    • Dans la zone, ajoutez le nom d'hôte personnalisé d'OCI API Gateway en tant qu'enregistrement CNAME.
    • Une fois les modifications de zone publiées, mettez à jour votre domaine pour utiliser les serveurs de noms DNS OCI.
  • Sécurité (Security)

    Utilisez les stratégies OCI Identity and Access Management (IAM) pour contrôler qui peut accéder à vos ressources cloud et quelles opérations peuvent être effectuées. Les services cloud OCI utilisent des stratégies IAM, telles que l'autorisation d'OCI API Gateway pour appeler des fonctions. OCI API Gateway peut également contrôler l'accès à l'aide de l'authentification et de l'autorisation OAuth. IAM autorise l'authentification et l'autorisation qui peuvent être fédérées via IAM. Par conséquent, OCI API Gateway a le pouvoir de s'authentifier auprès d'un large éventail de services et de configurations d'authentification.

  • Performances et coûts

    OCI API Gateway prend en charge la mise en cache des réponses en s'intégrant à un serveur de cache externe (tel qu'un serveur Redis ou KeyDB), ce qui permet d'éviter une charge inutile sur les services back-end. Lorsque les réponses sont mises en mémoire cache, si des demandes similaires sont reçues, elles peuvent être effectuées en extrayant les données d'un cache de réponses plutôt qu'en envoyant la demande au service back-end. Cela réduit la charge sur les services back-end et contribue ainsi à améliorer les performances et à réduire les coûts. OCI API Gateway met également en mémoire cache les jetons d'autorisation (en fonction de leur délai de conservation), ce qui réduit la charge sur le fournisseur d'identités et améliore les performances.

  • Disponibilité

    Envisagez d'utiliser une option de haute disponibilité en fonction de vos exigences de déploiement et de votre région. Les options incluent la distribution des ressources sur plusieurs domaines de disponibilité d'une région et la distribution des ressources sur les domaines de pannes d'un domaine de disponibilité.

  • Surveillance et alertes

    Configurer la surveillance et les alertes sur les mesures API Gateway.

Déployez

Vous pouvez déployer cette architecture de référence sur Oracle Cloud Infrastructure en procédant comme suit :

Le code Terraform oci_apigateway_api est disponible sur GitHub. Voir "Explorer plus", ci-dessous, pour un lien.

  1. Connexion à la console Oracle Cloud Infrastructure avec vos informations d'identification Oracle Cloud
  2. Configurez l'infrastructure réseau du site secondaire requise comme indiqué dans le diagramme d'architecture. Elle inclut les composants suivants : VCN, Sous-réseau, DRG/Passerelle Internet (Passerelle d'API privée/publique), Liste de sécurité, Table de routage, Passerelle de service, FastConnect/VPN et CPE, Zone publique DNS
  3. Créez une passerelle d'API OCI. Reportez-vous aux instructions de création d'une passerelle d'API pour préparer et créer une instance OCI API Gateway. Vous pouvez accéder à ce document à partir de "Explorer plus", ci-dessous.
  4. Limitez les réseaux qui ont accès à votre passerelle d'API en configurant la liste de sécurité, la table de routage et les groupes de sécurité réseau, si nécessaire.
  5. Automatisez la synchronisation du déploiement. Cette étape permet de s'assurer que les piles des déploiements d'API, des plans d'utilisation d'API et des abonnements d'API sont synchronisées régulièrement entre l'instance principale et l'instance de secours à l'aide de l'intégration continue et du déploiement continu.

    Remarques :

    Chaque configuration et chaque modification en plus des ressources de gestion des API OCI Les déploiements d'API, les plans d'utilisation d'API et les abonnements d'API peuvent être enregistrés et gérés en tant que pile Terraform. La pile peut ensuite être téléchargée vers le côté secondaire ou appliquée à un autre site à l'aide d'OCI DevOps.
  6. Exécutez les tâches de basculement.
    • Basculez vers l'environnement de récupération après sinistre.
    • Passez de l'instance principale à l'instance de secours pendant les coupures en mettant à jour l'enregistrement DNS sur votre fournisseur DNS ou dans la zone DNS OCI pour acheminer le trafic vers le site secondaire via la passerelle d'API. Vous pouvez le faire manuellement à partir de la console OCI ou à l'aide de l'API REST OCI. Après le processus de basculement, la passerelle d'API du site de secours/secondaire devient la passerelle d'API principale et la passerelle d'API précédemment désignée comme principale devient la nouvelle passerelle d'API de secours.

Accusés de réception

  • Auteur : Peter Obert
  • Contributeur : Robert Wunderlich