This topic provides reference information about the Azure Cosmos DB SQL API service (csb-azure-cosmosdb-sql). It details the plans, configuration parameters, and binding credentials.
The following table lists the plans available for Azure Cosmos DB SQL API:
Plan | Description |
---|---|
small | SQL Cosmos DB Account, no redundancy, and 400 request units. |
medium | SQL Cosmos DB Account, single read failover location, and 1,000 request units. |
large | SQL Cosmos DB Account, single read/write failover location, and 10,000 request units. |
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.
Note: If you set a parameter at plan level, developers cannot change the value when creating or updating service instances.
You can provision a service by running:
cf create-service csb-azure-cosmosdb-sql PLAN-NAME SERVICE-INSTANCE-NAME -c '{"PARAMETER-NAME": "PARAMETER-VALUE"}'
You can update the configuration parameters for a service instance by running:
cf update-service SERVICE-INSTANCE-NAME -c '{"PARAMETER-NAME": "PARAMETER-VALUE"}'
The table below lists the parameters that you can configure, using the -c
flag, when provisioning a csb-azure-cosmosdb-sql service:
Parameter Name | Type | Description | Default | Operation |
---|---|---|---|---|
request_units |
integer | (Required) The throughput of the Cosmos DB collection (RU/s). This parameter has the following constraints:
|
400 |
provision and update |
failover_locations |
array | A list of locations for the Cosmos DB account. The first location is the default write location. For available locations, see the Microsoft documentation. | westus |
provision and update |
instance_name |
string | The instance name for your Cosmos DB. | csb-INSTANCE-ID |
provision and update |
resource_group |
string | The Azure resource group in which to create the instance. | rg-ACCOUNT-NAME (ACCOUNT-NAME is always generated) |
provision |
db_name |
string | The name for your Cosmos DB database. | csb-db-INSTANCE-ID |
provision and update |
location |
string | The location of the CosmosDB account. | westus |
provision |
ip_range_filter |
string | CosmosDB Firewall Support. This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IP addresses for a given database account. IP addresses and ranges must be comma separated and must not contain any spaces. 0.0.0.0 allows access from Azure networks. An empty string "" allows access from all public networks. |
0.0.0.0 |
provision and update |
consistency_level |
string | The Consistency Level to use for this Cosmos DB Account. The options are BoundedStaleness , Eventual , Session , Strong , and ConsistentPrefix . If you choose BoundedStaleness , you must also set max_interval_in_seconds and max_staleness_prefix . |
Session |
provision and update |
max_interval_in_seconds |
integer | Required when consistency_level is set to BoundedStaleness . Sets the time in seconds that staleness is tolerated. Accepted range for this value is 5 - 86400 (1 day). |
5 |
provision and update |
max_staleness_prefix |
integer | Required when consistency_level is set to BoundedStaleness . Sets the number of stale requests tolerated. Accepted range for this value is 10 to 2147483647 . |
100 |
provision and update |
enable_multiple_write_locations |
boolean | Set to true to enable multiple write locations for this Cosmos DB account. |
false |
provision and update |
enable_automatic_failover |
boolean | Set to true to enable automatic failover for this Cosmos DB account |
false |
provision and update |
azure_tenant_id |
string | The ID of the Azure tenant for the 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 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 |
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 |
authorized_networks |
list (string) | A list of resource IDs for subnets of the authorized Azure Virtual Network (VNet). | [] |
provision and update |
The format for binding credentials for Azure Cosmos DB SQL API is as follows:
{
"cosmosdb_host_endpoint" : "COSMOS-DB-HOST-ENDPOINT",
"cosmosdb_master_key" : "COSMOS-DB-READ-WRITE-KEY",
"cosmosdb_readonly_master_key" : "COSMOS-DB-READ-ONLY-KEY",
"cosmosdb_database_id" : "COSMOS-DB-DATABASE-ID",
"status" : "STATUS-DESCRIPTION"
}