Required configuration (Legacy Azure Terraform)
When using the root main.tf file from the Materialize on Azure Terraform
module, the
following configurations are required. 1
Required variables
When using the root main.tf file from the Materialize on Azure Terraform
module, the
following variables must be set: 1
| Variable |
|---|
|
|
|
For a list of all variables, see the
README.md
or the variables.tf file.
Resource group
When using the root main.tf file from the Materialize on Azure Terraform
module, an
Azure Resource Group azurerm_resource_group is required.1 You can either
create a new resource group or use an existing resource group:
-
To create a new resource group, declare the resource group to create in your configuration:
resource "azurerm_resource_group" "materialize" { name = var.resource_group_name location = var.location # Defaults to eastus2 tags = var.tags # Optional } -
To use an existing resource group, set the
resource_group_namevariable to that group’s name.
Required providers
When using the root main.tf file from the Materialize on Azure Terraform
module
v0.2.0+, the
following provider declarations are required: 1
provider "azurerm" {
# Set the Azure subscription ID here or use the ARM_SUBSCRIPTION_ID environment variable
# subscription_id = "XXXXXXXXXXXXXXXXXXX"
# Specify addition Azure provider configuration as needed
features { }
}
provider "kubernetes" {
host = module.aks.cluster_endpoint
client_certificate = base64decode(module.aks.kube_config[0].client_certificate)
client_key = base64decode(module.aks.kube_config[0].client_key)
cluster_ca_certificate = base64decode(module.aks.kube_config[0].cluster_ca_certificate)
}
provider "helm" {
kubernetes {
host = module.aks.cluster_endpoint
client_certificate = base64decode(module.aks.kube_config[0].client_certificate)
client_key = base64decode(module.aks.kube_config[0].client_key)
cluster_ca_certificate = base64decode(module.aks.kube_config[0].cluster_ca_certificate)
}
}
Swap support
Starting in v0.6.1 of Materialize on Azure Terraform, disk support (using swap on NVMe instance storage) may be enabled for Materialize. With this change, the Terraform:
- Creates a node group for Materialize.
- Configures NVMe instance store volumes as swap using a daemonset.
- Enables swap at the Kubelet.
For swap support, the following configuration option is available:
See Upgrade Notes.