Sdílet prostřednictvím


Rychlý start: Vytvoření jednoúčelového serveru Azure Database for PostgreSQL pomocí šablony ARM

PLATÍ PRO: Azure Database for PostgreSQL – Jednoúčelový server

Důležité

Jednoúčelový server Azure Database for PostgreSQL je na cestě vyřazení. Důrazně doporučujeme upgradovat na flexibilní server Azure Database for PostgreSQL. Další informace o migraci na flexibilní server Azure Database for PostgreSQL najdete v tématu Co se děje s jednoúčelovým serverem Azure Database for PostgreSQL?

Azure Database for PostgreSQL je spravovaná služba, pomocí které spouštíte, spravujete a škálujete vysoce dostupné databáze PostgreSQL v cloudu. V tomto rychlém startu použijete šablonu Azure Resource Manageru (šablonu ARM) k vytvoření jednoúčelového serveru Azure Database for PostgreSQL na webu Azure Portal, PowerShellu nebo Azure CLI.

Šablona Azure Resource Manageru je soubor JSON (JavaScript Object Notation), který definuje infrastrukturu a konfiguraci projektu. Tato šablona používá deklarativní syntaxi. Popíšete zamýšlené nasazení, aniž byste museli psát posloupnost programovacích příkazů pro vytvoření nasazení.

Pokud vaše prostředí splňuje požadavky a jste obeznámeni s používáním šablon ARM, vyberte tlačítko Nasazení do Azure. Šablona se otevře v prostředí Azure Portal.

Tlačítko pro nasazení šablony Resource Manageru do Azure

Požadavky

PLATÍ PRO: Azure Database for PostgreSQL – Jednoúčelový server

Důležité

Jednoúčelový server Azure Database for PostgreSQL je na cestě vyřazení. Důrazně doporučujeme upgradovat na flexibilní server Azure Database for PostgreSQL. Další informace o migraci na flexibilní server Azure Database for PostgreSQL najdete v tématu Co se děje s jednoúčelovým serverem Azure Database for PostgreSQL?

Účet Azure s aktivním předplatným. Vytvořte si ho zdarma.

Kontrola šablony

Vytvoříte server Azure Database for PostgreSQL s nakonfigurovanou sadou výpočetních prostředků a prostředků úložiště. Další informace najdete v tématu Cenové úrovně na jednoúčelovém serveru Azure Database for PostgreSQL. Server vytvoříte v rámci skupiny prostředků Azure.

Šablona použitá v tomto rychlém startu je jednou z šablon pro rychlý start Azure.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.26.54.24096",
      "templateHash": "16694921643873529380"
    }
  },
  "parameters": {
    "serverName": {
      "type": "string",
      "metadata": {
        "description": "Server Name for Azure Database for PostgreSQL"
      }
    },
    "administratorLogin": {
      "type": "string",
      "minLength": 1,
      "metadata": {
        "description": "Database administrator login name"
      }
    },
    "administratorLoginPassword": {
      "type": "securestring",
      "minLength": 8,
      "metadata": {
        "description": "Database administrator password"
      }
    },
    "skuCapacity": {
      "type": "int",
      "defaultValue": 2,
      "metadata": {
        "description": "Azure Database for PostgreSQL compute capacity in vCores (2,4,8,16,32)"
      }
    },
    "skuName": {
      "type": "string",
      "defaultValue": "GP_Gen5_2",
      "metadata": {
        "description": "Azure Database for PostgreSQL sku name "
      }
    },
    "skuSizeMB": {
      "type": "int",
      "defaultValue": 51200,
      "metadata": {
        "description": "Azure Database for PostgreSQL Sku Size "
      }
    },
    "skuTier": {
      "type": "string",
      "defaultValue": "GeneralPurpose",
      "allowedValues": [
        "Basic",
        "GeneralPurpose",
        "MemoryOptimized"
      ],
      "metadata": {
        "description": "Azure Database for PostgreSQL pricing tier"
      }
    },
    "skuFamily": {
      "type": "string",
      "defaultValue": "Gen5",
      "metadata": {
        "description": "Azure Database for PostgreSQL sku family"
      }
    },
    "postgresqlVersion": {
      "type": "string",
      "defaultValue": "11",
      "allowedValues": [
        "9.5",
        "9.6",
        "10",
        "10.0",
        "10.2",
        "11"
      ],
      "metadata": {
        "description": "PostgreSQL version"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Location for all resources."
      }
    },
    "backupRetentionDays": {
      "type": "int",
      "defaultValue": 7,
      "metadata": {
        "description": "PostgreSQL Server backup retention days"
      }
    },
    "geoRedundantBackup": {
      "type": "string",
      "defaultValue": "Disabled",
      "metadata": {
        "description": "Geo-Redundant Backup setting"
      }
    },
    "virtualNetworkName": {
      "type": "string",
      "defaultValue": "azure_postgresql_vnet",
      "metadata": {
        "description": "Virtual Network Name"
      }
    },
    "subnetName": {
      "type": "string",
      "defaultValue": "azure_postgresql_subnet",
      "metadata": {
        "description": "Subnet Name"
      }
    },
    "virtualNetworkRuleName": {
      "type": "string",
      "defaultValue": "AllowSubnet",
      "metadata": {
        "description": "Virtual Network RuleName"
      }
    },
    "vnetAddressPrefix": {
      "type": "string",
      "defaultValue": "10.0.0.0/16",
      "metadata": {
        "description": "Virtual Network Address Prefix"
      }
    },
    "subnetPrefix": {
      "type": "string",
      "defaultValue": "10.0.0.0/16",
      "metadata": {
        "description": "Subnet Address Prefix"
      }
    }
  },
  "variables": {
    "firewallrules": [
      {
        "Name": "rule1",
        "StartIpAddress": "0.0.0.0",
        "EndIpAddress": "255.255.255.255"
      },
      {
        "Name": "rule2",
        "StartIpAddress": "0.0.0.0",
        "EndIpAddress": "255.255.255.255"
      }
    ]
  },
  "resources": [
    {
      "type": "Microsoft.DBforPostgreSQL/servers/virtualNetworkRules",
      "apiVersion": "2017-12-01",
      "name": "[format('{0}/{1}', parameters('serverName'), parameters('virtualNetworkRuleName'))]",
      "properties": {
        "virtualNetworkSubnetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('virtualNetworkName'), parameters('subnetName'))]",
        "ignoreMissingVnetServiceEndpoint": true
      },
      "dependsOn": [
        "[resourceId('Microsoft.DBforPostgreSQL/servers', parameters('serverName'))]",
        "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('virtualNetworkName'), parameters('subnetName'))]"
      ]
    },
    {
      "type": "Microsoft.Network/virtualNetworks",
      "apiVersion": "2023-09-01",
      "name": "[parameters('virtualNetworkName')]",
      "location": "[parameters('location')]",
      "properties": {
        "addressSpace": {
          "addressPrefixes": [
            "[parameters('vnetAddressPrefix')]"
          ]
        }
      }
    },
    {
      "type": "Microsoft.Network/virtualNetworks/subnets",
      "apiVersion": "2023-09-01",
      "name": "[format('{0}/{1}', parameters('virtualNetworkName'), parameters('subnetName'))]",
      "properties": {
        "addressPrefix": "[parameters('subnetPrefix')]"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworkName'))]"
      ]
    },
    {
      "type": "Microsoft.DBforPostgreSQL/servers",
      "apiVersion": "2017-12-01",
      "name": "[parameters('serverName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('skuName')]",
        "tier": "[parameters('skuTier')]",
        "capacity": "[parameters('skuCapacity')]",
        "size": "[format('{0}', parameters('skuSizeMB'))]",
        "family": "[parameters('skuFamily')]"
      },
      "properties": {
        "createMode": "Default",
        "version": "[parameters('postgresqlVersion')]",
        "administratorLogin": "[parameters('administratorLogin')]",
        "administratorLoginPassword": "[parameters('administratorLoginPassword')]",
        "storageProfile": {
          "storageMB": "[parameters('skuSizeMB')]",
          "backupRetentionDays": "[parameters('backupRetentionDays')]",
          "geoRedundantBackup": "[parameters('geoRedundantBackup')]"
        },
        "sslEnforcement": "Enabled",
        "minimalTlsVersion": "TLS1_2"
      }
    },
    {
      "copy": {
        "name": "firewallRules",
        "count": "[length(variables('firewallrules'))]",
        "mode": "serial",
        "batchSize": 1
      },
      "type": "Microsoft.DBforPostgreSQL/servers/firewallRules",
      "apiVersion": "2017-12-01",
      "name": "[format('{0}/{1}', parameters('serverName'), variables('firewallrules')[copyIndex()].Name)]",
      "properties": {
        "startIpAddress": "[variables('firewallrules')[copyIndex()].StartIpAddress]",
        "endIpAddress": "[variables('firewallrules')[copyIndex()].EndIpAddress]"
      },
      "dependsOn": [
        "[resourceId('Microsoft.DBforPostgreSQL/servers', parameters('serverName'))]"
      ]
    }
  ],
  "outputs": {
    "name": {
      "type": "string",
      "value": "[parameters('serverName')]"
    },
    "resourceId": {
      "type": "string",
      "value": "[resourceId('Microsoft.DBforPostgreSQL/servers', parameters('serverName'))]"
    },
    "resourceGroupName": {
      "type": "string",
      "value": "[resourceGroup().name]"
    },
    "location": {
      "type": "string",
      "value": "[parameters('location')]"
    }
  }
}

Šablona definuje pět prostředků Azure:

Další ukázky šablon Azure Database for PostgreSQL najdete v šablonách rychlého startu Azure.

Nasazení šablony

PLATÍ PRO: Azure Database for PostgreSQL – Jednoúčelový server

Důležité

Jednoúčelový server Azure Database for PostgreSQL je na cestě vyřazení. Důrazně doporučujeme upgradovat na flexibilní server Azure Database for PostgreSQL. Další informace o migraci na flexibilní server Azure Database for PostgreSQL najdete v tématu Co se děje s jednoúčelovým serverem Azure Database for PostgreSQL?

Výběrem následujícího odkazu nasaďte šablonu serveru Azure Database for PostgreSQL na webu Azure Portal:

Tlačítko pro nasazení šablony Resource Manageru do Azure

Na stránce Nasazení služby Azure Database for PostgreSQL s virtuální sítí:

  1. V části Skupina prostředků vyberte Vytvořit nový, zadejte název nové skupiny prostředků a vyberte OK.

  2. Pokud jste vytvořili novou skupinu prostředků, vyberte umístění pro skupinu prostředků a nový server.

  3. Zadejte název serveru, přihlašovací jméno správce a přihlašovací heslo správce.

    Nasazení služby Azure Database for PostgreSQL s oknem virtuální sítě, šablonou Azure pro rychlý start, webem Azure Portal

  4. Pokud chcete, změňte další výchozí nastavení:

    • Předplatné: Předplatné Azure, které chcete použít pro server.
    • Kapacita skladové položky: kapacita virtuálních jader, která může být 2 (výchozí), 4, 8, 16, 32 nebo 64.
    • Název skladové položky: předpona úrovně skladové položky, řada skladových položek a kapacita skladové položky, spojené podtržítky, jako jsou B_Gen5_1, GP_Gen5_2 (výchozí) nebo MO_Gen5_32.
    • Velikost skladové položky MB: velikost úložiště v megabajtech serveru Azure Database for PostgreSQL (výchozí 51200).
    • Úroveň skladové položky: úroveň nasazení, například Basic, GeneralPurpose (výchozí) nebo MemoryOptimized.
    • Řada skladových položek: Gen4 nebo Gen5 (výchozí hodnota), která označuje generaci hardwaru pro nasazení serveru.
    • Verze PostgreSQL: verze serveru PostgreSQL pro nasazení, například 9.5, 9.6, 10 nebo 11 (výchozí).
    • Dny uchovávání záloh: požadované období pro geograficky redundantní uchovávání záloh ve dnech (výchozí 7).
    • Geograficky redundantní zálohování: Povolené nebo zakázané (výchozí) v závislosti na požadavcích na geografické zotavení po havárii (Geo-DR).
    • Název virtuální sítě: název virtuální sítě (výchozí azure_postgresql_vnet).
    • Název podsítě: název podsítě (výchozí azure_postgresql_subnet).
    • Název pravidla virtuální sítě: název pravidla virtuální sítě, které povoluje podsíť (výchozí AllowSubnet).
    • Předpona adresy virtuální sítě: předpona adresy pro virtuální síť (výchozí hodnota 10.0.0.0/16).
    • Předpona podsítě: předpona adresy pro podsíť (výchozí 10.0.0.0/16).
  5. Přečtěte si podmínky a ujednání a pak vyberte Souhlasím s podmínkami a ujednáními uvedenými výše.

  6. Vyberte Koupit.

Kontrola nasazených prostředků

PLATÍ PRO: Azure Database for PostgreSQL – Jednoúčelový server

Důležité

Jednoúčelový server Azure Database for PostgreSQL je na cestě vyřazení. Důrazně doporučujeme upgradovat na flexibilní server Azure Database for PostgreSQL. Další informace o migraci na flexibilní server Azure Database for PostgreSQL najdete v tématu Co se děje s jednoúčelovým serverem Azure Database for PostgreSQL?

Pokud chcete zobrazit přehled nového serveru Azure Database for PostgreSQL, postupujte takto:

  1. Na webu Azure Portal vyhledejte a vyberte servery Azure Database for PostgreSQL.

  2. V seznamu databází vyberte nový server. Zobrazí se stránka Přehled vašeho nového serveru Azure Database for PostgreSQL.

Export šablony ARM z portálu

Šablonu ARM můžete exportovat z webu Azure Portal. Existují dva způsoby, jak exportovat šablonu:

Při exportu šablony si v "properties":{ } části prostředku serveru PostgreSQL všimnete, že administratorLogin z bezpečnostních důvodů nebude zahrnuta.administratorLoginPassword Před nasazením šablony je nutné přidat tyto parametry do šablony, jinak se šablona nezdaří.

"resources": [
    {
      "type": "Microsoft.DBforPostgreSQL/servers",
      "apiVersion": "2017-12-01",
      "name": "[parameters('servers_name')]",
      "location": "southcentralus",
      "sku": {
                "name": "B_Gen5_1",
                "tier": "Basic",
                "family": "Gen5",
                "capacity": 1
            },
      "properties": {
        "administratorLogin": "[parameters('administratorLogin')]",
        "administratorLoginPassword": "[parameters('administratorLoginPassword')]",

Vyčištění prostředků

Pokud už není potřeba, odstraňte skupinu prostředků, která odstraní prostředky ve skupině prostředků.

PLATÍ PRO: Azure Database for PostgreSQL – Jednoúčelový server

Důležité

Jednoúčelový server Azure Database for PostgreSQL je na cestě vyřazení. Důrazně doporučujeme upgradovat na flexibilní server Azure Database for PostgreSQL. Další informace o migraci na flexibilní server Azure Database for PostgreSQL najdete v tématu Co se děje s jednoúčelovým serverem Azure Database for PostgreSQL?

  1. Na webu Azure Portal vyhledejte a vyberte skupiny prostředků.

  2. V seznamu skupin prostředků zvolte název vaší skupiny prostředků.

  3. Na stránce Přehled skupiny prostředků vyberte Odstranit skupinu prostředků.

  4. V potvrzovací dialogovém okně zadejte název skupiny prostředků a pak vyberte Odstranit.

Další kroky

Podrobný kurz, který vás provede procesem vytvoření šablony, najdete tady: