Required configuration (Legacy AWS Terraform)
Required variables
The following variables are required when using the Materialize on AWS Terraform modules:
| Variable |
|---|
|
|
|
For a list of all variables, see the
README.md
or the variables.tf
file.
Required providers
Starting in Materialize on AWS Terraform module v0.3.0, you need to declare the following providers:
provider "aws" {
region = "us-east-1" # or some other region
# Specify additional AWS provider configuration as needed
}
# Required for EKS authentication
provider "kubernetes" {
host = module.eks.cluster_endpoint
cluster_ca_certificate = base64decode(module.eks.cluster_certificate_authority_data)
exec {
api_version = "client.authentication.k8s.io/v1beta1"
args = ["eks", "get-token", "--cluster-name", module.eks.cluster_name]
command = "aws"
}
}
# Required for Materialize Operator installation
provider "helm" {
kubernetes {
host = module.eks.cluster_endpoint
cluster_ca_certificate = base64decode(module.eks.cluster_certificate_authority_data)
exec {
api_version = "client.authentication.k8s.io/v1beta1"
args = ["eks", "get-token", "--cluster-name", module.eks.cluster_name]
command = "aws"
}
}
}
Swap support
Starting in v0.6.1 of Materialize on AWS 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.