Szybki start: tworzenie usługi Azure Database for PostgreSQL — pojedynczy serwer przy użyciu szablonu usługi ARM
DOTYCZY: Azure Database for PostgreSQL — pojedynczy serwer
Ważne
Usługa Azure Database for PostgreSQL — pojedynczy serwer znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do usługi Azure Database for PostgreSQL — serwer elastyczny. Aby uzyskać więcej informacji na temat migracji do usługi Azure Database for PostgreSQL — serwer elastyczny, zobacz Co się dzieje z usługą Azure Database for PostgreSQL — pojedynczy serwer?.
Azure Database for PostgreSQL to usługa zarządzana, która służy do uruchamiania i skalowania w chmurze baz danych PostgreSQL o wysokiej dostępności, a także zarządzania nimi. W tym przewodniku Szybki start użyjesz szablonu usługi Azure Resource Manager (szablonu arm), aby utworzyć usługę Azure Database for PostgreSQL — pojedynczy serwer w witrynie Azure Portal, programie PowerShell lub interfejsie wiersza polecenia platformy Azure.
Szablon usługi Azure Resource Manager to plik JavaScript Object Notation (JSON), który definiuje infrastrukturę i konfigurację projektu. W szablonie używana jest składnia deklaratywna. Możesz opisać zamierzone wdrożenie bez konieczności pisania sekwencji poleceń programowania w celu utworzenia wdrożenia.
Jeśli Twoje środowisko spełnia wymagania wstępne i masz doświadczenie w korzystaniu z szablonów ARM, wybierz przycisk Wdróż na platformie Azure. Szablon zostanie otwarty w witrynie Azure Portal.
Wymagania wstępne
DOTYCZY: Azure Database for PostgreSQL — pojedynczy serwer
Ważne
Usługa Azure Database for PostgreSQL — pojedynczy serwer znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do usługi Azure Database for PostgreSQL — serwer elastyczny. Aby uzyskać więcej informacji na temat migracji do usługi Azure Database for PostgreSQL — serwer elastyczny, zobacz Co się dzieje z usługą Azure Database for PostgreSQL — pojedynczy serwer?.
Konto platformy Azure z aktywną subskrypcją. Utwórz je bezpłatnie.
Przegląd szablonu
Tworzysz serwer usługi Azure Database for PostgreSQL ze skonfigurowanym zestawem zasobów obliczeniowych i magazynu. Aby dowiedzieć się więcej, zobacz Warstwy cenowe w usłudze Azure Database for PostgreSQL — pojedynczy serwer. Serwer jest tworzony w ramach grupy zasobów Azure.
Szablon używany w tym przewodniku Szybki start jest jednym z szablonów szybkiego startu platformy 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')]"
}
}
}
Szablon definiuje pięć zasobów platformy Azure:
- Microsoft.Network/virtualNetworks
- Microsoft.Network/virtualNetworks/subnets
- Microsoft.DBforPostgreSQL/servers
- Microsoft.DBforPostgreSQL/servers/virtualNetworkRules
- Microsoft.DBforPostgreSQL/servers/firewallRules
Więcej przykładów szablonów usługi Azure Database for PostgreSQL można znaleźć w artykule Szablony szybkiego startu platformy Azure.
Wdrażanie szablonu
DOTYCZY: Azure Database for PostgreSQL — pojedynczy serwer
Ważne
Usługa Azure Database for PostgreSQL — pojedynczy serwer znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do usługi Azure Database for PostgreSQL — serwer elastyczny. Aby uzyskać więcej informacji na temat migracji do usługi Azure Database for PostgreSQL — serwer elastyczny, zobacz Co się dzieje z usługą Azure Database for PostgreSQL — pojedynczy serwer?.
Wybierz następujący link, aby wdrożyć szablon serwera usługi Azure Database for PostgreSQL w witrynie Azure Portal:
Na stronie Deploy Azure Database for PostgreSQL with VNet ( Wdrażanie usługi Azure Database for PostgreSQL przy użyciu sieci wirtualnej):
W obszarze Grupa zasobów wybierz pozycję Utwórz nową, wprowadź nazwę nowej grupy zasobów i wybierz przycisk OK.
Jeśli utworzono nową grupę zasobów, wybierz lokalizację dla grupy zasobów i nowy serwer.
Wprowadź nazwę serwera, identyfikator logowania administratora i hasło logowania administratora.
Zmień inne ustawienia domyślne, jeśli chcesz:
- Subskrypcja: subskrypcja platformy Azure, której chcesz użyć dla serwera.
- Pojemność jednostki SKU: pojemność rdzeni wirtualnych, która może wynosić 2 (wartość domyślna), 4, 8, 16, 32 lub 64.
- Nazwa jednostki SKU: prefiks warstwy SKU, rodzina jednostek SKU i pojemność jednostki SKU, przyłączony przez podkreślenia, takie jak B_Gen5_1, GP_Gen5_2 (wartość domyślna) lub MO_Gen5_32.
- Rozmiar jednostki SKU MB: rozmiar magazynu w megabajtach serwera usługi Azure Database for PostgreSQL (domyślnie 51200).
- Warstwa jednostki SKU: warstwa wdrożenia, taka jak Podstawowa, OgólnePurpose (wartość domyślna) lub MemoryOptimized.
- Rodzina jednostek SKU: Gen4 lub Gen5 (wartość domyślna), która wskazuje generowanie sprzętu na potrzeby wdrażania serwera.
- Wersja bazy danych PostgreSQL: wersja serwera PostgreSQL do wdrożenia, taka jak 9.5, 9.6, 10 lub 11 (wartość domyślna).
- Dni przechowywania kopii zapasowych: żądany okres przechowywania geograficznie nadmiarowych kopii zapasowych w dniach (domyślnie 7).
- Geograficznie nadmiarowa kopia zapasowa: włączona lub wyłączona (wartość domyślna) w zależności od wymagań dotyczących odzyskiwania po awarii geograficznej (Geo-DR).
- Nazwa sieci wirtualnej: nazwa sieci wirtualnej (domyślna azure_postgresql_vnet).
- Nazwa podsieci: nazwa podsieci (domyślna azure_postgresql_subnet).
- Nazwa reguły sieci wirtualnej: nazwa reguły sieci wirtualnej zezwalającej na podsieć (domyślna wartość AllowSubnet).
- Prefiks adresu sieci wirtualnej: prefiks adresu dla sieci wirtualnej (domyślnie 10.0.0.0/16).
- Prefiks podsieci: prefiks adresu dla podsieci (domyślnie 10.0.0.0/16).
Przeczytaj warunki i postanowienia, a następnie wybierz pozycję Zgadzam się na powyższe warunki i postanowienia.
Wybierz pozycję Kup.
Przeglądanie wdrożonych zasobów
DOTYCZY: Azure Database for PostgreSQL — pojedynczy serwer
Ważne
Usługa Azure Database for PostgreSQL — pojedynczy serwer znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do usługi Azure Database for PostgreSQL — serwer elastyczny. Aby uzyskać więcej informacji na temat migracji do usługi Azure Database for PostgreSQL — serwer elastyczny, zobacz Co się dzieje z usługą Azure Database for PostgreSQL — pojedynczy serwer?.
Wykonaj następujące kroki, aby zapoznać się z omówieniem nowego serwera usługi Azure Database for PostgreSQL:
W witrynie Azure Portal wyszukaj i wybierz pozycję Serwery usługi Azure Database for PostgreSQL.
Na liście baz danych wybierz nowy serwer. Zostanie wyświetlona strona Przegląd nowego serwera usługi Azure Database for PostgreSQL.
Eksportowanie szablonu usługi ARM z portalu
Szablon usługi ARM można wyeksportować z witryny Azure Portal. Istnieją dwa sposoby eksportowania szablonu:
- Eksportuj z grupy zasobów lub zasobu. Ta opcja generuje nowy szablon z istniejących zasobów. Wyeksportowany szablon to "migawka" bieżącego stanu grupy zasobów. Możesz wyeksportować całą grupę zasobów lub określone zasoby w ramach tej grupy zasobów.
- Eksportuj przed wdrożeniem lub z historii. Ta opcja pobiera dokładną kopię szablonu używanego do wdrożenia.
Podczas eksportowania szablonu w "properties":{ }
sekcji zasobu serwera PostgreSQL zauważysz, że administratorLogin
nie administratorLoginPassword
zostaną uwzględnione ze względów bezpieczeństwa. Przed wdrożeniem szablonu należy dodać te parametry lub szablon zakończy się niepowodzeniem.
"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')]",
Czyszczenie zasobów
Gdy grupa zasobów nie jest już potrzebna, usuń ją, co spowoduje usunięcie zasobów w grupie zasobów.
DOTYCZY: Azure Database for PostgreSQL — pojedynczy serwer
Ważne
Usługa Azure Database for PostgreSQL — pojedynczy serwer znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do usługi Azure Database for PostgreSQL — serwer elastyczny. Aby uzyskać więcej informacji na temat migracji do usługi Azure Database for PostgreSQL — serwer elastyczny, zobacz Co się dzieje z usługą Azure Database for PostgreSQL — pojedynczy serwer?.
W witrynie Azure Portal wyszukaj i wybierz pozycję Grupy zasobów.
Na liście grupy zasobów wybierz nazwę grupy zasobów.
Na stronie Przegląd grupy zasobów wybierz pozycję Usuń grupę zasobów.
W oknie dialogowym potwierdzenia wpisz nazwę grupy zasobów, a następnie wybierz pozycję Usuń.
Następne kroki
Aby zapoznać się z samouczkiem krok po kroku, który przeprowadzi Cię przez proces tworzenia szablonu, zobacz: