Partilhar via


Guia de início rápido: usar um modelo ARM para criar um Banco de Dados do Azure para PostgreSQL - instância do Servidor Flexível

APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Flexível

O servidor flexível do Banco de Dados do Azure para PostgreSQL é um serviço gerenciado que você usa para executar, gerenciar e dimensionar bancos de dados PostgreSQL altamente disponíveis na nuvem. Você pode usar um modelo do Azure Resource Manager (modelo ARM) para provisionar uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL para implantar vários servidores ou vários bancos de dados em um servidor.

Um modelo do Azure Resource Manager é um arquivo JSON (JavaScript Object Notation) que define a infraestrutura e a configuração do seu projeto. O modelo utiliza sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.

O Azure Resource Manager é o serviço de implementação e gestão do Azure. Fornece uma camada de gestão que lhe permite criar, atualizar e eliminar recursos na sua conta do Azure. Pode utilizar funcionalidades de gestão, como controlo de acesso, bloqueios e etiquetas, para proteger e organizar os seus recursos após a implementação. Para saber mais sobre os modelos do Azure Resource Manager, consulte Visão geral da implantação de modelos.

Pré-requisitos

Uma conta do Azure com uma subscrição ativa. Crie um gratuitamente.

Rever o modelo

Uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL é o recurso pai para um ou mais bancos de dados dentro de uma região. Ele fornece o escopo para políticas de gerenciamento que se aplicam a seus bancos de dados: login, firewall, usuários, funções e configurações.

Crie um arquivo postgres-flexible-server-template.json e copie o seguinte script JSON para ele.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "administratorLogin": {
      "type": "string"
    },
    "administratorLoginPassword": {
      "type": "secureString"
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    },
    "serverName": {
      "type": "string"
    },
    "serverEdition": {
      "type": "string",
      "defaultValue": "GeneralPurpose"
    },
    "skuSizeGB": {
      "type": "int",
      "defaultValue": 128
    },
    "dbInstanceType": {
      "type": "string",
      "defaultValue": "Standard_D4ds_v4"
    },
    "haMode": {
      "type": "string",
      "defaultValue": "ZoneRedundant"
    },
    "availabilityZone": {
      "type": "string",
      "defaultValue": "1"
    },
    "version": {
      "type": "string",
      "defaultValue": "16"
    },
    "virtualNetworkExternalId": {
      "type": "string",
      "defaultValue": ""
    },
    "subnetName": {
      "type": "string",
      "defaultValue": ""
    },
    "privateDnsZoneArmResourceId": {
      "type": "string",
      "defaultValue": ""
    }
  },
  "resources": [
    {
      "type": "Microsoft.DBforPostgreSQL/flexibleServers",
      "apiVersion": "2022-12-01",
      "name": "[parameters('serverName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('dbInstanceType')]",
        "tier": "[parameters('serverEdition')]"
      },
      "properties": {
        "version": "[parameters('version')]",
        "administratorLogin": "[parameters('administratorLogin')]",
        "administratorLoginPassword": "[parameters('administratorLoginPassword')]",
        "network": {
          "delegatedSubnetResourceId": "[if(empty(parameters('virtualNetworkExternalId')), json('null'), json(format('{0}/subnets/{1}', parameters('virtualNetworkExternalId'), parameters('subnetName'))))]",
          "privateDnsZoneArmResourceId": "[if(empty(parameters('virtualNetworkExternalId')), json('null'), parameters('privateDnsZoneArmResourceId'))]"
        },
        "highAvailability": {
          "mode": "[parameters('haMode')]"
        },
        "storage": {
          "storageSizeGB": "[parameters('skuSizeGB')]"
        },
        "backup": {
          "backupRetentionDays": 7,
          "geoRedundantBackup": "Disabled"
        },
        "availabilityZone": "[parameters('availabilityZone')]"
      }
    }
  ]
}

Esses recursos são definidos no modelo:

Implementar o modelo

Selecione Experimente no seguinte bloco de código do PowerShell para abrir o Azure Cloud Shell.

$serverName = Read-Host -Prompt "Enter a name for the new Azure Database for PostgreSQL flexible server instance"
$resourceGroupName = Read-Host -Prompt "Enter a name for the new resource group where the server will exist"
$location = Read-Host -Prompt "Enter an Azure region (for example, centralus) for the resource group"
$adminUser = Read-Host -Prompt "Enter the Azure Database for PostgreSQL flexible server instance's administrator account name"
$adminPassword = Read-Host -Prompt "Enter the administrator password" -AsSecureString

New-AzResourceGroup -Name $resourceGroupName -Location $location # Use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName `
    -TemplateFile "postgres-flexible-server-template.json" `
    -serverName $serverName `
    -administratorLogin $adminUser `
    -administratorLoginPassword $adminPassword

Read-Host -Prompt "Press [ENTER] to continue ..."

Rever os recursos implementados

Siga estas etapas para verificar se seu servidor foi criado no Azure.

APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Flexível

  1. No portal do Azure, procure e selecione Banco de Dados do Azure para Servidores Flexíveis PostgreSQL.
  2. Na lista de banco de dados, selecione seu novo servidor para exibir a página Visão geral para gerenciar o servidor.

Clean up resources (Limpar recursos)

Mantenha esse grupo de recursos, servidor e banco de dados único se quiser ir para as próximas etapas. As próximas etapas mostram como conectar e consultar seu banco de dados usando métodos diferentes.

Para eliminar o grupo de recursos:

APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Flexível

No portal, selecione o grupo de recursos que deseja excluir.

  1. Selecione Eliminar grupo de recursos.
  2. Para confirmar a exclusão, digite o nome do grupo de recursos.

Próximos passos