Déployer le fournisseur de ressources MySQL sur Azure Stack Hub
Important
À partir de la build Azure Stack Hub 2108, les fournisseurs de ressources SQL et MySQL sont proposés aux abonnements auxquels l’accès a été accordé. Si vous souhaitez commencer à utiliser cette fonctionnalité ou si vous devez effectuer une mise à niveau à partir d’une version précédente, ouvrez un cas de support. Nos ingénieurs du support vous guideront tout au long du processus de déploiement ou de mise à niveau.
Utilisez le fournisseur de ressources MySQL Server pour exposer des bases de données MySQL en tant que service Azure Stack Hub.
Le fournisseur de ressources MySQL s’exécute en tant que service sur une machine virtuelle Windows Server 2016 Server Core.
Le fournisseur de ressources MySQL s’exécute en tant que service sur un serveur Add-on RP Windows Server spécial.
Important
Seul le fournisseur de ressources doit créer des éléments sur les serveurs qui hébergent SQL ou MySQL. Les éléments créés sur un serveur hôte, et qui ne sont pas créés par le fournisseur de ressources, ne sont pas pris en charge. Ils peuvent entraîner un état incompatible.
Conditions préalables requises
Si vous avez déjà installé un fournisseur de ressources, vous avez probablement rempli les prérequis suivants et pouvez ignorer cette section. Sinon, faites ce qui suit avant de continuer :
Inscrivez votre instance Azure Stack Hub auprès d’Azure si ce n’est déjà fait. Cette étape est nécessaire, car vous allez vous connecter à la Place de marché et y télécharger des éléments à partir d’Azure.
Si vous ne connaissez pas la fonctionnalité Gestion de la Place de marché du portail administrateur Azure Stack Hub, consultez Télécharger des éléments de la Place de marché Azure et les publier sur Azure Stack Hub. Cet article vous guide tout au long du processus de téléchargement des éléments à partir d’Azure vers la Place de marché Azure Stack Hub. Il couvre les deux scénarios, connecté et déconnecté. Si votre instance Azure Stack Hub est déconnectée ou partiellement connectée, d’autres prérequis doivent être respectés en vue de l’installation.
Mettez à jour votre répertoire de base Microsoft Entra. À partir de la build 1910, une nouvelle application doit être inscrite dans votre abonné de répertoire de base. Cette application permet à Azure Stack Hub de créer et d’inscrire des fournisseurs de ressources plus récents (comme Event Hubs et d’autres) auprès de votre locataire Microsoft Entra. Il s’agit d’une action ponctuelle qui doit être effectuée après la mise à niveau vers la build 1910 ou une build plus récente. Si cette étape n’est pas effectuée, les installations du fournisseur de ressources échouent.
- Après avoir correctement mis à jour votre instance Azure Stack Hub vers la build 1910 (ou supérieure), suivez les instructions relatives au clonage/téléchargement du dépôt d’outils Azure Stack Hub.
- Suivez ensuite les instructions relatives à la mise à jour du répertoire de base d’Azure Stack Hub Microsoft Entra (après l’installation des mises à jour ou de nouveaux fournisseurs de ressources).
Prérequis pour le fournisseur de ressources MySQL Server
Vous avez besoin d’un ordinateur et d’un compte pouvant accéder :
- au portail administrateur Azure Stack Hub
- au point de terminaison privilégié (nécessaire uniquement pour le déploiement du fournisseur de ressources MySQL Server V1 ou la mise à niveau du fournisseur de ressources MySQL Server V1 vers le fournisseur de ressources MySQL Server V2)
- au point de terminaison d’administration Azure Resource Manager,
https://adminmanagement.region.<fqdn>
, où<fqdn>
représente votre nom de domaine complet - Internet, si votre azure Stack Hub a été déployé pour utiliser Microsoft Entra ID comme fournisseur d’identité.
Téléchargez la version prise en charge du fichier binaire du fournisseur de ressources MySQL en fonction du tableau de mappage de versions ci-dessous. Pour le fournisseur de ressources MySQL V2, téléchargez l’élément de la Place de Marché vers Azure Stack Hub.
Versions d’Azure Stack Hub prises en charge Version du fournisseur de ressources MySQL Windows Server sur lequel le service RP s’exécute 2206, 2301, 2306, 2311 MySQL RP version 2.0.13.x Microsoft AzureStack Add-on RP Windows Server 1.2009.0 2108, 2206 MySQL RP version 2.0.6.x Microsoft AzureStack Add-on RP Windows Server 1.2009.0 Veillez à ce que la machine virtuelle Windows Server requise soit téléchargée sur la Place de Marché Azure Stack Hub. Téléchargez manuellement l’image en fonction de la table de mappage de versions ci-dessus, si nécessaire.
Vérifiez que les prérequis relatifs à l’intégration du centre de données sont respectés :
Configuration requise Informations de référence La redirection DNS conditionnelle est correctement définie. Intégration au centre de données Azure Stack Hub - DNS Les ports d’entrée pour les fournisseurs de ressources sont ouverts. Intégration au centre de données Azure Stack Hub - Publier des points de terminaison Les objets du certificat PKI et SAN sont correctement définis. Prérequis PKI obligatoires pour le déploiement Azure Stack HubPrérequis de certificat PaaS pour le déploiement Azure Stack Hub Préparer le certificat. (Pour les installations de systèmes intégrés uniquement.)
- Vous devez fournir le certificat PKI SQL Paas décrit dans la section facultative consacrée aux certificats PaaS de Exigences relatives à l'infrastructure de clés publiques pour le déploiement d'Azure Stack Hub. L’autre nom de l’objet doit respecter le modèle de nommage suivant : CN=*.dbadapter.<région>.<fqdn>, avec protection par mot de passe.
- Quand vous déployez le fournisseur de ressources MySQL Server V1, placez le fichier .pfx à l’emplacement spécifié par le paramètre DependencyFilesLocalPath. Ne fournissez pas de certificat pour les systèmes ASDK.
- Quand vous déployez le fournisseur de ressources MySQL Server V2, préparez le certificat pour les étapes d’installation suivantes.
Scénario déconnecté
Quand vous déployez le fournisseur de ressources MySQL Server V2 dans un scénario déconnecté, suivez les instructions Télécharger des éléments de la Place de Marché vers Azure Stack Hub pour télécharger l’élément du fournisseur de ressources MySQL Server et l’élément Add-on RP Windows Server dans votre environnement Azure Stack Hub.
Quand vous déployez le fournisseur de ressources MySQL Server V1 dans un scénario déconnecté, effectuez les étapes suivantes pour télécharger les modules PowerShell requis et inscrire le référentiel manuellement.
Connectez-vous à un ordinateur disposant d'une connexion Internet et utilisez les scripts suivants pour télécharger les modules PowerShell.
Import-Module -Name PowerShellGet -ErrorAction Stop Import-Module -Name PackageManagement -ErrorAction Stop # path to save the packages, c:\temp\azs1.6.0 as an example here $Path = "c:\temp\azs1.6.0"
Selon la version du fournisseur de ressources que vous déployez, exécutez l’un des scripts.
# for resource provider version >= 1.1.93.0 Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.5.0 Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.8.2
# for resource provider version <= 1.1.47.0 Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.3.0 Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.6.0
Copiez ensuite les packages téléchargés sur un périphérique USB.
Connectez-vous à la station de travail déconnectée, puis copiez les packages du périphérique USB vers un emplacement sur la station de travail.
Enregistrez cet emplacement en tant que référentiel local.
# requires -Version 5 # requires -RunAsAdministrator # requires -Module PowerShellGet # requires -Module PackageManagement $SourceLocation = "C:\temp\azs1.6.0" $RepoName = "azs1.6.0" Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted New-Item -Path $env:ProgramFiles -name "SqlMySqlPsh" -ItemType "Directory"
Déployer le fournisseur de ressources MySQL V2
Si vous effectuez une mise à niveau à partir d’une version V1, reportez-vous au document Mettre à jour le fournisseur de ressources MySQL Server.
Démarrer l’installation
Si ce n'est déjà fait, connectez-vous au portail d'administration Azure Stack Hub, sélectionnez Gestion de la Place de marché sur la gauche, puis choisissez Fournisseurs de ressources.
Une fois que le fournisseur de ressources MySQL et les autres logiciels requis ont été téléchargés, la page Gestion de la Place de Marché affiche les packages « MySQL Server resource provider » avec l’état « Non installé ». Il peut y avoir d’autres packages qui affichent l’état « Téléchargé ».
Sélectionnez la ligne que vous souhaitez installer. Une bannière bleue apparaît en haut de la page des packages d’installation de fournisseur de ressources MySQL Server. Sélectionnez la bannière pour démarrer l’installation.
Prérequis à installer
Vous êtes ensuite dirigé vers la page d’installation. Sélectionnez Prérequis pour l’installation pour commencer le processus d’installation.
Attendez la fin de l’installation des prérequis. Vous devez voir une coche verte en regard de Prérequis pour l’installation avant de passer à l’étape suivante.
Préparer les secrets
Sous l’étape 2. Préparer les secrets, sélectionnez Ajouter un certificat et le panneau Ajouter un certificat s’affiche.
Sélectionnez le bouton Parcourir sur Ajouter un certificat, juste à droite du champ de nom de fichier du certificat. Sélectionnez le fichier de certificat .pfx que vous avez obtenu lors de la finalisation des prérequis.
Entrez le mot de passe que vous avez fourni pour créer une chaîne sécurisée pour le certificat SSL du fournisseur de ressources SQL Server. Sélectionnez ensuite Ajouter.
Configurer et installer le fournisseur de ressources
Lorsque l’installation du certificat aboutit, vous devez voir une coche verte en regard de Préparer les secrets avant de passer à l’étape suivante. À présent, sélectionnez le bouton Configurer + Installer en regard de 3 Installer le fournisseur de ressources.
Ensuite, vous devez fournir un URI d’objet blob Azure Stack Hub pour le connecteur MySQL.
Lisez la licence GPL du connecteur MySQL ici et téléchargez la version 8.0.21 dans un dossier local.
Créez un compte de stockage avec votre abonnement opérateur par défaut, puis créez un conteneur avec le niveau d’accès « Blob » ou « Conteneur ».
Chargez le fichier mysql-connector-net-8.0.21.msi à partir de votre dossier local vers le conteneur de stockage nouvellement créé.
Important
Vérifiez que la version du connecteur MySQL est 8.0.21.
Copiez l’URI d’objet blob.
Revenez à la page de configuration des fournisseurs de ressources MySQL. Collez l’URI d’objet blob (par exemple, https://<nomCompteDeStockage>.blob.<région>.<FQDN>/<nomConteneur>/mysql-connector-net-8.0.21.msi) dans la zone de texte, puis cliquez sur OK.
La page suivante s’affiche, indiquant que le fournisseur de ressources MySQL est en cours d’installation.
Attendez la notification de fin de l’installation. Ce processus prend généralement une ou plusieurs heures, en fonction de votre type Azure Stack Hub.
Vérifiez que l’installation du fournisseur de ressources MySQL Server a réussi en revenant à la page Gestion de la Place de Marché, Fournisseurs de ressources. L’état du fournisseur de ressources MySQL Server doit être « Installé ».
Déployer le fournisseur de ressources SQL V1
Une fois tous les prérequis respectés, exécutez l’auto-extracteur pour extraire le package d’installation téléchargé dans un répertoire temporaire. Exécutez le script DeployMySqlProvider.ps1 à partir d’un ordinateur ayant accès au point de terminaison d’administration Azure Resource Manager d’Azure Stack Hub ainsi qu’au point de terminaison privilégié pour déployer le fournisseur de ressources MySQL. Le script DeployMySqlProvider.ps1 est extrait des fichiers d’installation du fournisseur de ressources MySQL que vous avez téléchargé pour votre version d’Azure Stack Hub.
Important
Avant de déployer le fournisseur de ressources, passez en revue les notes de publication pour en savoir plus sur les nouvelles fonctionnalités, les correctifs et les problèmes connus qui pourraient affecter votre déploiement.
Pour déployer le fournisseur de ressources MySQL, ouvrez une nouvelle fenêtre PowerShell (pas PowerShell ISE) avec élévation de privilèges et basculez vers le répertoire où vous avez extrait les fichiers binaires du fournisseur de ressources MySQL.
Important
Nous vous recommandons fortement d’utiliser Clear-AzureRmContext -Scope CurrentUser et Clear-AzureRmContext -Scope Process pour effacer le cache avant d’exécuter le script de déploiement ou de mise à jour.
Notes
Si vous déployez le fournisseur de ressources MySQL Server V1 dans un environnement déconnecté, copiez le fichier mysql-connector-net-6.10.5.msi dans un chemin local. Fournissez le nom du chemin à l’aide du paramètre DependencyFilesLocalPath.
Exécutez le script DeployMySqlProvider.ps1, qui complète les tâches suivantes :
- Chargement des certificats et autres artefacts sur un compte de stockage d'Azure Stack Hub.
- Publication des packages de la galerie afin que vous puissiez déployer des bases de données MySQL par le biais de la galerie.
- Publication d’un package de galerie pour déployer des serveurs d’hébergement.
- Déploiement d’une machine virtuelle à l’aide de l’image Windows Server 2016 Core ou de l’image Microsoft AzureStack Add-on RP Windows Server que vous avez téléchargée, puis installation du fournisseur de ressources MySQL.
- Inscription d’un enregistrement DNS local mappé à la machine virtuelle de votre fournisseur de ressources.
- Inscription de votre fournisseur de ressources auprès de l’Azure Resource Manager local pour le compte d’opérateur.
Notes
Lorsque le déploiement du fournisseur de ressources MySQL démarre, le groupe de ressources system.local.sqladapter est créé. L’exécution des déploiements nécessaires sur ce groupe de ressources peut prendre jusqu’à 75 minutes. Vous ne devez pas placer d’autres ressources dans le groupe de ressources system.local.mysqladapter.
Paramètres de DeployMySqlProvider.ps1
Vous pouvez spécifier ces paramètres à partir de la ligne de commande. Si vous ne le faites pas, ou si la validation d’un paramètre échoue, vous êtes invité à fournir les paramètres requis.
Nom du paramètre | Description | Commentaire ou valeur par défaut |
---|---|---|
CloudAdminCredential | Informations d’identification de l’administrateur du cloud, nécessaires pour accéder au point de terminaison privilégié. | Obligatoire |
AzCredential | Informations d'identification du compte administrateur de service Azure Stack Hub. Utilisez les mêmes informations d'identification que celles utilisées pour le déploiement d'Azure Stack Hub. Le script échoue si le compte que vous utilisez avec AzCredential nécessite une authentification multifacteur (MFA). | Obligatoire |
VMLocalCredential | Les informations d’identification du compte d’administrateur local de la machine virtuelle du fournisseur de ressources MySQL. | Obligatoire |
PrivilegedEndpoint | Adresse IP ou nom DNS du point de terminaison privilégié. | Obligatoire |
AzureEnvironment | Environnement Azure du compte administrateur de service utilisé pour déployer Azure Stack Hub. Obligatoire uniquement pour les déploiements Microsoft Entra. Les noms d’environnement pris en charge sont AzureCloud, AzureUSGovernment ou, si vous utilisez un Microsoft Entra ID Chine, AzureChinaCloud. | AzureCloud |
DependencyFilesLocalPath | Pour les systèmes intégrés uniquement, votre fichier de certificat .pfx doit être placé dans ce répertoire. Pour les environnements déconnectés, téléchargez mysql-connector-net-6.10.5.msi dans ce répertoire. Vous pouvez éventuellement copier un package MSU Windows Update ici. | Facultatif (obligatoire pour les systèmes intégrés ou les environnements déconnectés) |
DefaultSSLCertificatePassword | Mot de passe pour le certificat .pfx. | Obligatoire |
MaxRetryCount | Nombre de fois où vous souhaitez réessayer chaque opération en cas d’échec. | 2 |
RetryDuration | Délai d’attente entre les tentatives, en secondes. | 120 |
Désinstaller | Supprime le fournisseur de ressources et toutes les ressources associées (voir les remarques ci-dessous). | Non |
DebugMode | Empêche le nettoyage automatique en cas d’échec. | Non |
AcceptLicense | Ignore l’invite à accepter la licence GPL. https://www.gnu.org/licenses/old-licenses/gpl-2.0.html |
Déployer le fournisseur de ressources MySQL à l’aide d’un script personnalisé
Si vous déployez le fournisseur de ressources MySQL version 1.1.33.0 ou antérieure, vous devez installer des versions spécifiques des modules Azure Stack Hub et AzureRm.Bootstrapper dans PowerShell.
Si vous déployez le fournisseur de ressources MySQL version 1.1.47.0 ou ultérieure, le script de déploiement télécharge et installe automatiquement les modules PowerShell nécessaires sous C:\Program Files\SqlMySqlPsh.
# Install the AzureRM.Bootstrapper module, set the profile and install the AzureStack module
# Note that this might not be the most currently available version of Azure Stack Hub PowerShell
Install-Module -Name AzureRm.BootStrapper -Force
Use-AzureRmProfile -Profile 2018-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.6.0
Remarque
Dans un scénario déconnecté, vous devez télécharger les modules PowerShell requis et inscrire manuellement le référentiel en tant que condition préalable.
Pour éliminer toute configuration manuelle lors du déploiement du fournisseur de ressources, vous pouvez personnaliser le script suivant. Modifiez les informations de compte et les mots de passe par défaut en fonction des besoins de votre déploiement Azure Stack Hub.
# Use the NetBIOS name for the Azure Stack Hub domain. On the Azure Stack Hub SDK, the default is AzureStack but could have been changed at install time.
$domain = "AzureStack"
# For integrated systems, use the IP address of one of the ERCS VMs.
$privilegedEndpoint = "AzS-ERCS01"
# Provide the Azure environment used for deploying Azure Stack Hub. Required only for Azure AD deployments. Supported environment names are AzureCloud, AzureUSGovernment, or AzureChinaCloud.
$AzureEnvironment = "<EnvironmentName>"
# Point to the directory where the resource provider installation files were extracted.
$tempDir = 'C:\TEMP\MYSQLRP'
# The service admin account (can be Azure Active Directory or Active Directory Federation Services).
$serviceAdmin = "admin@mydomain.onmicrosoft.com"
$AdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$AdminCreds = New-Object System.Management.Automation.PSCredential ($serviceAdmin, $AdminPass)
# Set the credentials for the new resource provider VM local admin account
$vmLocalAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential ("mysqlrpadmin", $vmLocalAdminPass)
# And the cloudadmin credential required for privileged endpoint access.
$CloudAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$CloudAdminCreds = New-Object System.Management.Automation.PSCredential ("$domain\cloudadmin", $CloudAdminPass)
# Change the following as appropriate.
$PfxPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
# For version 1.1.47.0 or later, the PowerShell modules used by the RP deployment are placed in C:\Program Files\SqlMySqlPsh,
# The deployment script adds this path to the system $env:PSModulePath to ensure correct modules are used.
$rpModulePath = Join-Path -Path $env:ProgramFiles -ChildPath 'SqlMySqlPsh'
$env:PSModulePath = $env:PSModulePath + ";" + $rpModulePath
# Change to the directory folder where you extracted the installation files. Don't provide a certificate on ASDK!
. $tempDir\DeployMySQLProvider.ps1 `
-AzCredential $AdminCreds `
-VMLocalCredential $vmLocalAdminCreds `
-CloudAdminCredential $cloudAdminCreds `
-PrivilegedEndpoint $privilegedEndpoint `
-AzureEnvironment $AzureEnvironment `
-DefaultSSLCertificatePassword $PfxPass `
-DependencyFilesLocalPath $tempDir\cert `
-AcceptLicense
Au terme du script d'installation du fournisseur de ressources, actualisez votre navigateur pour vous assurer que vous pouvez voir les dernières mises à jour, puis fermez la session PowerShell en cours.
Vérifier le déploiement V1 à l’aide du portail Azure Stack Hub
- Connectez-vous au portail d’administration en tant qu’administrateur de service.
- Sélectionnez Groupes de ressources.
- Sélectionnez le groupe de ressources system.<location>.mysqladapter.
- La page de la vue d’ensemble du groupe de ressources ne doit pas indiquer que des déploiements ont échoué.
- Enfin, sélectionnez Machines virtuelles dans le portail d’administration pour vérifier que la machine virtuelle du fournisseur de ressources MySQL a été correctement créée et est en cours d’exécution.
Configuration importante pour Microsoft Entra ID
Si votre Azure Stack Hub utilise Microsoft Entra ID comme fournisseur d’identité, assurez-vous que la machine virtuelle qui a installé le fournisseur de ressources MySQL Server dispose d’une connectivité Internet sortante.
Si vous avez besoin de l’IP de la machine virtuelle sur laquelle est installé le fournisseur de ressources MySQL Server (par exemple, pour l’ajouter à la liste d’autorisation de votre pare-feu), vous devez ouvrir un cas de support et demander à l’ingénieur du support de rendre l’abonnement du fournisseur de ressources MySQL Server temporairement visible. Vous pouvez ensuite localiser la machine virtuelle dans l’abonnement et obtenir son IP.