Choisir la bonne architecture MySQL sur OCI
Alors que les entreprises qui s'appuient sur des bases de données open source, telles qu'Oracle HeatWave MySQL, migrent de solutions sur site autogérées vers des services de base de données cloud gérés (tels que 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 la bonne architecture MySQL 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 workloads sur OCI, vous réduisez non seulement le coût opérationnel actuel de vos bases de données autogérées, mais vous pouvez également vous concentrer sur les travaux à forte valeur ajoutée et d'innovation. Pour tirer le meilleur parti de l'exécution de vos workloads sur Oracle HeatWave MySQL et OCI, vous devez comprendre Oracle HeatWave MySQL et OCI pour concevoir une architecture cloud flexible et évolutive qui vous permettrait de développer et d'étendre votre utilisation du cloud en fonction des besoins et des exigences de votre entreprise.
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 en matière de workloads.
La portée de cette architecture de référence suppose les exigences et spécifications non fonctionnelles suivantes :
Domaines | Conditions requises | Descriptions |
---|---|---|
Disponibilité | R1 | L'architecture doit être hautement disponible pour prendre en charge les opérations 24/7 avec une disponibilité de service d'au moins 99,95 %. |
R2 |
|
|
Evolutivité | R3 | L'architecture doit être flexible et évolutive pour prendre en charge les charges de travail |
Sécurité (Security) | R4 | L'architecture doit être hautement sécurisée avec des mécanismes de contrôle d'accès et d'autorisation |
En fonction de ces exigences, le modèle de haute disponibilité Oracle HeatWave MySQL est sélectionné avec d'autres services OCI pour créer l'architecture de vos workloads.
Cette architecture de référence est illustrée dans trois points de vue différents pour répondre aux préoccupations des architectes d'infrastructure, des architectes d'information, des ingénieurs DevOps et des ingénieurs d'exploitation.
Vue d'infrastructure
mysql-oci-architecture-infrastructure-oracle.zip
Dans cette vue d'architecture, un réseau cloud virtuel régional est provisionné avec des sous-réseaux publics et privés dans une région OCI unique comprenant trois domaines de disponibilité. Le modèle de haute disponibilité Oracle HeatWave MySQL déploiera trois instances de base de données MySQL redondantes dans les trois domaines de disponibilité d'une région OCI à plusieurs domaines de disponibilité ou trois domaines de pannes dans une région OCI à un seul domaine de disponibilité.
Cette vue architecturale illustre les options de déploiement d'application 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é permettant d'accéder à Oracle HeatWave MySQL :
- Via Internet à l'aide d'Oracle Cloud Infrastructure Load Balancing.
- Via un VPN entre vos centres de données et vos régions OCI à l'aide de la passerelle de routage dynamique OCI :
- VPN site à site OCI
- Oracle Cloud Infrastructure FastConnect
- En règle générale, il existe trois modèles de déploiement d'application pour accéder à Oracle HeatWave MySQL dans OCI :
- Applications déployées vers des instances Oracle Cloud Infrastructure Compute ou Oracle Cloud Infrastructure Kubernetes Engine (le modèle le plus préféré avec l'application et MySQL Database colocalisés dans la même région cloud OCI).
- Applications hébergées dans votre centre de données.
- Applications hébergées dans un cloud non OCI (par exemple, Amazon Web Services, Microsoft Azure, etc.).
Vue Infrastructure (évolutivité/redondance)
mysql-oci-architecture-évolutivité-oracle.zip
Dans cette vue d'architecture, la région OCI principale avec le modèle de haute disponibilité Oracle HeatWave MySQL est interconnectée avec une autre région OCI via OCI Dynamic Routing Gateway. Cette vue architecturale illustre l'évolutivité MySQL au sein de 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 redimensionnées facilement en déployant les instances de réplique de lecture gérée dans la même région OCI pour redimensionner vos transactions de lecture (reportez-vous à Explorer davantage).
- Les instances MySQL principales peuvent être répliquées vers une réplique MySQL déployée dans une autre région OCI afin de fournir une redondance pour vos charges globales (reportez-vous à Explorer davantage).
Vue d'accès à la base de données
Cette vue d'architecture présente les options des outils permettant d'utiliser Oracle HeatWave MySQL pour les administrateurs et les développeurs de base de données :
- Les outils OCI tels qu'OCI Database Tools (SQL Worksheet) 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.
- Oracle Cloud Infrastructure Bastion peut être utilisé pour connecter vos outils à Oracle HeatWave MySQL via Internet.
- Le service Oracle Cloud Infrastructure Bastion peut être utilisé pour connecter vos outils à Oracle MySQL Database Service via Internet.
- Visual Studio Code avec la version d'aperçu du module d'extension de shell 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 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 afin de déclencher des alarmes pour la prise en charge des opérations.
- Surveillance basée sur les événements à l'aide des é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 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 pays, voire continents).
- Domaines 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é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 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é.
- Equilibreur de charge
Le service Oracle Cloud Infrastructure Load Balancing fournit une répartition de trafic automatique à partir d'un seul point d'entrée vers plusieurs serveurs dans le back-end.
- 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.
- Compute
Avec Oracle Cloud Infrastructure Compute, vous pouvez provisionner et gérer des hôtes de calcul dans le cloud. Vous pouvez lancer des instances de calcul avec des formes qui répondent à vos besoins en ressources pour l'UC, la mémoire, la bande passante réseau et le 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.
- Evénements
Les services Oracle Cloud Infrastructure émettent des événements, qui sont des messages structurés décrivant les modifications apportées dans les ressources. Les événements sont émis pour les opérations de création, de lecture, de mise à jour ou de suppression (CRUD), les modifications d'état de cycle de vie des ressources et les événements système qui affectent les ressources cloud.
- Notifications
Le service Oracle Cloud Infrastructure Notifications diffuse des messages vers des composants distribués via un modèle publication-abonnement qui délivre des messages sécurisés, durables, extrêmement fiables et à faible latence pour les applications hébergées sur Oracle Cloud Infrastructure.
- 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.
- FastConnect
Oracle Cloud Infrastructure FastConnect permet de créer facilement une connexion privée dédiée entre le centre de données et Oracle Cloud Infrastructure. FastConnect offre des options de bande passante plus élevée et une expérience de réseau plus fiable par rapport aux connexions Internet.
- MySQL HeatWave
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 natives du cloud sécurisées à l'aide de la base de données open source la plus populaire du monde. Oracle HeatWave MySQL est un nouvel accélérateur de requêtes en mémoire intégré et hautes performances pour Oracle MySQL Database Service qui accélère les performances de MySQL pour les analyses et les requêtes transactionnelles.
Recommandations
Utilisez les recommandations suivantes comme point de départ pour concevoir l'architecture OCI en fonction de vos exigences de charge globale.
- 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 à des sous-réseaux dans le VCN.
- Utilisez des blocs CIDR qui se trouvent dans l'espace d'adresse IP privée 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 les blocs CIDR qui ne chevauchent aucun autre réseau (dans OCI, 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é. Oracle MySQL Database Service réside 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 stratégies de sécurité définie par Oracle qui repose sur les meilleures pratiques. Par exemple, les ressources d'une zone de sécurité ne doivent pas être accessibles à partir du réseau Internet public et doivent être crypté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 par rapport aux stratégies de la recette de zone de sécurité et refuse les opérations qui violent les stratégies.
- Cloud Guard
- Cloner et personnaliser les recettes par défaut fournies par Oracle afin de créer des recettes de détecteur et de répondeur personnalisées. Ces recettes vous permettent de spécifier le type de violation de sécurité qui génère un avertissement et les actions autorisées à y être exécutées. Par exemple, vous pouvez détecter les buckets Oracle Cloud Infrastructure Object Storage avec une visibilité publique.
- Groupes de sécurité réseau
Vous pouvez utiliser des groupes de sécurité réseau pour définir un ensemble de règles entrantes et sortantes qui s'appliquent à des cartes d'interface réseau virtuelles spécifiques. Nous vous recommandons d'utiliser des groupes de sécurité réseau plutôt que des listes de sécurité, car ces derniers vous permettent de séparer l'architecture de sous-réseau du VCN des exigences de sécurité de votre application.
Points à prendre en compte
Lors de la standardisation et de l'opérationnalisation d'Oracle HeatWave MySQL en tant que service de base de données cloud principal, tenez compte de ces autres configurations de service cloud pour plus de facilité d'utilisation et de flexibilité.
- Connectivité réseau
- Tenez compte de la limite souple des différentes limites de VCN lors de la conception de votre réseau cloud, par exemple, 50 limites de VCN par location OCI. Vous pouvez modifier ces limites en soumettant une demande de service au support technique OCI.
- Oracle HeatWave MySQL requiert un ensemble minimal d'adresses IP privées à des fins de maintenance :
- MySQL Le mode autonome requiert trois adresses IP privées
- MySQL La haute disponibilité requiert sept adresses IP privées
- Le service Oracle Cloud Infrastructure Bastion est limité à une utilisation maximale de trois heures. Par conséquent, si vous avez besoin d'un service de bastion hautement disponible pour vos applications ou à des fins de développement, il est préférable d'utiliser une instance Oracle Cloud Infrastructure Compute dédiée en tant qu'hôte de bastion pour vous connecter aux instances MySQL.
- Exploitation
Veillez à créer un tableau de bord OCI 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 prendre en compte la latence réseau entre la région principale et la région de sauvegarde. OCI fournit des informations sur la latence réseau inter-région afin de vous aider à déterminer la région à utiliser comme région de sauvegarde pour votre région principale. L'autre facteur à prendre en compte 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 réseau grave 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 noms 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 de dénomination à 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 VCN.
- Utilisez le nom d'hôte DNS d'Oracle Cloud Infrastructure Load Balancing pour les instances de réplique en lecture MySQL gérées afin de minimiser les modifications apportées au code d'application à des fins de flexibilité. Vous pouvez trouver le nom d'hôte DNS affecté à Oracle Cloud Infrastructure Load Balancing dans la console de service DNS OCI.
En savoir plus
En savoir plus sur Oracle HeatWave MySQL.
Consultez les ressources supplémentaires suivantes :
- Cours de formation gratuits MySQL
- Migration d'AWS RDS vers MySQL HeatWave sur OCI
- Migrez de MySQL sur site vers MySQL HeatWave sur OCI
- Migrez d'AWS RedShift vers MySQL HeatWave sur OCI
- Structure des meilleures pratiques pour Oracle Cloud Infrastructure
- Répliques de lecture et équilibreur de charge
- Réplication sortante
- Limites de service
- Création d'un réseau cloud virtuel
- Latence inter-région