Inicio rápido: Creación de un servidor de Azure Database for PostgreSQL mediante la CLI de Azure
En este inicio rápido se muestra cómo usar los comandos de la CLI de Azure en Azure Cloud Shell para crear un servidor de Azure Database for PostgreSQL único en cinco minutos. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
Requisitos previos
Use el entorno de Bash en Azure Cloud Shell.
Si lo prefiere, instale la CLI de Azure para ejecutar sus comandos de referencia.
Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.
Cuando se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.
Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.
En este artículo se necesita la versión 2.0 o posterior de la CLI de Azure. Si usa Azure Cloud Shell, ya está instalada la versión más reciente.
Sugerencia
Considere la posibilidad de usar el comando de la CLI de Azure az postgres up, que es más sencillo y actualmente está en versión preliminar. Pruebe el inicio rápido.
Seleccione el identificador de suscripción específico en su cuenta mediante el comando az account set.
Anote el valor de id de la salida de az login para usarlo como valor del argumento subscription del comando.
az account set --subscription <subscription id>Si tiene varias suscripciones, elija la suscripción adecuada en la que se debe facturar el recurso. Para obtener todas las suscripciones, use az account list.
Creación de un servidor de Azure Database for PostgreSQL
Cree un grupo de recursos de Azure mediante el comando az group create y, después, cree un servidor PostgreSQL en el grupo de recursos. Debe proporcionar un nombre único. En el ejemplo siguiente, se crea un grupo de recursos denominado myresourcegroup en la ubicación westus.
az group create --name myresourcegroup --location westus
Cree un servidor de Azure Database for PostgreSQL mediante el comando az postgres server create. Un servidor puede contener varias bases de datos.
az postgres server create --resource-group myresourcegroup --name mydemoserver --location westus --admin-user myadmin --admin-password <server_admin_password> --sku-name GP_Gen5_2
Estos son los detalles de los argumentos anteriores:
| Configuración | Valor de ejemplo | Descripción |
|---|---|---|
| name | mydemoserver | Nombre único que identifica al servidor de Azure Database for PostgreSQL. El nombre del servidor solo puede contener letras minúsculas, números y el carácter de guion (-). Debe contener entre 3 y 63 caracteres. Para más información, consulte las reglas de nomenclatura de Azure Database for PostgreSQL. |
| resource-group | myresourcegroup | Nombre del grupo de recursos de Azure. |
| ubicación | westus | Ubicación de Azure para el servidor. |
| admin-user | myadmin | Nombre del usuario del inicio de sesión de administrador. No pueden ser azure_superuser, admin, administrator, root, guest o public. |
| admin-password | contraseña segura | Contraseña del usuario administrador. Debe contener entre 8 y 128 caracteres de tres de las siguientes categorías: Letras del alfabeto inglés mayúsculas y minúsculas, números y caracteres no alfanuméricos. |
| sku-name | GP_Gen5_2 | Nombre del plan de tarifa y la configuración del proceso. Siga la convención {plan de tarifa} {generación de procesos} {núcleos virtuales} en forma abreviada. Para más información, consulte los precios de Azure Database for PostgreSQL. |
Importante
- La versión de PostgreSQL predeterminada en el servidor es la 9.6. Para ver todas versiones compatibles, consulte Versiones principales de PostgreSQL admitidas.
- Para ver todos los argumentos del comando az postgres server create, consulte este documento de referencia.
- En el servidor, el protocolo SSL está habilitado de manera predeterminada. Para más información sobre SSL, consulte Configuración de la conectividad de SSL.
Configuración de una regla de firewall de nivel de servidor
De forma predeterminada, no se puede acceder públicamente al servidor que ha creado y está protegido con reglas de firewall. Puede configurar la regla de firewall en el servidor mediante el comando az postgres server firewall-rule create para dar acceso al entorno local para conectarse al servidor.
En el ejemplo siguiente se crea una regla de firewall denominada AllowMyIP que permite las conexiones desde una dirección IP específica, 192.168.0.1. Reemplace la dirección IP o el intervalo de direcciones IP correspondientes al lugar desde el que se va a conectar. Si no conoce su dirección IP, vaya a WhatIsMyIPAddress.com para obtenerla.
az postgres server firewall-rule create --resource-group myresourcegroup --server mydemoserver --name AllowMyIP --start-ip-address 192.168.0.1 --end-ip-address 192.168.0.1
Nota
Para evitar problemas de conectividad, asegúrese de que el firewall de la red permite el puerto 5432. Los servidores de Azure Database for PostgreSQL usan ese puerto.
Obtención de la información de conexión
Para conectarse a su servidor, especifique las credenciales de acceso y la información del host.
az postgres server show --resource-group myresourcegroup --name mydemoserver
El resultado está en formato JSON. Tome nota de los valores de administratorLogin y fullyQualifiedDomainName.
{
"administratorLogin": "myadmin",
"earliestRestoreDate": null,
"fullyQualifiedDomainName": "mydemoserver.postgres.database.azure.com",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforPostgreSQL/servers/mydemoserver",
"location": "westus",
"name": "mydemoserver",
"resourceGroup": "myresourcegroup",
"sku": {
"capacity": 2,
"family": "Gen5",
"name": "GP_Gen5_2",
"size": null,
"tier": "GeneralPurpose"
},
"sslEnforcement": "Enabled",
"storageProfile": {
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled",
"storageMb": 5120
},
"tags": null,
"type": "Microsoft.DBforPostgreSQL/servers",
"userVisibleState": "Ready",
"version": "9.6"
}
Conexión al servidor de Azure Database for PostgreSQL mediante psql
El cliente de psql es una opción que se usa con frecuencia para conectarse a servidores PostgreSQL. Puede conectarse a un servidor mediante psql con Azure Cloud Shell. También puede usar psql en su entorno local, en caso de que esté disponible. Se crea automáticamente una base de datos vacía, postgres, con cada servidor PostgreSQL nuevo. Esa base de datos se puede usar para conectarse a psql, como se muestra en el código siguiente.
psql --host=mydemoserver.postgres.database.azure.com --port=5432 --username=myadmin@mydemoserver --dbname=postgres
Sugerencia
Si prefiere usar una ruta URL para conectarse a Postgres, codifique la URL con el signo @ en el nombre de usuario con %40. Por ejemplo, la cadena de conexión de psql sería:
psql postgresql://myadmin%40mydemoserver@mydemoserver.postgres.database.azure.com:5432/postgres
Limpieza de recursos
Si no necesita estos recursos para otro inicio rápido o tutorial, se pueden eliminar. Para ello, debe ejecutar el siguiente comando.
az group delete --name myresourcegroup
Si solo desea eliminar el servidor recién creado, puede ejecutar el comando az postgres server delete.
az postgres server delete --resource-group myresourcegroup --name mydemoserver
