SQL Server dans les choix de base de données Azure et ce qu’ils offrent aux utilisateurs

Si vous envisagez de déplacer vos bases de données SQL Server sur site vers le cloud Microsoft Azure, vous devez décider laquelle des différentes options de cloud vous convient le mieux. Vous ne le réalisez peut-être pas au départ, mais il existe trois façons d’implémenter SQL Server dans Azure.

Vous pouvez exécuter vos charges de travail cloud SQL Server dans un déploiement IaaS ou une configuration PaaS hébergée. Avec le premier, vous installez et exécutez SQL Server sur une machine virtuelle (VM) Azure ; Avec ce dernier, vous migrez vos bases de données vers le service cloud Azure SQL Database de Microsoft. De plus, il existe la nouvelle plate-forme d’instance gérée Azure SQL Database, qui offre une sorte de compromis entre les approches IaaS et PaaS.

Examinons de plus près les trois options de déploiement de bases de données SQL Server dans Azure et leurs principales fonctionnalités, modèles de tarification et outils de migration de base de données.

SQL Server sur les machines virtuelles Azure

Le moyen le plus simple de déployer SQL Server dans Azure consiste à le placer sur une machine virtuelle Azure. Pour ce faire, vous devez avoir un compte Azure. L’étape consiste à créer et dimensionner une machine virtuelle Azure. Ensuite, vous devrez installer un système d’exploitation et SQL Server sur la machine virtuelle, puis migrer vos bases de données vers celle-ci.

Pour accélérer ce processus, Azure Marketplace dispose de plusieurs images de machine virtuelle avec SQL Server et Windows Server ou Linux préinstallés. Par exemple, l’image SQL Server 2017 basée sur Windows est mise en surbrillance dans l’écran du portail Azure illustré à la figure 1.

Image de machine virtuelle SQL Server 2017 sur Azure Marketplace
Figure 1. Installation d’une image de machine virtuelle SQL Server 2017 à partir d’Azure Marketplace

La sélection de cette option vous permet de créer rapidement une machine virtuelle SQL Server 2017 exécutée sur Windows Server 2016 sans avoir à installer manuellement le système d’exploitation ou le logiciel de base de données. Il existe également des images pour SQL Server 2017 sur Linux et la version préliminaire de SQL Server 2019, ainsi que des versions antérieures du système de gestion de base de données (SGBD).

Les machines virtuelles Azure offrent jusqu’à 99,95 % de disponibilité et vous avez un contrôle total sur la configuration de la machine virtuelle et l’instance SQL Server. Étant donné que vous déployez votre propre instance SQL Server, il existe une parité complète des fonctionnalités avec la version sur site de SQL Server – c’est essentiellement la même chose. Vous pouvez également déployer d’autres applications ou services sur l’hôte de machine virtuelle qui exécute SQL Server, et vous pouvez fournir vos propres adresses IP privées à la machine virtuelle à l’aide du réseau virtuel Azure. (réseau virtuel).

Bien que les systèmes SQL Server exécutés sur des machines virtuelles Azure offrent le même degré de contrôle que les systèmes sur site, ils ont également le même type d’exigences opérationnelles et de gestion. Vous n’avez pas à – et, en fait, vous ne pouvez pas – gérer le matériel sous-jacent, mais vous devez gérer les sauvegardes de base de données et les mises à jour logicielles.

Vous devez également implémenter les outils de haute disponibilité (HA) et de reprise après sinistre dont votre instance SQL Server a besoin, et vous êtes responsable de la reconfiguration des ressources système, comme le processeur et le stockage, dans une machine virtuelle Azure, ce qui entraînera un temps d’arrêt de la base de données. Vous pouvez gérer les machines virtuelles SQL Server dans Azure à l’aide de SQL Server Management Studio (SSMS), de l’outil Azure Data Studio plus léger, de SQL Server Data Tools (SSDT) ​​dans Visual Studio ou de l’éditeur de code Visual Studio avec l’extension mssql.

Les machines virtuelles Azure sont tarifées selon un modèle de paiement à l’utilisation qui facture à la seconde l’utilisation de la capacité de calcul ou une option d’instances de machine virtuelle réservées Azure qui permet aux utilisateurs d’acheter à l’avance une machine virtuelle pendant un an ou trois ans à un capacité réduite. Les machines virtuelles sont disponibles dans un certain nombre de catégories de dimensionnement conçues pour différents budgets et charges de travail.

La migration de SQL Server sur site vers des machines virtuelles Azure est relativement simple et peut être effectuée de différentes manières :

  • copie d’une sauvegarde de base de données sur une machine virtuelle Azure ;
  • en utilisant la fonction de sauvegarde vers une URL de Microsoft, dans laquelle une base de données est sauvegardée dans le stockage Azure Blob, puis restaurée sur une machine virtuelle ;
  • détacher les données et les fichiers journaux, les copier dans le stockage Azure Blob, puis les attacher à une machine virtuelle ;
  • convertir un système physique ou une machine virtuelle sur site en un disque dur virtuel Hyper-V, télécharger le VHD sur le stockage Azure Blob, puis le déployer sur une machine virtuelle Azure ;
  • utiliser un groupe de disponibilité Always On pour créer une base de données répliquée dans une machine virtuelle Azure ; et
  • exécutant Data Migration Assistant (DMA) pour migrer une base de données vers une machine virtuelle Azure.

Base de données SQL Azure

Azure SQL Database, l’option PaaS de Microsoft pour les utilisateurs de SQL Server dans le cloud, est plus précisément une offre de base de données en tant que service (DBaaS). Avec Azure SQL Database, vous n’avez pas à vous soucier de la configuration du système sous-jacent, de la création de machines virtuelles ou de l’installation d’un système d’exploitation et du logiciel de base de données lui-même. Au lieu de cela, Microsoft gère toute la gestion de la plate-forme et est responsable de la sécurité, de la disponibilité et des sauvegardes.

L’un des grands avantages de l’approche PaaS est que vous pouvez réaliser des économies sur les dépenses d’investissement et d’exploitation. Azure SQL Database prend également une grande partie du travail lourd d’une implémentation SQL Server dans Azure. Microsoft fournit une surveillance de la base de données et un réglage automatique des performances, et le service cloud effectue automatiquement des sauvegardes complètes, différentielles et des journaux de transactions dans les bases de données et prend en charge la récupération à un moment donné.

Azure SQL Database garantit une disponibilité de 99,99 % et utilise la dernière version stable du moteur de base de données SQL Server, bien que les paramètres de niveau de compatibilité par défaut de Microsoft puissent être utilisés pour aligner les bases de données existantes avec les anciennes versions du SGBD si vous le souhaitez.

Vous pouvez implémenter Azure SQL Database en tant que base de données unique ou pool élastique. Comme son nom l’indique, une base de données unique se compose d’une seule base de données avec son propre ensemble de ressources, similaire à l’utilisation d’une base de données autonome sur site. Un pool élastique est une collection de bases de données avec un ensemble partagé de ressources. Les pools élastiques sont conçus pour gérer plusieurs bases de données avec des niveaux d’utilisation qui varient de manière imprévisible. Ils garantissent que les bases de données obtiennent les ressources de traitement nécessaires lorsque la demande augmente.

Vous pouvez mettre à l’échelle des bases de données uniques et des pools élastiques sans interruption de service. Les deux vous permettent également de configurer jusqu’à quatre bases de données secondaires lisibles à utiliser comme groupe de basculement pour la haute disponibilité et l’équilibrage de charge. Comme dans SQL Server sur les machines virtuelles Azure, vous pouvez utiliser Azure VNet pour attribuer des adresses IP privées aux systèmes Azure SQL Database.

Pour le développement et la gestion de bases de données dans Azure SQL Database, vous pouvez utiliser le portail Azure en plus de SSMS, Azure Data Studio, SSDT et Visual Studio Code. L’écran du portail Azure pour la création d’une base de données est illustré à la figure 2.

Écran du portail Azure pour créer une base de données dans Azure SQL Database
Figure 2. Création d’une base de données dans le service cloud Azure SQL Database

Azure SQL Database présente un haut niveau de compatibilité avec SQL Server sur site. Cependant, un certain nombre de fonctionnalités sur site ne sont pas prises en charge dans le service cloud. Par exemple, vous ne pouvez pas attacher une base de données à une instance Azure SQL Database ou exécuter des commandes de sauvegarde manuelles. La capture de données modifiées, les extensions Common Language Runtime, la messagerie de base de données, les instantanés de base de données, les vues partitionnées distribuées, les serveurs liés et l’agent SQL Server sont quelques-unes des autres fonctionnalités qui ne sont pas prises en charge.

Microsoft propose deux modèles de tarification pour Azure SQL Database. Le modèle original est un modèle de paiement à l’utilisation basé sur les unités de transaction de base de données (DTU), une mesure d’utilisation des ressources créée par Microsoft. Le modèle basé sur DTU comprend trois niveaux de service pour prendre en charge les charges de travail de base de données légères à lourdes. Différentes tailles de système au sein de chaque niveau fournissent une combinaison préconfigurée de ressources de calcul et de stockage.

En 2018, Microsoft a ajouté un modèle de tarification basé sur vCore qui vous permet de choisir le nombre de cœurs de processeur virtuels et la quantité de stockage nécessaire pour exécuter vos charges de travail de base de données. Microsoft recommande désormais l’utilisation du modèle vCore, affirmant qu’il offre un moyen plus simple de traduire les exigences de charge de travail SQL Server sur site en Azure SQL Database. Dans le cadre de l’approche vCore, les clients disposant de licences SQL Server et de contrats de maintenance Software Assurance existants peuvent également utiliser la remise tarifaire Azure Hybrid Benefit pour réaliser des économies ; De plus, une option de capacité réservée permet aux entreprises de prépayer les vCores pendant un an ou trois ans à un taux inférieur.

Les options recommandées pour migrer des bases de données SQL Server locales vers Azure SQL Database sont plus limitées que celles pour migrer vers SQL Server sur une machine virtuelle Azure. Vous pouvez utiliser DMA, séparément ou dans le cadre d’Azure Database Migration Service, ou vous pouvez utiliser la réplication transactionnelle, dans laquelle Azure SQL Database est configuré pour agir en tant qu’abonné à une instance SQL Server locale qui publie en permanence les modifications apportées à la base de données. les tables.

Instance gérée Azure SQL Database

L’option de déploiement d’instance gérée Azure SQL Database est devenue disponible en 2018. Il s’agit d’une offre DBaaS entièrement gérée qui offre aux utilisateurs de SQL Server dans Azure tous les avantages PaaS d’Azure SQL Database. Cependant, il inclut également la plupart des fonctionnalités locales supplémentaires qui étaient auparavant disponibles pour les utilisateurs du cloud uniquement dans SQL Server sur les machines virtuelles Azure.

L’instance gérée Azure SQL Database offre une compatibilité proche de 100 % avec SQL Server sur site, selon Microsoft ; une instance gérée dans Azure est similaire à une instance locale. Il existe encore quelques différences de fonctionnalité, par exemple, dans les sauvegardes, la haute disponibilité et la sécurité. En outre, des outils tels que SQL Server Analysis Services, Integration Services et Reporting Services ne sont pas intégrés, bien que leurs fonctions puissent être fournies via d’autres services Azure.

Il existe deux niveaux de service différents pour l’instance gérée d’Azure SQL Database : un à usage général pour les applications avec des charges de travail typiques et un niveau Business Critical pour les charges de travail qui nécessitent des performances élevées et une faible latence d’E/S. Une instance gérée peut héberger jusqu’à 100 bases de données sur jusqu’à 8 To de stockage dans le niveau à usage général et 4 To dans le niveau Business Critical, selon le niveau de performances sélectionné et le nombre de vCores configurés dans un système. Comme les versions de base de données unique et de pool élastique d’Azure SQL Database, l’offre d’instance gérée offre une disponibilité de 99,99 % et prend en charge les adresses IP privées via Azure VNet.

L’objectif principal de l’instance gérée Azure SQL Database est de faciliter la migration de vos instances SQL Server vers Azure. Actuellement, cela pourrait être une option particulièrement attrayante pour les entreprises qui utilisent encore SQL Server 2008 et SQL Server 2008 R2. Microsoft a mis fin à la prise en charge de ces deux versions du SGBD le 9 juillet 2019 et la plupart des installations restantes s’exécutent sur des plates-formes matérielles vieillissantes. L’instance gérée Azure SQL Database prend en charge la migration à partir de SQL Server 2008 et 2008 R2, ainsi que des versions plus récentes de SQL Server, avec peu ou pas de modifications de la base de données.

Comme le montre la figure 3, vous pouvez créer une nouvelle instance gérée dans le portail Azure en sélectionnant Créer une ressourcealors Bases de donnéessuivie par Instance gérée Azure SQL.

Écran du portail Azure pour créer une instance managée Azure SQL Database
Figure 3. Création d’une instance gérée Azure SQL Database

L’instance gérée Azure SQL Database utilise un modèle de tarification basé sur vCore avec deux niveaux de calcul construits autour de différents processeurs, l’un prenant en charge huit à 24 vCores et les quatre autres à 80. Comme avec les autres options de déploiement Azure SQL Database, vous pouvez tirer parti de la Remise Azure Hybrid Benefit si vous disposez d’une Software Assurance avec des licences SQL Server existantes. Vous pouvez également payer à l’avance la capacité réservée à un taux réduit.

Microsoft prend en charge deux méthodes de migration des bases de données vers l’instance gérée Azure SQL Database pour les utilisateurs qui souhaitent exécuter SQL Server dans Azure. Vous pouvez restaurer une base de données à partir d’une sauvegarde SQL Server native que vous copiez sur le stockage Azure, ou vous pouvez utiliser Azur Service de migration de base de données avec DMA.

Leave a Comment