共用方式為


使用 Azure CLI 建立和管理適用於 適用於 PostgreSQL 的 Azure 資料庫 的虛擬網路 (VNET 整合) - 彈性伺服器

適用於: 適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器

適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器支援兩種類型的互斥網路連線方法,以連線到您的彈性伺服器。 這兩個選項是:

  • 公用存取(允許的IP位址)。 在預覽版中使用 Private Link 型網路搭配 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器,可以進一步保護該方法。
  • 私人存取 (VNET 整合)

在本文中,我們著重於使用 Azure CLI 建立具有私人存取權(VNet 整合)的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。 透過私人存取(VNET 整合),您可以將 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例部署到您自己的 Azure 虛擬網絡。 Azure 虛擬網路提供私人且安全的網路通訊。 在 [私人存取] 中,適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例的連線僅限於您的虛擬網路內。 若要深入瞭解,請參閱私人存取(VNet 整合)。

在 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器中,您只能在建立伺服器期間將伺服器部署到虛擬網路和子網。 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例部署到虛擬網路和子網之後,您無法將它移至另一個虛擬網路、子網或公用存取(允許的IP位址)。

啟動 Azure Cloud Shell

Azure Cloud Shell 是免費的互動式 Shell,可讓您用來執行本文中的步驟。 它具有預先安裝和設定的共用 Azure 工具,可與您的帳戶搭配使用。

若要開啟 Cloud Shell,只要選取程式碼區塊右上角的 [試試看] 即可。 您也可以移至 https://shell.azure.com/bash,在另一個瀏覽器索引標籤中開啟 Cloud Shell。 選取 [複製] 即可複製程式碼區塊,將它貼到 Cloud Shell 中,然後選取 Enter 鍵加以執行。

如果您偏好在本機安裝和使用 CLI,本快速入門需要有 Azure CLI 2.0 版或更新版本。 執行 az --version 以尋找版本。 如果您需要安裝或升級,請參閱安裝 Azure CLI

必要條件

您需要使用 az login 命令登入帳戶。 請注意 ID 屬性,其代表您 Azure 帳戶的訂閱識別碼

az login

使用 az account set 命令來選取您帳戶底下的特定訂用帳戶。 記下 az login 輸出中的 ID 值,作為命令中訂閱引數的值。 如果您有多個訂用帳戶,請選擇資源計費的適當訂用帳戶。 若要取得您的所有訂用帳戶,請使用 az account list

az account set --subscription <subscription id>

使用 Azure CLI 建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例

您可以使用 az postgres flexible-server 命令來建立具有私人存取權的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例(VNet 整合)。 此命令會使用私人存取 (VNet 整合) 作為預設連線方法。 如果未提供虛擬網路和子網,將會為您建立子網。 您也可以使用子網標識碼來提供已經存在的虛擬網路和子網。 有各種選項可使用 CLI 建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例,如下列範例所示。

重要

使用此命令會將子網委派給 Microsoft.DBforPostgreSQL/flexibleServers。 此委派表示只有 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例可以使用該子網。 委派的子網路中不可以有其他 Azure 資源類型。

如需可設定 CLI 參數的完整清單,請參閱 Azure CLI 參考檔 。 例如,在下列命令中,您可以選擇性地指定資源群組。

  • 使用預設虛擬網路、具有預設位址前綴的子網,建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例

    az postgres flexible-server create
    
  • 使用現有的虛擬網路和子網,建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。 如果提供的虛擬網路和子網不存在,則會建立具有預設位址前綴的虛擬網路和子網。

    az postgres flexible-server create --vnet myVnet --subnet mySubnet
    
  • 使用現有的虛擬網路、子網和使用子網標識符,建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。 提供的子網不應該部署任何其他資源,如果尚未委派,此子網將會委派給 Microsoft.DBforPostgreSQL/flexibleServers

    az postgres flexible-server create --subnet /subscriptions/{SubID}/resourceGroups/{ResourceGroup}/providers/Microsoft.Network/virtualNetworks/{VNetName}/subnets/{SubnetName}
    

    注意

    • 虛擬網路和子網路應位於適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體所在的相同區域和訂用帳戶中。
    • 虛擬網路不應在 VNET 或子網層級設定任何資源鎖定。 請務必先從 VNET 和所有子網移除任何鎖定(刪除只讀),再在虛擬網路中建立伺服器,並在伺服器建立之後將其設定回去。

    重要

    包括AzureFirewallSubnetAzureFirewallManagementSubnetAzureBastionSubnetGatewaySubnet 的名稱都是 Azure 內的保留名稱。 請勿使用這些作為子網名稱。

  • 使用具有非預設位址前綴的新虛擬網路、子網,建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。

    az postgres flexible-server create --vnet myVnet --address-prefixes 10.0.0.0/24 --subnet mySubnet --subnet-prefixes 10.0.0.0/24
    

請參閱 Azure CLI 參考文件,藉以取得可設定的 CLI 參數完整清單。

重要

如果您收到錯誤 The parameter PrivateDnsZoneArguments is required, and must be provided by customer,這表示您可能正在執行舊版的 Azure CLI。 請 升級 Azure CLI ,然後重試作業。

下一步