Choisissez l'architecture MySQL appropriée sur OCI

Comme les organisations qui s'appuient sur des bases de données à code source libre, comme Oracle HeatWave MySQL, migrent des solutions sur place autogérées vers des services de base de données en nuage gérés (comme la base de données MySQL) pour réduire les coûts et améliorer l'efficacité opérationnelle, il est important d'apprendre à choisir l'architecture MySQL appropriée sur Oracle Cloud Infrastructure (OCI).

Oracle HeatWave MySQL est un service de base de données géré sur OCI qui vise à fournir un service de base de données hautement évolutif et disponible sans avoir à planifier et à effectuer des tâches opérationnelles quotidiennes fastidieuses telles que le provisionnement, la sauvegarde, les correctifs et les mises à niveau de base de données. Si vous deviez adopter Oracle HeatWave MySQL pour vos charges de travail sur OCI, vous réduisez non seulement le coût d'exploitation courant de vos bases de données autogérées, mais vous pouvez aussi vous concentrer sur les travaux à valeur élevée et sur l'innovation. Pour tirer le maximum d'avantages de l'exécution de vos charges de travail sur Oracle HeatWave MySQL et OCI, vous devez comprendre Oracle HeatWave MySQL et OCI pour concevoir une architecture en nuage flexible et évolutive qui vous permettrait d'augmenter et d'étendre votre utilisation du nuage en fonction de vos besoins et de vos exigences d'affaires.

Architecture

Cette architecture de référence vise à vous fournir des informations techniques pertinentes pour vous aider à concevoir et à optimiser une architecture MySQL flexible et évolutive sur OCI afin de répondre à vos exigences de charge de travail.

La portée de cette architecture de référence suppose les exigences et spécifications non fonctionnelles suivantes :

Domaines Conditions Descriptions
Disponibilité R1 L'architecture doit être hautement disponible pour prendre en charge les opérations 24/7 avec une disponibilité du service d'au moins 99,95 %
  R2
  • RTO <= 4 heures
  • RPO <= 1 heure
Extensibilité R3 L'architecture doit être flexible et évolutive pour prendre en charge les charges de travail
Sécurité R4 L'architecture doit être hautement sécurisée grâce à des mécanismes de contrôle d'accès et d'autorisation

En fonction de ces exigences, le modèle de haute disponibilité d'Oracle HeatWave MySQL est sélectionné avec d'autres services OCI pour créer l'architecture de vos charges de travail.

Cette architecture de référence est illustrée dans trois points de vue différents pour répondre aux préoccupations des architectes de l'infrastructure, des architectes de l'information, des ingénieurs DevOps et des ingénieurs opérationnels.

Vue de l'infrastructure



mysql-oci-architecture-infrastructure-oracle.zip

Dans cette vue d'architecture, un réseau en nuage virtuel régional est provisionné avec des sous-réseaux publics et privés dans une seule région OCI comprenant trois domaines de disponibilité. Le modèle de haute disponibilité d'Oracle HeatWave MySQL déploiera trois instances de base de données MySQL redondantes sur les trois domaines de disponibilité dans une région OCI à plusieurs domaines de disponibilité ou trois domaines d'erreur dans une région OCI à un seul domaine de disponibilité.

Cette vue d'architecture illustre les options de déploiement d'applications et de connectivité réseau pour Oracle HeatWave MySQL :

  • Oracle HeatWave MySQL est déployé dans le sous-réseau privé sécurisé sans accès public à partir d'Internet.
  • Options de connectivité pour accéder à Oracle HeatWave MySQL :
    • Par Internet à l'aide d'Oracle Cloud Infrastructure Load Balancing.
    • Au moyen d'un RPV entre vos centres de données et les régions OCI à l'aide de la passerelle de routage dynamique OCI :
      • RPV site-à-site OCI
      • Service FastConnect pour Oracle Cloud Infrastructure
  • En général, il existe trois modèles de déploiement d'application pour accéder à Oracle HeatWave MySQL dans OCI :
    • Applications déployées dans des instances du service de calcul pour Oracle Cloud Infrastructure ou des instances Oracle Cloud Infrastructure Kubernetes Engine (modèle privilégié avec l'application et MySQL Database colocalisées dans la même région en nuage OCI).
    • Applications hébergées dans votre centre de données.
    • Applications hébergées dans un nuage non OCI (par exemple, Amazon Web Services, Microsoft Azure, etc.).

Vue Infrastructure (évolutivité/redondance)



mysql-oci-architecture-scalabilité-oracle.zip

Dans cette vue d'architecture, la région OCI principale avec modèle de haute disponibilité Oracle HeatWave MySQL est interconnectée à une autre région OCI au moyen de la passerelle de routage dynamique OCI. Cette vue d'architecture illustre l'évolutivité de MySQL dans la même région OCI ainsi que la redondance dans une autre région OCI :

  • Les instances de base de données MySQL principales peuvent être ajustées facilement en déployant les instances de " réplique de lecture gérée " dans la même région OCI pour ajuster vos transactions de lecture (voir Explorer plus).
  • Les instances MySQL principales peuvent être répliquées vers une réplique MySQL déployée dans une autre région OCI pour assurer la redondance de vos charges de travail (voir Explorer davantage).

Vue d'accès à la base de données

Cette vue d'architecture présente les options d'outils à utiliser avec Oracle HeatWave MySQL pour les administrateurs et les développeurs de base de données :

  • Les outils OCI tels que le service d'outils de base de données pour OCI (feuille de calcul SQL) et Oracle Cloud Infrastructure Cloud Shell avec l'outil MySQL Shell préinstallé sont accessibles à l'aide de navigateurs Web sur le réseau Internet public pour fonctionner avec MySQL.
  • Le service Oracle Cloud Infrastructure Bastion peut être utilisé pour connecter vos outils à Oracle HeatWave MySQL par Internet.
    • Le service Oracle Cloud Infrastructure Bastion peut être utilisé pour connecter vos outils à Oracle MySQL Database Service par Internet.
    • Le code Visual Studio avec la version de prévisualisation du plugiciel d'interpréteur de commandes MySQL peut également être utilisé avec une configuration minimale pour la connexion à Oracle HeatWave MySQL.


mysql-oci-architecture-database-access-oracle.zip

Vue des opérations

Cette vue architecturale illustre les aspects de la surveillance d'Oracle HeatWave MySQL à l'aide des services Oracle Cloud Observability and Management Platform :

  • Créez des seuils pertinents sur la console Oracle HeatWave MySQL pour déclencher des alarmes pour l'action de prise en charge des opérations.
  • Surveillance axée sur les événements à l'aide d'événements OCI pour suivre des événements MySQL spécifiques (par exemple, redémarrage de la base de données).
  • Surveillance en temps réel à l'aide du tableau de bord OCI pour créer un tableau de bord OCI personnalisé sur des instances MySQL spécifiques.


mysql-oci-architecture-opération-oracle.zip

  • Région

    Une région Oracle Cloud Infrastructure est une zone géographique localisée qui contient 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 (dans différents pays ou continents).

  • Domaines de disponibilité

    Les domaines de disponibilité sont des centres de données indépendants et autonomes dans une région. Les ressources physiques de chaque domaine de disponibilité sont isolées des ressources des autres domaines de disponibilité, ce qui garantit la tolérance aux pannes. Les domaines de disponibilité ne partagent pas les éléments d'infrastructure (alimentation ou refroidissement, par exemple) ni le réseau de domaines de disponibilité interne. Par conséquent, une défaillance d'un domaine de disponibilité ne devrait pas affecter les autres domaines de disponibilité de la région.

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

    Un VCN est un réseau défini par logiciel personnalisable que vous avez configuré dans une région Oracle Cloud Infrastructure. Comme les réseaux en nuage virtuels traditionnels, ils vous offrent un contrôle sur votre environnement de réseau. Un VCN peut disposer de plusieurs blocs CIDR sans chevauchement que vous pouvez modifier après avoir créé le VCN. Vous pouvez segmenter un VCN en sous-réseaux, dont la portée peut concerner une région ou un domaine de disponibilité. Un sous-réseau est constitué d'un intervalle contigu d'adresses qui ne chevauchent pas les autres sous-réseaux dans le réseau en nuage 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é.

  • Équilibreur de charge

    Le service Oracle Cloud Infrastructure Load Balancing permet une répartition automatisée du trafic à partir d'un point d'entrée unique vers plusieurs serveurs dorsaux.

  • Liste de sécurité

    Pour chaque sous-réseau, vous pouvez créer des règles de sécurité qui spécifient la source, la destination et le type de trafic qui doivent être autorisés à entrer et à sortir du sous-réseau.

  • Calcul

    Avec le service Calcul pour Oracle Cloud Infrastructure, vous pouvez provisionner et gérer des hôtes pour les calculs dans le nuage. Vous pouvez lancer des instances de calcul avec des formes qui répondent à vos besoins en ressources d'UC, de mémoire, de bande passante de 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.

  • Événements

    Les services Oracle Cloud Infrastructure émettent des événements, qui sont des messages structurés décrivant les modifications apportées aux ressources. Des événements sont émis pour les opérations de création, de lecture, de mise à jour ou de suppression (CRUD), les modifications d'état du cycle de vie des ressources et les événements système qui ont une incidence sur les ressources en nuage.

  • Avis

    Le service Oracle Cloud Infrastructure Notifications diffuse des messages vers des composants répartis au moyen d'un modèle de publication-abonnement. Cela permet une livraison sécurisée, hautement fiable, à faible latence et durable des messages pour des applications hébergées sur Oracle Cloud Infrastructure.

  • Service d'hôte bastion

    Oracle Cloud Infrastructure Bastion fournit un accès sécurisé restreint et limité dans le temps aux ressources qui n'ont pas de points d'extrémité publics et qui nécessitent des contrôles d'accès stricts aux ressources, tels que les machines sans système d'exploitation et virtuelles, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Cloud Infrastructure Kubernetes Engine (OKE) et toute autre ressource qui autorise l'accès au protocole SSH. Avec le service Hôte bastion OCI, vous pouvez permettre l'accès à des hôtes privés sans déployer et tenir à jour un hôte de saut. En outre, vous bénéficiez d'une meilleure sécurité grâce à des autorisations basées sur l'identité et à une session SSH centralisée, auditée et limitée dans le temps. Le service Hôte bastion OCI élimine le besoin d'une adresse IP publique pour l'accès bastion, éliminant ainsi les tracas et la surface d'attaque potentielle lors de la fourniture d'un accès distant.

  • FastConnect

    Oracle Cloud Infrastructure FastConnect offre un moyen facile de créer une connexion privée dédiée entre votre centre de données et Oracle Cloud Infrastructure. FastConnect fournit des options de bande passante supérieure et permet une utilisation du réseau plus fiable que les connexions Internet.

  • MySQL HeatWave

    Le service Oracle MySQL Database Service est un service de base de données entièrement géré qui permet aux développeurs de développer et de déployer rapidement des applications en nuage natives et sécurisées à l'aide de la base de données ouverte la plus populaire au monde. Oracle HeatWave MySQL est un nouvel accélérateur d'interrogation en mémoire haute performance intégré pour Oracle MySQL Database Service qui accélère la performance MySQL pour les analyses et les interrogations transactionnelles.

Recommandations

Utilisez les recommandations suivantes comme point de départ pour concevoir l'architecture OCI en fonction de vos exigences de charge de travail.

  • VCN
    • Utilisez des sous-réseaux régionaux à des fins de flexibilité.
    • 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 aux sous-réseaux du VCN.
    • Utilisez des blocs CIDR qui se trouvent dans l'espace d'adresses IP privées standard :
      • 10.0.0.0 - 10.255.255.255
      • 172.16.0.0 - 172.31.255.255
      • 192.168.0.0 - 192.168.255.255
    • Sélectionnez des blocs CIDR qui ne chevauchent aucun autre réseau (dans OCI, votre centre de données sur place ou un autre fournisseur de nuage) auquel vous voulez 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 de vos exigences en matière de flux de trafic et 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é. Oracle MySQL Database Service vit toujours dans un sous-réseau privé.
  • Sécurité
    • Pour les ressources nécessitant une sécurité maximale, Oracle recommande d'utiliser des zones de sécurité. Une zone de sécurité est un compartiment associé à une recette de politiques de sécurité définie par Oracle et basée sur les meilleures pratiques. Par exemple, les ressources d'une zone de sécurité ne doivent pas être accessibles par l'Internet public et elles doivent être chiffrées à l'aide de clés gérées par le client. Lorsque vous créez et mettez à jour des ressources dans une zone de sécurité, OCI valide les opérations en fonction des politiques de la recette de zone de sécurité et refuse les opérations qui violent les politiques.
  • Protection d'infrastructure en nuage
    • Cloner et personnaliser les recettes par défaut fournies par Oracle pour créer des recettes de détecteur et de répondant personnalisées. Ces recettes vous permettent de spécifier quel type de violations de sécurité génèrent un avertissement et quelles actions sont autorisées pour elles. Par exemple, vous pouvez détecter les seaux Oracle Cloud Infrastructure Object Storage avec une visibilité publique.
  • Groupes de sécurité de réseau

    Vous pouvez utiliser des groupes de sécurité de réseau pour définir un jeu de règles de trafic entrant et sortant qui s'appliquent à des cartes vNIC spécifiques. Nous vous recommandons d'utiliser des groupes plutôt que des listes de sécurité, car ils vous permettent de séparer l'architecture de sous-réseau du VCN des exigences de sécurité de votre application.

Points à considérer

Lors de l'uniformisation et de l'opérationnalisation d'Oracle HeatWave MySQL en tant que service de base de données en nuage de base, tenez compte de ces autres configurations de service en nuage pour plus de facilité d'utilisation et de flexibilité.

  • Connectivité réseau
    • Tenez compte de la limite ajustable des diverses limites de VCN lors de la conception de votre réseau en nuage, par exemple, une limite de 50 VCN par location OCI. Ces limites peuvent être modifiées en soumettant une demande de service au soutien OCI.
    • Oracle HeatWave MySQL nécessite un jeu minimal d'adresses IP privées à des fins de maintenance :
      • MySQL Autonome requiert trois adresses IP privées
      • MySQL La haute disponibilité nécessite sept adresses IP privées
    • Le service Oracle Cloud Infrastructure Bastion est limité à un maximum de trois heures d'utilisation. Par conséquent, si vous avez besoin d'un service d'hôte bastion hautement disponible pour vos applications ou à des fins de développement, il est préférable d'utiliser une instance dédiée du service Calcul pour Oracle Cloud Infrastructure comme hôte bastion pour vous connecter aux instances MySQL.
  • Opérabilité

    Assurez-vous que le tableau de bord OCI crée un tableau de bord personnalisé pour votre parc d'instances MySQL pour votre opération de service.

  • Disponibilité

    Si vous prévoyez de créer une réplique MySQL en tant que sauvegarde dans une autre région, vous devez tenir compte de la latence de réseau entre la région principale et la région de sauvegarde. OCI fournit des informations sur la latence de réseau inter-région pour vous aider à décider de la région à utiliser comme région de sauvegarde pour votre région principale. L'autre facteur de considération pour la réplique MySQL est la durée (binlog_expire_logs_seconds) de conservation des journaux de transactions binaires avant la suppression des journaux, la durée par défaut de conservation du journal de transactions binaires est de 3 600 secondes ou 60 minutes. Si vous rencontrez une latence de réseau sévère entre vos régions principale et de sauvegarde, vous pouvez augmenter ce paramètre afin que les journaux de transactions soient conservés plus longtemps afin qu'ils puissent être transmis et appliqués à la réplique MySQL dans la région de sauvegarde.

  • Portabilité et flexibilité
    • Utilisez le service de nom de domaine (DNS) OCI pour résoudre le nom d'hôte MySQL à des fins de portabilité. Affectez un nom d'hôte personnalisé en fonction de votre convention d'attribution de nom à l'instance MySQL lors de la création afin que le nom d'hôte puisse être résolu par le DNS OCI en tant que résolveur de VCN.
    • Utilisez le nom d'hôte DNS d'Oracle Cloud Infrastructure Load Balancing pour les instances de réplique de lecture MySQL gérées afin de réduire les modifications apportées à votre code d'application à des fins de flexibilité. Vous pouvez connaître le nom d'hôte DNS affecté à ce service Oracle Cloud Infrastructure Load Balancing dans la console du service DNS pour OCI.

Confirmation

Authors: Ryan Kuan

Contributors: John Sulyok