Démarrage rapide : Créer un serveur Azure Database pour PostgreSQL à l’aide de l’interface Azure CLI
S’APPLIQUE À : Azure Database pour PostgreSQL - Serveur unique
Important
Azure Database pour PostgreSQL - Serveur unique est en voie de mise hors service. Nous vous recommandons vivement de procéder à une mise à niveau vers un serveur flexible Azure Database pour PostgreSQL. Pour obtenir plus d’informations sur la migration vers Azure Database pour PostgreSQL – Serveur flexible, consultez Qu’en est-il du Serveur unique Azure Database pour PostgreSQL ?.
Ce guide de démarrage rapide montre comment utiliser les commandes Azure CLI dans Azure Cloud Shell afin de créer un serveur unique Azure Database pour PostgreSQL en cinq minutes.
Conseil
Pensez à utiliser la commande Azure CLI az postgres up, plus simple. Essayez le guide de démarrage rapide.
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.
Prérequis
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.
Lancement d’Azure Cloud Shell
Azure Cloud Shell est un interpréteur de commandes interactif et gratuit que vous pouvez utiliser pour exécuter les étapes de cet article. Il contient des outils Azure courants préinstallés et configurés pour être utilisés avec votre compte.
Pour ouvrir Cloud Shell, sélectionnez simplement Essayer en haut à droite d’un bloc de code. Vous pouvez aussi lancer Cloud Shell dans un onglet distinct du navigateur en accédant à https://shell.azure.com.
Quand Cloud Shell s’ouvre, vérifiez que Bash est sélectionné pour votre environnement. Les sessions ultérieures utiliseront Azure CLI dans un environnement Bash. Sélectionnez Copier pour copier les blocs de code, collez-les dans Cloud Shell, puis appuyez sur Entrée pour les exécuter.
Connexion à Azure
Cloud Shell est automatiquement authentifié sous le compte initial utilisé pour la connexion. Utilisez le script suivant pour vous connecter avec un autre abonnement, en remplaçant <Subscription ID>
par votre ID d’abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Pour plus d’informations, consultez Définir l’abonnement actif ou Se connecter de manière interactive
Définir les valeurs de paramètres
Les valeurs ci-dessous sont utilisées dans les commandes suivantes pour créer la base de données et les ressources requises. Les noms de serveur doivent être globalement uniques dans l’ensemble d’Azure, de sorte que la fonction $RANDOM est utilisée pour créer le nom du serveur.
Modifiez l’emplacement, le cas échéant, en fonction de votre environnement. Remplacez 0.0.0.0
par la plage d’adresses IP pour les faire correspondre à votre environnement spécifique. Utilisez l’adresse IP publique de l’ordinateur que vous utilisez pour limiter l’accès au serveur à votre adresse IP uniquement.
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="create-postgresql-server-and-firewall-rule"
server="msdocs-postgresql-server-$randomIdentifier"
sku="GP_Gen5_2"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
# Specify appropriate IP address values for your environment
# to limit / allow access to the PostgreSQL server
startIp=0.0.0.0
endIp=0.0.0.0
echo "Using resource group $resourceGroup with login: $login, password: $password..."
Créer un groupe de ressources
Créez un groupe de ressources avec la commande az group create. Un groupe de ressources Azure est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. L’exemple suivant crée un groupe de ressources nommé myResourceGroup à l’emplacement eastus :
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
Créer un serveur
Créez un serveur avec la commande az postgres server create.
# Create a PostgreSQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku
Notes
- Le nom de serveur ne peut contenir que des lettres minuscules, des chiffres et le caractère de trait d’union (-). Il doit contenir entre 3 et 63 caractères. Pour plus d’informations, consultez les règles de nommage d’Azure Database pour PostgreSQL.
- Le nom d’utilisateur de l’administrateur ne peut pas être azure_superuser, admin, administrator, root, guest ni public.
- Le mot de passe doit contenir entre 8 et 128 caractères appartenant à 3 des catégories suivantes : lettres majuscules, lettres minuscules, chiffres et caractères non alphanumériques.
- Pour plus d’informations sur les niveaux tarifaires, consultez Tarification d’Azure Database pour PostgreSQL.
Important
- La version PostgreSQL par défaut sur votre serveur est 9.6. Pour voir toutes les versions prises en charge, consultez Versions majeures de PostgreSQL prises en charge.
- Le protocole SSL est activé par défaut sur votre serveur. Pour plus d’informations sur le protocole SSL, consultez Configurer la connectivité SSL.
Configurer une règle de pare-feu basée sur le serveur
Créez une règle de pare-feu à l’aide de la commande az postgres server firewall-rule create afin d’accorder à votre environnement local un accès pour se connecter au serveur.
# Configure a firewall rule for the server
echo "Configuring a firewall rule for $server for the IP address range of $startIp to $endIp"
az postgres server firewall-rule create --resource-group $resourceGroup --server $server --name AllowIps --start-ip-address $startIp --end-ip-address $endIp
Conseil
Si vous ne connaissez pas votre adresse IP, accédez à WhatIsMyIPAddress.com pour l’obtenir.
Notes
Pour éviter les problèmes de connectivité, assurez-vous que le pare-feu de votre réseau autorise le port 5432. Les serveurs Azure Database pour PostgreSQL utilisent ce port.
Répertorier les règles de pare-feu basées sur un serveur
Pour répertorier les règles de pare-feu de serveur existant, exécutez la commande az postgres server firewall-rule list.
# List firewall rules for the server
echo "List of server-based firewall rules for $server"
az postgres server firewall-rule list --resource-group $resourceGroup --server-name $server
# You may use the switch `--output table` for a more readable table format as the output.
La sortie répertorie les règles de pare-feu éventuelles, par défaut au format JSON. Vous pouvez utiliser le commutateur --output table
pour obtenir une sortie dans un format de tableau plus lisible.
Obtenir les informations de connexion
Pour vous connecter à votre serveur, fournissez des informations sur l’hôte et des informations d’identification pour l’accès.
az postgres server show --resource-group $resourceGroup --name $server
Prenez note des valeurs administratorLogin et fullyQualifiedDomainName.
Se connecter au serveur Azure Database pour PostgreSQL à l’aide de psql
Le client psql est un choix répandu pour la connexion aux serveurs PostgreSQL. Vous pouvez vous connecter à votre serveur par l’intermédiaire de psql
avec Azure Cloud Shell. Vous pouvez également utiliser psql
sur votre environnement local s’il est disponible. Une base de données vide, postgres, est automatiquement créée avec un nouveau serveur PostgreSQL. Vous pouvez utiliser cette base de données pour vous connecter à psql
, comme illustré dans le code suivant.
psql --host=<server_name>.postgres.database.azure.com --port=5432 --username=<admin_user>@<server_name> --dbname=postgres
Conseil
Si vous préférez utiliser un chemin d’URL pour vous connecter à Postgres, encodez par URL le signe @ dans le nom d’utilisateur avec %40
. La chaîne de connexion pour psql serait, par exemple :
psql postgresql://<admin_user>%40<server_name>@<server_name>.postgres.database.azure.com:5432/postgres
Nettoyer les ressources
Utilisez la commande suivante pour supprimer le groupe de ressources et toutes les ressources associées à celui-ci à l’aide de la commande az group delete, sauf si vous avez toujours besoin de ces ressources. La création, ainsi que la suppression, de certaines de ces ressources peut prendre du temps.
az group delete --name $resourceGroup