vault-starter

hashicorp/vault-starter/aws

Terraform Module HCL AWS

A Terraform Module for provisioning an OSS Vault cluster (using integrated storage) as described by HashiCorp reference architecture.

Install
module "vault-starter" {
source = "hashicorp/vault-starter/aws"
version = "1.0.0"
}
⭐ Source on GitHub 📦 Registry page
README

Vault AWS Module This is a Terraform module for provisioning Vault with integrated storage on AWS. This module defaults to setting up a cluster with 5 Vault nodes (as recommended by the Vault with Integrated Storage Reference Architecture). About This Module This module implements the Vault with Integrated Storage Reference Architecture on AWS using the open source version of Vault 1.8+. How to Use This Module - Ensure your AWS credentials are configured correctly and have permission to use the following AWS services: - Amazon Certificate Manager (ACM) - Amazon EC2 - Amazon Elastic Load Balancing (ALB) - AWS Identity & Access Management (IAM) - AWS Key Management System (KMS) - Amazon Secrets Manager - AWS Systems Manager Session Manager (optional - used to connect to EC2 instances with se

Inputs (21)
NameTypeDescriptionDefault
user_supplied_ami_idstring(Optional) User-provided AMI ID to use with Vault instances. If you provide this required
user_supplied_iam_role_namestring(Optional) User-provided IAM role name. This will be used for the instance profi required
vpc_idstringVPC ID where Vault will be deployed required
allowed_inbound_cidrs_lblist(string)(Optional) List of CIDR blocks to permit inbound traffic from to load balancer required
lb_certificate_arnstringARN of TLS certificate imported into ACM for use with LB listener required
user_supplied_userdata_pathstring(Optional) File path to custom userdata script being supplied by the user required
key_namestring(Optional) key pair to use for SSH access to instance required
leader_tls_servernamestringOne of the shared DNS SAN used to create the certs use for mTLS required
allowed_inbound_cidrs_sshlist(string)(Optional) List of CIDR blocks to permit for SSH to Vault nodes required
user_supplied_kms_key_arnstring(Optional) User-provided KMS key ARN. Providing this will disable the KMS submod required
resource_name_prefixstringResource name prefix used for tagging and naming AWS resources required
secrets_manager_arnstringSecrets manager ARN where TLS cert info is stored required
private_subnet_tagsmap(string)Tags which specify the subnets to deploy Vault into required
lb_typestringThe type of load balancer to provision; network or application."application"
kms_key_deletion_windownumberDuration in days after which the key is deleted after destruction of the resourc7
lb_health_check_pathstringThe endpoint to check for Vault's health status."/v1/sys/health?activecode=200\u0026stan
node_countnumberNumber of Vault nodes to deploy in ASG5
ssl_policystringSSL policy to use on LB listener"ELBSecurityPolicy-TLS-1-2-2017-01"
common_tagsmap(string)(Optional) Map of common tags for all taggable AWS resources.{}
vault_versionstringVault version"1.8.2"
instance_typestringEC2 instance type"m5.xlarge"
Outputs (4)
vault_lb_arn — ARN of Vault load balancer
vault_target_group_arn — Target group ARN to register Vault nodes with
vault_lb_dns_name — DNS name of Vault load balancer
vault_lb_zone_id — Zone ID of Vault load balancer
Details
FrameworkTerraform Module
LanguageHCL
Version1.0.0
Cloud AWS
★ Stars78
Forks65
Total downloads19.9k
Inputs21
Outputs4
Examples2
Submodules6
LicenseMPL-2.0
Namespacehashicorp
Updated