Git Product home page Git Product logo

terraform-google-vault's Introduction

Vault on GCE Terraform Module

Modular deployment of Vault on Compute Engine.

Unseal keys are generated when the instance first starts and stored encrypted using Cloud KMS in a separate Cloud Storage bucket for later retrival and Vault unsealing.

This module also creates a TLS CA and certificates for the Vault server. The generated certificates are encrypyed using Cloud KMS and stored in a separate Cloud Storage bucket.

Usage

module "vault" {
  source = "github.com/GoogleCloudPlatform/terrform-google-vault"
  project_id           = "${var.project_id}"
  region               = "${var.region}"
  zone                 = "${var.zone}"
  storage_bucket       = "${var.storage_bucket}"
  kms_keyring_name     = "${var.kms_keyring_name}"
}

Input variables

  • project_id (required): The project ID to add the IAM bindings for the service account to.
  • region (required): The region to create the instance in.
  • zone (required): The zone to create the instance in.
  • kms_keyring_name (required): The name of the Cloud KMS KeyRing for asset encryption.
  • kms_key_name: (optional): The name of the Cloud KMS Key used for asset encryption/decryption. Default is vault-init.
  • network (optional): The network to deploy to. Default is default.
  • subnetwork (optional): The subnetwork to deploy to. Default is default.
  • machine_type (optional): The machine type for the instance. Default is n1-standard-1
  • vault_args (optional): Additional command line arguments passed to vault server.
  • force_destroy_bucket (optional): Set to true to force deletion of backend bucket on terraform destroy. Default is false.
  • tls_ca_subject (optional): The subject block for the root CA certificate.
  • tls_dns_names (optional): List of DNS names added to the Vault server self-signed certificate. Default is ["vault.example.net"].
  • tls_ips (optional): List of IP addresses added to the Vault server self-signed certificate. Default is ["127.0.0.1"].
  • tls_cn (optional): The TLS Common Name for the TLS certificates. Default is vault.example.net.
  • tls_ou (optional): The TLS Organizational Unit for the TLS certificate. Default is IT Security Operations.

Output variables

  • instance_group: Link to the instance_group property of the instance group manager resource.
  • ca_private_key_algorithm: The root CA algorithm for generating client certs.
  • ca_private_key_pem: The root CA key pem for generating client certs.
  • ca_cert_pem: The root CA cert pem for generating client certs.

Resources created

terraform-google-vault's People

Contributors

danisla avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.