Snabbstart: Använda en ARM-mall för att skapa en Azure Database for PostgreSQL – flexibel server

Flexibel server är en hanterad tjänst som du använder för att köra, hantera och skala hög tillgängliga PostgreSQL-databaser i molnet. Du kan använda en Azure Resource Manager mall (ARM-mall) för att etablera en Flexibel PostgreSQL-server för att distribuera flera servrar eller flera databaser på en server.

En ARM-mall är en JSON-fil (JavaScript Object Notation) som definierar infrastrukturen och konfigurationen för ditt projekt. Mallen använder deklarativ syntax. I deklarativ syntax beskriver du din avsedda distribution utan att skriva sekvensen med programmeringskommandon för att skapa den.

Azure Resource Manager är Azures tjänst för distribution och hantering. Den ger dig ett hanteringslager där du kan skapa, uppdatera och ta bort resurser i ditt Azure-konto. Du kan använda hanteringsfunktioner som åtkomstkontroll, lås och taggar till att skydda och organisera dina resurser efter distributionen. Mer information om Azure Resource Manager finns i Malldistribution översikt.

Förutsättningar

Ett Azure-konto med en aktiv prenumeration. Skapa ett utan kostnad.

Granska mallen

En Azure Database for PostgresSQL-server är den överordnade resursen för en eller flera databaser i en region. Den innehåller omfånget för hanteringsprinciper som gäller för dess databaser: inloggning, brandvägg, användare, roller och konfigurationer.

Skapa en postgres-flexible-server-template.json-fil och kopiera följande JSON-skript till den.

{
  "$schema": "http://schema.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
    "parameters": {
        "administratorLogin": {
            "defaultValue": "csadmin",
            "type": "String"
        },
        "administratorLoginPassword": {
            "type": "SecureString"
        },
        "location": {
            "defaultValue": "eastus",
            "type": "String"
        },
        "serverName": {
            "type": "String"
        },
        "serverEdition": {
            "defaultValue": "GeneralPurpose",
            "type": "String"
        },
        "skuSizeGB": {
            "defaultValue": 128,
            "type": "Int"
        },
        "dbInstanceType": {
            "defaultValue": "Standard_D4ds_v4",
            "type": "String"
        },
        "haEnabled": {
            "defaultValue": "Disabled",
            "type": "string"
        },
        "availabilityZone": {
            "defaultValue": "1",
            "type": "String"
        },
        "version": {
            "defaultValue": "12",
            "type": "String"
        },
        "tags": {
            "defaultValue": {},
            "type": "Object"
        },
        "firewallRules": {
            "defaultValue": {},
            "type": "Object"
        },
        "backupRetentionDays": {
            "defaultValue": 14,
            "type": "Int"
        },
        "geoRedundantBackup": {
            "defaultValue": "Disabled",
            "type": "String"
        },
        "virtualNetworkExternalId": {
            "defaultValue": "",
            "type": "String"
        },
        "subnetName": {
            "defaultValue": "",
            "type": "String"
        },
        "privateDnsZoneArmResourceId": {
            "defaultValue": "",
            "type": "String"
        },
    },
    "variables": {
        "api": "2021-06-01",
        "publicNetworkAccess": "[if(empty(parameters('virtualNetworkExternalId')), 'Enabled', 'Disabled')]"
    },
  "resources": [
    {
      "type": "Microsoft.DBforPostgreSQL/flexibleServers",
      "apiVersion": "[variables('api')]",
      "name": "[parameters('serverName')]",
      "location": "[parameters('location')]",
        "sku": {
            "name": "[parameters('dbInstanceType')]",
            "tier": "[parameters('serverEdition')]"
        },
      "tags": "[parameters('tags')]",
        "properties": {
            "version": "[parameters('version')]",
            "administratorLogin": "[parameters('administratorLogin')]",
            "administratorLoginPassword": "[parameters('administratorLoginPassword')]",
            "network": {
                "publicNetworkAccess": "[variables('publicNetworkAccess')]",
                "delegatedSubnetResourceId": "[if(empty(parameters('virtualNetworkExternalId')), json('null'), json(concat(parameters('virtualNetworkExternalId'), '/subnets/' , parameters('subnetName'))))]",
                "privateDnsZoneArmResourceId": "[if(empty(parameters('virtualNetworkExternalId')), json('null'), parameters('privateDnsZoneArmResourceId'))]"
            },
            "haEnabled": "[parameters('haEnabled')]",
            "storage": {
                "storageSizeGB": "[parameters('skuSizeGB')]"
            },
            "backup": {
                "backupRetentionDays": 7,
                "geoRedundantBackup": "Disabled"
            },
            "availabilityZone": "[parameters('availabilityZone')]"
        }
    }
  ]
}

Dessa resurser definieras i mallen:

  • Microsoft.DBforPostgreSQL/flexibleServers

Distribuera mallen

Välj Prova från följande PowerShell-kodblock för att öppna Azure Cloud Shell.

$serverName = Read-Host -Prompt "Enter a name for the new Azure Database for PostgreSQL server"
$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 server'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 "D:\Azure\Templates\EngineeringSite.json
    -serverName $serverName `
    -administratorLogin $adminUser `
    -administratorLoginPassword $adminPassword

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

Granska distribuerade resurser

Följ de här stegen för att kontrollera om servern har skapats i Azure.

  1. I listan Azure Portaldu efter och väljer Azure Database for PostgreSQL Flexibla servrar.
  2. I databaslistan väljer du den nya servern för att visa sidan Översikt för att hantera servern.

Rensa resurser

Behåll den här resursgruppen, servern och den enkla databasen om du vill gå till Nästa steg. Nästa steg visar hur du ansluter och kör frågor mot din databas med olika metoder.

Så här tar du bort resursgruppen:

I portalen väljerdu den resursgrupp som du vill ta bort.

  1. Välj Ta bort resursgrupp.
  2. Bekräfta borttagningen genom att skriva namnet på resursgruppen

Nästa steg