Deploys the Amazon EBS CSI driver on AWS EKS via Helm.
Example:
module "aws_ebs_csi_driver" {
source = "github.com/andreswebs/terraform-aws-eks-ebs-csi-driver"
cluster_name = var.eks_cluster_id
cluster_oidc_provider = var.eks_cluster_oidc_provider
iam_role_name = "ebs-csi-controller-${var.eks_cluster_id}"
chart_version_aws_ebs_csi_driver = var.chart_version_aws_ebs_csi_driver
}
Name | Description | Type | Default | Required |
---|---|---|---|---|
chart_version_aws_ebs_csi_driver | Chart version | string |
null |
no |
cluster_name | Cluster name | string |
n/a | yes |
cluster_oidc_provider | OpenID Connect (OIDC) Identity Provider associated with the Kubernetes cluster | string |
n/a | yes |
helm_atomic_creation | Purge resources on installation failure ? The wait flag will be set automatically if atomic is used | bool |
true |
no |
helm_cleanup_on_fail | Deletion new resources created in this upgrade if the upgrade fails ? | bool |
true |
no |
helm_create_namespace | Create the namespace if it does not yet exist ? | bool |
true |
no |
helm_dependency_update | Run helm dependency update before installing the chart ? | bool |
false |
no |
helm_force_update | Force resource update through delete/recreate if needed ? | bool |
false |
no |
helm_keyring | Location of public keys used for verification; used only if verify is true | string |
".gnupg/pubring.gpg" |
no |
helm_max_history | Maximum number of release versions stored per release; 0 means no limit |
number |
3 |
no |
helm_recreate_pods | Perform pods restart during upgrade/rollback ? | bool |
true |
no |
helm_release_name | Release name | string |
"aws-ebs-csi-driver" |
no |
helm_replace | Re-use the given name, even if that name is already used; this is unsafe in production | bool |
false |
no |
helm_reset_values | When upgrading, reset the values to the ones built into the chart ? | bool |
false |
no |
helm_reuse_values | When upgrading, reuse the last release's values and merge any overrides ? If 'reset_values' is specified, this is ignored | bool |
false |
no |
helm_skip_crds | Skip installing CRDs ? | bool |
false |
no |
helm_timeout_seconds | Time in seconds to wait for any individual kubernetes operation | number |
300 |
no |
helm_verify | Verify the package before installing it. Helm uses a provenance file to verify the integrity of the chart | bool |
false |
no |
helm_wait_for_completion | Wait until all resources are in a ready state before marking the release as successful ? | bool |
true |
no |
helm_wait_for_jobs | Wait until all Jobs have been completed before marking the release as successful ? | bool |
true |
no |
iam_role_name | Name of the IAM role used by Kubernetes service account | string |
"ebs-csi-controller" |
no |
k8s_namespace | Kubernetes namespace on which to install resources | string |
"kube-system" |
no |
k8s_sa_name | Name of the Kubernetes service account | string |
"ebs-csi-controller" |
no |
kms_key_arn | (Optional) ARN of the AWS KMS key used for volume encryption | string |
"" |
no |
Name | Source | Version |
---|---|---|
iam | ./modules/iam | n/a |
resources | ./modules/resources | n/a |
Name | Description |
---|---|
namespace | The name (metadata.name ) of the Kubernetes namespace |
release | Helm release |
role | IAM role for the Kubernetes service account |
No providers.
Name | Version |
---|---|
terraform | >= 1.0.0 |
aws | >= 3.48.0 |
helm | >= 2.2.0 |
No resources.
Andre Silva - @andreswebs
This project is licensed under the Unlicense.