Cet article explique comment déployer une instance SQL Managed Instance avec Azure Arc dans une architecture hautement disponible sur deux sites. Il s’appuie sur l’implémentation ArcBox for DataOps d’Azure Arc Jumpstart.
Architecture
Téléchargez un fichier PowerPoint de cette architecture.
Workflow
Le workflow suivant correspond au diagramme précédent :
- Deux clusters Kubernetes avec Azure Arc sont déployés, un dans chacun des deux réseaux virtuels qui représentent deux sites différents.
- Un appairage de réseaux virtuels est établi entre les deux réseaux virtuels afin qu’ils puissent communiquer.
- Un contrôleur de domaine est déployé dans chaque site. La réplication Active Directory est configurée entre les deux.
- Un contrôleur de données Azure Arc est déployé dans chaque cluster Kubernetes.
- Une instance SQL Managed Instance avec Azure Arc est déployée dans le cluster principal, dans le niveau de service Critique pour l’entreprise.
- Une instance SQL Managed Instance avec Azure Arc est déployée dans le cluster secondaire, dans le niveau de service Critique pour l’entreprise. Elle est configurée comme une instance de récupération d’urgence.
- Si le site principal échoue, le système bascule vers l’instance SQL Managed Instance du site secondaire.
Composants
- Azure Arc : Azure Arc est un pont qui étend la plateforme Azure pour vous aider à créer des applications et des services.
- Kubernetes avec Azure Arc. Vous pouvez attacher et configurer des clusters Kubernetes à l’intérieur et à l’extérieur d’Azure en utilisant Kubernetes avec Azure Arc. Lorsqu’un cluster Kubernetes est attaché à Azure Arc, vous avez la possibilité d’y déployer des services de données Azure Arc, par exemple SQL Managed Instance avec Azure Arc.
- Contrôleur de données Azure Arc : le contrôleur de données Azure Arc est l’orchestrateur de l’architecture des services de données avec Azure Arc. Il gère des services tels que l’approvisionnement, l’élasticité, la récupération, la surveillance et la haute disponibilité.
- SQL Managed Instance avec Azure Arc : vous pouvez déployer SQL Managed Instance avec Azure Arc pour héberger vos charges de travail de données. Cette instance prend en charge les services de données PaaS Azure sur votre infrastructure hybride et multicloud.
- Contrôleurs de domaine : les contrôleurs de domaine sont déployés dans cette architecture pour gérer l’authentification et l’autorisation vis-à-vis des instances SQL Managed Instance avec Azure Arc.
Détails du scénario
Ce scénario s’appuie sur l’implémentation ArcBox for DataOps d’Azure Arc Jumpstart. ArcBox est une solution qui fournit un bac à sable facile à déployer pour Azure Arc. ArcBox for DataOps est une version d’ArcBox qui peut vous aider à découvrir les fonctionnalités de SQL Managed Instance avec Azure Arc dans un environnement de bac à sable.
Cas d’usage potentiels
Utilisations courantes de cette architecture :
- Déployez, sur un site, une instance SQL Managed Instance avec Azure Arc, hautement disponible et résiliente aux défaillances.
- Déployez une instance SQL Managed Instance avec Azure Arc sur un site principal et un site de récupération d’urgence pour récupérer après un temps d’arrêt complet du site.
- Déployez un backend de données résilient pour les applications stratégiques qui résident sur votre infrastructure hybride ou multicloud.
Recommandations
Les recommandations suivantes s’appliquent à la plupart des scénarios. Suivez ces recommandations, sauf si vous avez un besoin spécifique qui vous oblige à les ignorer.
Déploiement de SQL Managed Instance avec Azure Arc
Vous pouvez connecter n’importe quelle distribution Kubernetes validée à Azure Arc. Avant de connecter vos clusters, veillez à respecter les prérequis de Kubernetes avec Azure Arc.
Une fois vos clusters connectés, vous devez déployer un contrôleur de données Azure Arc. Commencez par vous conformer aux prérequis du contrôleur de données Azure Arc. Vous pourrez ensuite déployer SQL Managed Instance.
Il existe deux niveaux de service sur lesquels vous pouvez déployer SQL Managed Instance avec Azure Arc :
- Le niveau économique Usage général est conçu pour la plupart des charges de travail présentant des caractéristiques communes en matière de performances et de disponibilité.
- Le niveau Critique pour l’entreprise est conçu pour les charges de travail sensibles aux performances présentant des caractéristiques plus élevées en matière de disponibilité.
Pour une comparaison plus détaillée des niveaux, consultez Niveaux de service SQL Managed Instance avec Azure Arc.
Surveillance de SQL Managed Instance avec Azure Arc
Pour surveiller SQL Managed Instance avec Azure Arc, vous pouvez utiliser Log Analytics dans Azure Monitor, ou bien des solutions open source comme Grafana.
Concevez et planifiez votre déploiement d’espace de travail Log Analytics. Déployez-le dans le conteneur où les données sont collectées, agrégées et enfin analysées. Un espace de travail Log Analytics constitue un emplacement géographique des données, un moyen de les isoler et une étendue pour les configurations, par exemple la conservation des données. Utilisez un seul espace de travail Log Analytics conformément aux meilleures pratiques de gestion et de surveillance de Cloud Adoption Framework pour Azure.
Continuité d’activité et reprise d’activité
Déployez SQL Managed Instance avec Azure Arc dans le niveau de service Critique pour l’entreprise avec trois réplicas pour obtenir une perte de données proche de zéro.
Veillez à ce que vos instances SQL Managed Instance avec Arc portent des noms différents sur les sites principaux et secondaires, et que la valeur de nom partagé des sites soit identique.
Effectuez régulièrement des exercices de reprise d’activité afin de valider le processus de basculement.
Créez un processus pour lancer des basculements manuels et forcés.
Surveillez l’intégrité de vos clusters Kubernetes avec Azure Arc à l’aide des insights sur les conteneurs d’Azure Monitor.
Définissez l’enregistrement DNS du nom partagé du groupe de disponibilité distribué dans vos serveurs DNS afin d’éviter d’avoir à créer manuellement des enregistrements DNS pendant les basculements.
Pour plus d’informations sur les meilleures pratiques et des conseils, consultez Continuité d’activité et reprise d’activité pour SQL Managed Instance avec Azure Arc.
Considérations
Ces considérations implémentent les piliers d’Azure Well-Architected Framework, un ensemble de principes directeurs que vous pouvez utiliser pour améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.
Fiabilité
La fiabilité permet de s’assurer que votre application tient vos engagements auprès de vos clients. Pour plus d’informations, consultez liste de vérification de la révision de conception pour lede fiabilité.
- Définissez vos cibles d’objectif de point de récupération (RPO) et d’objectif de délai de récupération (RTO).
- Configurez la restauration à un instant dans le passé pour pouvoir restaurer vos bases de données à un instant précédent dans le temps.
- Déterminez le nombre de réplicas (entre un et trois) à déployer dans le niveau de service Critique pour l’entreprise.
- Déterminez le nombre de réplicas secondaires à déployer dans le niveau de service Critique pour l’entreprise. Lorsque vous déployez une instance dans un niveau de service Critique pour l’entreprise avec plusieurs réplicas, vous pouvez configurer les réplicas secondaires comme lisibles. Pour plus d’informations sur la modification du nombre, consultez Configurer des réplicas secondaires lisibles.
- Décidez de la façon dont vous souhaitez surveiller le temps d’arrêt de l’instance principale, pour déterminer quand effectuer un basculement vers l’instance secondaire.
- Veillez à ce que les instances SQL Managed Instance avec Azure Arc des sites géoprincipaux et géosecondaires soient identiques en termes de calcul et de capacité, et déployées dans le même niveau de service.
- Déterminez où stocker les certificats de mise en miroir lorsque vous créez la configuration de récupération d’urgence. Les deux clusters qui hébergent l’instance doivent pouvoir accéder à cet emplacement.
- Déterminez le type de service Kubernetes à utiliser :
LoadBalancer
ouNodePort
. Si vous choisissezLoadBalancer
, les applications peuvent se reconnecter au même point de terminaison principal, tandis que Kubernetes redirige la connexion vers le nouveau réplica principal. Si vous optez pourNodePort
, les applications doivent se reconnecter à la nouvelle adresse IP. - Examinez les directives relatives à la continuité d’activité et reprise d’activité pour déterminer si vos exigences sont satisfaites.
Sécurité
La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour plus d’informations, consultez liste de vérification de la révision de conception pour security.
- Déterminez dans quelles régions Azure votre instance SQL Managed Instance avec Azure Arc et vos contrôleurs de données seront déployés. Prenez en compte vos exigences de sécurité et de conformité ainsi que tous les critères de souveraineté des données. Prenez connaissance des types de données collectées à partir de vos ressources, en mode connecté directement et en mode connecté indirectement. Planifiez votre déploiement en conséquence, en tenant compte des exigences de résidence des données de votre organisation.
- Votre instance SQL Managed Instance avec Azure Arc peut résider sur des clusters Kubernetes hybrides ou multiclouds. Examinez les considérations relatives à la sécurité et à la gouvernance de votre fournisseur de cloud et de votre distribution Kubernetes.
- En tenant compte de la séparation des tâches et des exigences de droit d’accès minimal, définissez l’administration des clusters, les opérations, l’administration des bases de données et le rôle des développeurs de votre organisation. L’attribution d’actions et de responsabilités à chaque équipe détermine les rôles de contrôle d’accès en fonction du rôle (RBAC) Azure ou les objets Kubernetes
ClusterRoleBinding
etRoleBinding
, en fonction du mode de connectivité utilisé. - Déterminez le modèle d’authentification à utiliser dans votre instance managée SQL avec Azure Arc : authentification Microsoft Entra ou SQL. Examinez le domaine de conception relatif à la gestion des identités et des accès afin de connaître les points à prendre en compte et d’obtenir des recommandations pour le choix du modèle.
- Examinez les fonctionnalités de sécurité disponibles dans SQL Managed Instance avec Azure Arc pour vos charges de travail de données.
- Tenez compte de la nécessité de tenir à jour votre instance SQL Managed Instance avec Azure Arc des dernières versions, qu’elles soient déployées en mode connecté directement ou en mode connecté indirectement. Pour obtenir de l’aide, consultez le domaine de conception critique des disciplines de mise à niveau .
- Penchez-vous sur les éléments de conception à prendre en considération dans le domaine de conception des disciplines de gouvernance et de sécurité de Kubernetes avec Azure Arc.
- Pour une vue d’ensemble complète des fonctionnalités de sécurité de SQL Managed Instance avec Azure Arc, consultez les disciplines de sécurité et de gouvernance.
Optimisation des coûts
L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez liste de vérification de la révision de conception pour l’optimisation des coûts.
- Définissez vos exigences métier afin de déterminer le niveau de service le plus approprié. Pensez également à l’infrastructure supplémentaire nécessaire pour prendre en charge la continuité d’activité et reprise d’activité.
- N’oubliez pas que la façon dont les informations d’utilisation et de facturation sont envoyées à Azure varie selon que vous utilisez le mode connecté directement ou le mode connecté indirectement. Dans le mode connecté indirectement, tenez compte du fait que les informations d’utilisation et de facturation sont régulièrement transmises à Azure.
- En fonction de la durée pendant laquelle vous prévoyez d’utiliser SQL Managed Instance avec Azure Arc, déterminez si le plus rentable est le paiement à l’utilisation, une instance réservée d’un an ou une instance réservée de trois ans.
- N’oubliez pas qu’Azure Hybrid Benefit offre des économies sur les deux niveaux de service de SQL Managed Instance avec Azure Arc.
- Pour plus d’informations sur l’optimisation des coûts, consultez Gouvernance des coûts pour SQL Managed Instance avec Azure Arc.
- Utiliser la calculatrice de prix Azure pour estimer les coûts.
- Si vous déployez l’implémentation de référence Jumpstart ArcBox pour DataOps de cette architecture, gardez à l’esprit que les ressources ArcBox induisent des frais de consommation Azure à partir des ressources Azure sous-jacentes : calcul de base, stockage, mise en réseau et services auxiliaires.
Excellence opérationnelle
L’excellence opérationnelle couvre les processus d’exploitation qui déploient une application et la conservent en production. Pour plus d’informations, consultez liste de vérification de la révision de conception pour l’excellence opérationnelle.
- Pour connaître les meilleures pratiques à appliquer pour maintenir vos instances à jour, examinez le principe de conception de la possibilité de mise à niveau de l’accélérateur de zone d’atterrissage SQL Managed Instance avec Azure Arc.
- Pour plus d’informations sur les scénarios d’excellence opérationnelle de SQL Managed Instance avec Azure Arc, examinez les cas d’usage des opérations unifiées d’Azure Arc Jumpstart.
Efficacité des performances
L’efficacité des performances est la capacité de votre charge de travail à mettre à l’échelle pour répondre aux demandes qu’elle lui impose par les utilisateurs de manière efficace. Pour plus d’informations, consultez liste de vérification de la révision de conception pour l’efficacité des performances.
- Utilisez Azure Monitor pour collecter des métriques et des journaux de vos instances SQL Managed Instance avec Azure Arc pour une analyse et une corrélation détaillées. Examinez les options de déploiement.
- Vous pouvez également utiliser des outils open source comme Grafana et Kibana pour surveiller vos instances.
Déployer ce scénario
Vous trouverez l’implémentation de référence de cette architecture dans Jumpstart ArcBox for DataOps, qui fait partie du projet Azure Arc Jumpstart. ArcBox est conçu pour être autonome dans un seul abonnement Azure et un groupe de ressources. ArcBox peut vous aider à acquérir une expérience pratique d’Azure Arc.
Pour commencer, accédez à Jumpstart ArcBox for DataOps :
Contributeurs
Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.
Auteur principal :
- Seif Bassem | Architecte en chef de solutions cloud
Autre contributeur :
- Mick Alberts | Rédacteur technique
Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.
Étapes suivantes
- Documentation Azure Arc
- Vue d’ensemble de SQL Managed Instance avec Azure Arc
- Parcours d’apprentissage Azure Arc
- Scénarios d’Azure Arc Jumpstart
- Présentation de l’accélérateur de zone d’atterrissage Azure Arc dans une architecture hybride et multicloud