Créer et gérer Private Link pour Azure Database for MariaDB à l'aide de l'interface CLI
Important
Azure Database for MariaDB est en voie de mise hors service. Nous vous recommandons vivement d’effectuer une migration vers Azure Database pour MySQL. Pour plus d’informations sur la migration vers Azure Database pour MySQL, consultez l’article Qu’arrive-t-il à Azure Database pour MariaDB ?.
Private Endpoint est le composant fondamental de Private Link dans Azure. Il permet à des ressources Azure, comme des machines virtuelles, de communiquer en privé avec des ressources Private Link. Dans cet article, vous apprendrez à utiliser Azure CLI pour créer une machine virtuelle dans un réseau virtuel Azure et un serveur Azure Database for MariaDB avec un point de terminaison privé Azure.
Remarque
La fonctionnalité de lien privé est disponible uniquement pour les serveurs Azure Database for MariaDB dans les niveaux tarifaires Usage général ou Mémoire optimisée. Vérifiez que le serveur de base de données se trouve dans l’un de ces niveaux tarifaires.
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.
Prérequis
- Vous avez besoin d’un serveur Azure Database for MariaDB.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour connaître les autres options de connexion, consultez Se connecter avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
- Cet article nécessite la version 2.0.28 ou ultérieure d’Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.
Créer un groupe de ressources
Avant de pouvoir créer des ressources, vous devez créer un groupe de ressources qui hébergera le réseau virtuel. Créez un groupe de ressources avec la commande az group create. Cet exemple crée un groupe de ressources nommé myResourceGroup à l’emplacement westeurope :
az group create --name myResourceGroup --location westeurope
Création d'un réseau virtuel
Créez un réseau virtuel avec la commande az network vnet create. Cet exemple crée un réseau virtuel par défaut nommé myVirtualNetwork avec un sous-réseau nommé mySubnet :
az network vnet create \
--name myVirtualNetwork \
--resource-group myResourceGroup \
--subnet-name mySubnet
Désactiver les stratégies Private Endpoint du sous-réseau
Azure déploie des ressources sur un sous-réseau au sein d’un réseau virtuel. vous devez donc créer ou mettre à jour le sous-réseau pour désactiver les stratégies réseau de point de terminaison privé. Mettez à jour une configuration de sous-réseau nommée mySubnet avec az network vnet subnet update :
az network vnet subnet update \
--name mySubnet \
--resource-group myResourceGroup \
--vnet-name myVirtualNetwork \
--disable-private-endpoint-network-policies true
Création de la machine virtuelle
Créez une machine virtuelle avec az vm create. Lorsque vous y êtes invité, indiquez un mot de passe à utiliser comme informations d’identification pour vous connecter à la machine virtuelle. Cet exemple crée une machine virtuelle nommée myVm :
az vm create \
--resource-group myResourceGroup \
--name myVm \
--image Win2019Datacenter
Notez l’adresse IP publique de la machine virtuelle. Vous utiliserez cette adresse pour vous connecter à la machine virtuelle à partir d’Internet à l’étape suivante.
Créer un serveur Azure Database for MariaDB
Créez un serveur Azure Database for MariaDB avec la commande az mariadb server create. N’oubliez pas que le nom de votre serveur MariaDB doit être unique dans Azure. Par conséquent, remplacez la valeur d’espace réservé entre crochets par votre propre valeur unique :
# Create a server in the resource group
az mariadb server create \
--name mydemoserver \
--resource-group myResourcegroup \
--location westeurope \
--admin-user mylogin \
--admin-password <server_admin_password> \
--sku-name GP_Gen5_2
Remarque
Il peut arriver que l’instance Azure Database for MariaDB et le sous-réseau de réseau virtuel se trouvent dans des abonnements différents. Dans ce cas, vous devez vérifier les configurations suivantes :
- Assurez-vous que le fournisseur de ressources Microsoft.DBforMariaDB est inscrit pour les deux abonnements. Pour plus d’informations, reportez-vous à resource-manager-registration
Créer l’instance Private Endpoint
Créez un point de terminaison privé pour le serveur MariaDB dans votre réseau virtuel :
az network private-endpoint create \
--name myPrivateEndpoint \
--resource-group myResourceGroup \
--vnet-name myVirtualNetwork \
--subnet mySubnet \
--private-connection-resource-id $(az resource show -g myResourcegroup -n mydemoserver --resource-type "Microsoft.DBforMariaDB/servers" --query "id" -o tsv) \
--group-id mariadbServer \
--connection-name myConnection
Configurer la zone DNS privée
Créez une zone DNS privée pour le domaine du serveur MariaDB et créez un lien d’association avec le réseau virtuel.
az network private-dns zone create --resource-group myResourceGroup \
--name "privatelink.mariadb.database.azure.com"
az network private-dns link vnet create --resource-group myResourceGroup \
--zone-name "privatelink.mariadb.database.azure.com"\
--name MyDNSLink \
--virtual-network myVirtualNetwork \
--registration-enabled false
#Query for the network interface ID
networkInterfaceId=$(az network private-endpoint show --name myPrivateEndpoint --resource-group myResourceGroup --query 'networkInterfaces[0].id' -o tsv)
az resource show --ids $networkInterfaceId --api-version 2019-04-01 -o json
# Copy the content for privateIPAddress and FQDN matching the Azure database for MariaDB name
#Create DNS records
az network private-dns record-set a create --name mydemoserver --zone-name privatelink.mariadb.database.azure.com --resource-group myResourceGroup
az network private-dns record-set a add-record --record-set-name mydemoserver --zone-name privatelink.mariadb.database.azure.com --resource-group myResourceGroup -a <Private IP Address>
Remarque
Le FQDN dans le paramètre DNS du client n’est pas résolu en adresse IP privée configurée. Vous devez configurer une zone DNS pour le FQDN configuré, comme indiqué ici.
Se connecter à une machine virtuelle à partir d’Internet
Connectez-vous à la machine virtuelle myVm à partir d’Internet comme suit :
Dans la barre de recherche du portail, entrez myVm.
Sélectionnez le bouton Connexion. Après avoir sélectionné le bouton Connecter, Se connecter à la machine virtuelle s’ouvre.
Sélectionnez Télécharger le fichier RDP. Azure crée un fichier de protocole RDP (Remote Desktop Protocol) ( .rdp) et le télécharge sur votre ordinateur.
Ouvrez le fichier downloaded.rdp.
Si vous y êtes invité, sélectionnez Connexion.
Entrez le nom d’utilisateur et le mot de passe spécifiés lors de la création de la machine virtuelle.
Remarque
Vous devrez peut-être sélectionner Plus de choix>Utiliser un autre compte, pour spécifier les informations d’identification que vous avez entrées lorsque vous avez créé la machine virtuelle.
Cliquez sur OK.
Un avertissement de certificat peut s’afficher pendant le processus de connexion. Si vous recevez un avertissement de certificat, sélectionnez Oui ou Continuer.
Une fois que le bureau de la machine virtuelle s’affiche, réduisez-le pour revenir à votre poste de travail local.
Accéder au serveur MariaDB en privé à partir de la machine virtuelle
Dans le Bureau à distance de myVM, ouvrez PowerShell.
Entrez
nslookup mydemoserver.privatelink.mariadb.database.azure.com
.Vous recevez un message similaire à celui ci :
Server: UnKnown Address: 168.63.129.16 Non-authoritative answer: Name: mydemoserver.privatelink.mariadb.database.azure.com Address: 10.1.3.4
Testez la connexion de liaison privée pour le serveur MariaDB à l’aide de n’importe quel client disponible. Dans l’exemple ci-dessous, j’ai utilisé MySQL Workbench pour effectuer l’opération.
Dans Nouvelle connexion, entrez ou sélectionnez les informations suivantes :
Paramètre Valeur Nom de connexion Sélectionnez le nom de connexion de votre choix. Nom d’hôte Sélectionnez mydemoserver.privatelink.mariadb.database.azure.com Nom d’utilisateur Entrez le nom d’utilisateur au format username@servername qui est fourni lors de la création du serveur MariaDB. Mot de passe Entrez le mot de passe fourni lors de la création du serveur MariaDB. Sélectionnez Tester la connexion ou OK.
(Facultatif) Parcourez les bases de données à partir du menu de gauche et créez ou interrogez des informations à partir de la base de données MariaDB
Fermez la connexion Bureau à distance sur myVm.
Nettoyer les ressources
Quand vous n’en avez plus besoin, vous pouvez utiliser az group delete pour supprimer le groupe de ressources, ainsi que toutes les ressources qu’il contient :
az group delete --name myResourceGroup --yes
Étapes suivantes
En savoir plus sur Qu’est-ce qu’Azure Private Endpoint ?