Note: These templates are still under active development. They are not recommended for production.
This repository consists of:
- src/mainTemplate.json - Entry Azure Resource Management (ARM) template.
- src/createUiDefinition - UI definition file for our market place offering. This file produces an output JSON that the ARM template can accept as input parameters JSON.
The output from the market place UI is fed directly to the ARM template. You can use the ARM template on its own without going through the market place.
| Parameter | Type | Description |
|---|---|---|
| loadBalancerType | string | Whether the loadbalancer should be internal or external
|
| chronograf | string | Either Yes or No provision an extra machine with a public IP that
has Chronograf installed on it.
|
| vmSizeDataNodes | string | Azure VM size of the data nodes see this list for supported sizes |
| vmDataNodeCount | int | The number of data nodes you wish to deploy. (Min: 2 | Max: 6). |
| vmDataNodeDiskSize | string | The disk size of each attached disk. Choose 1TiB, 512GiB, 256GiB, 128GiB, 64GiB or 32GiB.
For Premium Storage, disk sizes equate to P80, P70, P60, P50, P40, P30, P20, P15, P10 and P6
storage disk types, respectively.
|
| adminUsername | string | Admin username used when provisioning virtual machines |
| password | object | Password is a complex object parameter, we support both authenticating through username/pass or ssh keys. See the parameters example folder for an example of what to pass for either option. |
| influxdbPassword | securestring | InfluxDB password for the admin user with all privs, must be > 6 characters
|
| location | string | The location where to provision all the items in this template. Defaults to the special ResourceGroup value which means it will inherit the location
from the resource group see this list for supported locations.
|
Begin by making sure you're logged into your azure account subscription.
$ az loginYou can use the deploy.sh script to publish the template. The script will prompt you for a resourceGroup, if the group
does not exit it will be created.
$ ./deploy.shAfter the initial creation, you can continue to publish Incremental deployments using one of the following commands.
You can published this repo template directly using --template-uri
az group deployment create --template-uri https://raw.githubusercontent.com/influxdata/azure-resource-manager-influxdb-enterprise/master/src/mainTemplate.json --verbose --resource-group "${group}" --mode Incremental --parameters parameters/password.parameters.json
or if your are executing commands from a clone of this repo using --template-file
az group deployment create --template-file src/mainTemplate.json --verbose --resource-group "${group}" --mode Incremental --parameters parameters/password.parameters.json
<group> in these last two examples refers to the resource group created by the deploy.sh script.
NOTE
The --parameters can specify a different location for the items that get provisioned inside of the resource group. Make sure these are the same prior to deploying if you need them to be. Omitting location from the parameters file is another way to make sure the resources get deployed in the same location as the resource group.
The above button will take you to the autogenerated web based UI based on the parameters from the ARM template.
It should be pretty self explanatory except for password which only accepts a json object. Luckily the web UI lets you paste json in the text box. Here's an example:
{"sshPublicKey":null,"authenticationType":"password", "password":"Password1234"}