This topic provides reference information about the Azure PostgreSQL service (csb-azure-postgresql). It details the plans, configuration parameters, and binding credentials.

Plans

The table below lists the plans available for the csb-azure-postgresql service:

Plan Version CPUs Memory Size Disk Size SKU
small 11 2 minimum 4 GB 5 GB GP_Gen5_2
medium 11 4 minimum 8 GB 10 GB GP_Gen5_4
large 11 8 minimum 16 GB 20 GB GP_Gen5_8

Plan Configuration Parameters

When configuring Cloud Service Broker for Azure you can add additional plans. For how to configure plans, see Configure Services with Cloud Service Broker for Azure.

The following table lists parameters which can only be configured for additional plans:

Parameter Name Values Default
name* The plan name n/a
id* A unique GUID n/a
description* Description of the new plan n/a
display_name Name to use when displaying plan in marketplace n/a

* Required

You can also add any of the configuration parameters listed in the parameters section to your plan. The following properties are useful to set in a plan: postgres_version, storage_gb, cores, sku.

Note: If you set a parameter at plan level, developers cannot change the value when creating or updating service instances.

Configuration Parameters

You can provision a service by running:

cf create-service csb-azure-postgresql PLAN-NAME SERVICE-INSTANCE-NAME -c '{"PARAMETER-NAME": "PARAMETER-VALUE"}'

You can update the plan or configuration parameters for a service instance by running:

cf update-service SERVICE-INSTANCE-NAME [-p NEW-PLAN] -c '{"PARAMETER-NAME": "PARAMETER-VALUE"}'

The table below lists the parameters that you can configure, using the -c flag, when provisioning a csb-azure-postgresql service:

Parameter Name Type Description Default Operation
instance_name string The name of the Azure instance to create. csb-mysql-INSTANCE-ID provision
location string The Azure region in which to deploy the service instance.

Note: Currently Azure SQL is not available in all regions. If you configure a region that is unavailable, Cloud Service Broker for Azure fails.

westus provision
resource_group string The Azure resource group in which to create the instance. rg-INSTANCE-NAME provision
azure_tenant_id string The ID of the Azure tenant for the service instance. The value the operator entered for Tenant ID in Ops Manager. provision and update
azure_subscription_id string The ID of the Azure subscription for the service instance. The value the operator entered for Subscription ID in Ops Manager. provision and update
azure_client_id string The ID of the Azure service principal to authenticate for service instance creation. The value the operator entered for Client ID in Ops Manager. provision and update
azure_client_secret string The secret (password) for the Azure service principal to authenticate for service instance creation. The value the operator entered for Client Secret in Ops Manager. provision and update
authorized_network string The subnet ID, in long form, of the Azure Virtual Network (VNet) or subnet that is attached to this instance to allow remote access. By default no VNets are allowed access. n/a provision and update
cores number Number of vCores for the instance (up to the maximum allowed for the service tier). 1–64, multiples of 2 2 provision and update
storage_gb number Maximum storage allocated to the database instance in GB. 5–4096 5 provision and update
sku_name string The Azure stock-keeping unit (SKU). For more information about configuring this parameter, see SKUs section. n/a provision and update
postgres_version string The version for the PostgreSQL instance. Allowed values are 9.5, 9.6, 10, 11. 11 provision and update
db_name string Name for your database. vsbdb provision and update
use_tls boolean Use TLS for database connections. true provision and update
skip_provider_registration boolean Set to true to skip automatic Azure provider registration. Set if the service principal being used does not have the rights to register providers. false provision and update

Storage

Storage auto-grow is enabled on Azure. For more information about storage auto-grow, see the Microsoft documentation Initial storage sizes are per plan.

SKUs

Stock-keeping units (SKU) are usually formatted as TIER_FAMILY_NUMBER-OF-CORES. Where:

  • Examples of TIER are GP\_S, GP, and HS
  • Examples of FAMILY are Gen4 and Gen5
Example SKUs are GP\_S\_Gen4\_1 and GP\_Gen5\_8.

If you do not define a SKU using the sku_name parameter, the SKU is computed from the number of cores in your plan. See Plans above.

The table below shows the mapping of the number of cores to the corresponding Azure SKU:

Cores SKU
1 GP_Gen5_1
2 GP_Gen5_2
4 GP_Gen5_4
8 GP_Gen5_8
16 GP_Gen5_16
32 GP_Gen5_32
80 GP_Gen5_80

For a list of all valid SKUs, run:

az sql db list-editions -l LOCATION -o table

For information about the vCore purchasing model, see this Microsoft documentation.
For information about the DTU purchasing model, see this Microsoft documentation.

Note: Azure SQL service instances use the vCore model and the Gen5 hardware generation unless you override this default using the sku_name parameter. For more information about the vCore model, see the Microsoft documentation.

Note: When updating a service instance, it is recommended that the SKU for the updated service instance remain in the same tier (GP_S, GP, or HS). If you want to change to a different tier, check the Azure documentation to ensure that updating to the new tier is supported.

Binding Credentials

The format for binding credentials for PostgreSQL is as follows:

{
    "name" : "DATABASE-NAME",
    "hostname" : "DATABASE-SERVER-HOST",
    "port" : "DATABASE-SERVER-PORT",
    "username" : "AUTHENTICATION-USERNAME",
    "password" : "AUTHENTICATION-PASSWORD",
    "uri" : "DATABASE-CONNECTION-URI",
    "jdbcUrl" : "JDBC-FORMAT-CONNECTION-URI",
    "use_tls" : true
}

Where:

  • DATABASE-NAME is the database name.
  • DATABASE-SERVER-HOST is the database server host name.
  • PORT is the database server port.
  • AUTHENTICATION-USERNAME is the username to authenticate to the database instance.
  • AUTHENTICATION-PASSWORD is the password to authenticate to the database instance.
  • DATABASE-CONNECTION-URI is the URI to connect to the database instance and database.
  • JDBC-FORMAT-CONNECTION-URI is the Java Database Connectivity (JDBC) URL to connect to the database instance and database.
check-circle-line exclamation-circle-line close-line
Scroll to top icon