Enable Flexible Server during Azure environment creation

During environment registration in CDP, the Flexible Server in public service mode is used by default, but you can specify to use the Flexible Server in private service mode (“Private Flexible Server”).

When CDP is deployed in “private service” mode (without public endpoints), during environment creation you can provide:

  • An ID of the delegated subnet

  • A private DNS zone ID (optional parameter).

The virtual network link does not need to be specified as input. If you do not provide these, CDP creates them for you.

The steps below show you how to enable “Private Flexible Server”. If you would like to enable Flexible Server instances with public access, you do not need to do anything special, as this option is used by default.


See Azure prerequisites for Flexible Server.


  1. In the Management Console > Environments, click on Register environment and start registering an Azure environment as usual.

  2. In the Network and Availability section, enable the Private Flexible Server by selecting “Private Flexible Server” from the dropdown. The “Flexible Server” option is pre-selected by default. The other two options are “Private Flexible Server” and “Single Server”.

  3. Select a delegated subnet for the Private Flexible Server.

  4. Select a Private DNS Zone for the Private Flexible Server. If you do not select one, it will be created automatically.

  5. Finish registering your Azure environment in CDP.
  1. Register an Azure environment using the cdp create-azure-environment CDP CLI command including --existing-network-params with a reference to the Private DNS Zone ID and --flexible-server-subnet-ids with a reference to the delegated subnet ID. The virtual network link does not need to be specified as input.

    For example:
    cdp environments create-azure-environment 
      --environment-name <env-name> 
      --existing-network-params networkId=dp-rg-test-vnet,resourceGroupName=dp-rg,subnetIds=/subscriptions/3ddda1c7-d1f5-4e7b-ac81-0523f483b3b3/resourceGroups/dp-rg/providers/Microsoft.Network/virtualNetworks/dp-rg-vnet/subnets/a,/subscriptions/3ddda1c7-d1f5-4e7b-ac81-0523f483b3b3/resourceGroups/dp-rg/providers/Microsoft.Network/virtualNetworks/dp-rg-vnet/subnets/2,default,databasePrivateDnsZoneId=<dns-zone-id>
      –-flexible-server-subnet-ids <delegated-subnet-id>
    The following table explains the required parameters:
    Parameter name Description Possible values
    existing-network-params.databasePrivateDnsZoneId (string) The ID of an existing private DNS zone used for the database. Full resource reference
    flexible-server-subnet-ids (array)

    Comma separated list of the subnet names or full resource IDs delegated for flexible server.

    This can be specified in two formats:




    The parameter takes a list of subnet IDs (or creates the IDs in case subnet names are provided), validates if they are indeed delegated, and takes the subnet with the largest CIDR range.

    List of full resource reference(s).

    Although this parameter accepts a comma-separated list of subnets, the subnet with the largest CIDR range is always used. Therefore, you should provide only one subnet.

  2. Set IDBroker mappings as usual using the cdp environments set-id-broker-mappings command.
  3. Create a Data Lake as usual using the cdp create-azure-datalake CDP CLI command, including a reference to the database HA type and the database PostgreSQL engine version.