Coder Social home page Coder Social logo

standardgalactic / terraform-aws-redshift Goto Github PK

View Code? Open in Web Editor NEW

This project forked from terraform-aws-modules/terraform-aws-redshift

0.0 1.0 0.0 150 KB

Terraform module which creates Redshift resources on AWS

Home Page: https://registry.terraform.io/modules/terraform-aws-modules/redshift/aws

License: Apache License 2.0

HCL 100.00%

terraform-aws-redshift's Introduction

AWS Redshift Terraform module

Terraform module which creates Redshift resources on AWS.

Usage

module "redshift" {
  source  = "terraform-aws-modules/redshift/aws"
  version = "~> 3.0"

  cluster_identifier      = "my-cluster"
  cluster_node_type       = "dc1.large"
  cluster_number_of_nodes = 1

  cluster_database_name   = "mydb"
  cluster_master_username = "mydbuser"
  cluster_master_password = "mySecretPassw0rd"

  # Group parameters
  wlm_json_configuration = "[{\"query_concurrency\": 5}]"

  # DB Subnet Group Inputs
  subnets = ["subnet-123456", "subnet-654321"]

  # IAM Roles
  cluster_iam_roles = ["arn:aws:iam::225367859851:role/developer"]
}

Examples

Requirements

Name Version
terraform >= 0.12.31
aws >= 3.57.0

Providers

Name Version
aws >= 3.57.0

Modules

No modules.

Resources

Name Type
aws_redshift_cluster.this resource
aws_redshift_parameter_group.this resource
aws_redshift_subnet_group.this resource

Inputs

Name Description Type Default Required
allow_version_upgrade (Optional) If true, major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster. bool true no
automated_snapshot_retention_period How long will we retain backups number 0 no
cluster_database_name The name of the database to create string n/a yes
cluster_iam_roles A list of IAM Role ARNs to associate with the cluster. A Maximum of 10 can be associated to the cluster at any time. list(string) [] no
cluster_identifier Custom name of the cluster string n/a yes
cluster_master_password Password for master user string n/a yes
cluster_master_username Master username string n/a yes
cluster_node_type Node Type of Redshift cluster string n/a yes
cluster_number_of_nodes Number of nodes in the cluster (values greater than 1 will trigger 'cluster_type' of 'multi-node') number 3 no
cluster_parameter_group Parameter group, depends on DB engine used string "redshift-1.0" no
cluster_port Cluster port number 5439 no
cluster_version Version of Redshift engine cluster string "1.0" no
elastic_ip (Optional) The Elastic IP (EIP) address for the cluster. string null no
enable_case_sensitive_identifier (Optional) A configuration value that determines whether name identifiers of databases, tables, and columns are case sensitive. bool false no
enable_logging Enables logging information such as queries and connection attempts, for the specified Amazon Redshift cluster. bool false no
enable_user_activity_logging Enable logging of user activity. See https://docs.aws.amazon.com/redshift/latest/mgmt/db-auditing.html string "false" no
encrypted (Optional) If true , the data in the cluster is encrypted at rest. bool false no
enhanced_vpc_routing (Optional) If true, enhanced VPC routing is enabled. bool false no
final_snapshot_identifier (Optional) The identifier of the final snapshot that is to be created immediately before deleting the cluster. If this parameter is provided, 'skip_final_snapshot' must be false. string "" no
kms_key_id (Optional) The ARN for the KMS encryption key. When specifying kms_key_id, encrypted needs to be set to true. string "" no
logging_bucket_name (Optional, required when enable_logging is true) The name of an existing S3 bucket where the log files are to be stored. Must be in the same region as the cluster and the cluster must have read bucket and put object permissions. string null no
logging_s3_key_prefix (Optional) The prefix applied to the log file names. string null no
max_concurrency_scaling_clusters (Optional) Max concurrency scaling clusters parameter (0 to 10) string "1" no
owner_account (Optional) The AWS customer account used to create or copy the snapshot. Required if you are restoring a snapshot you do not own, optional if you own the snapshot. string null no
parameter_group_name The name of the parameter group to be associated with this cluster. If not specified new parameter group will be created. string "" no
preferred_maintenance_window When AWS can run snapshot, can't overlap with maintenance window string "sat:10:00-sat:10:30" no
publicly_accessible Determines if Cluster can be publicly available (NOT recommended) bool false no
redshift_subnet_group_name The name of a cluster subnet group to be associated with this cluster. If not specified, new subnet will be created. string "" no
require_ssl Require SSL to connect to this cluster string "false" no
skip_final_snapshot If true (default), no snapshot will be made before deleting DB bool true no
snapshot_cluster_identifier (Optional) The name of the cluster the source snapshot was created from. string null no
snapshot_copy_destination_region (Optional) The name of the region where the snapshot will be copied. string null no
snapshot_copy_grant_name (Optional) The name of the grant in the destination region. Required if you have a KMS encrypted cluster. string null no
snapshot_identifier (Optional) The name of the snapshot from which to create the new cluster. string null no
subnets List of subnets DB should be available at. It might be one subnet. list(string) [] no
tags A mapping of tags to assign to all resources map(string) {} no
use_fips_ssl Enable FIPS-compliant SSL mode only if your system is required to be FIPS compliant. string "false" no
vpc_security_group_ids A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster. list(string) n/a yes
wlm_json_configuration Configuration bits for WLM json. see https://docs.aws.amazon.com/redshift/latest/mgmt/workload-mgmt-config.html string "[{\"query_concurrency\": 5}]" no

Outputs

Name Description
redshift_cluster_arn The Redshift cluster ARN
redshift_cluster_automated_snapshot_retention_period The backup retention period
redshift_cluster_availability_zone The availability zone of the Cluster
redshift_cluster_database_name The name of the default database in the Cluster
redshift_cluster_encrypted Whether the data in the cluster is encrypted
redshift_cluster_endpoint The connection endpoint
redshift_cluster_hostname The hostname of the Redshift cluster
redshift_cluster_id The Redshift cluster ID
redshift_cluster_identifier The Redshift cluster identifier
redshift_cluster_node_type The type of nodes in the cluster
redshift_cluster_nodes Cluster nodes in the Redshift cluster
redshift_cluster_parameter_group_name The name of the parameter group to be associated with this cluster
redshift_cluster_port The port the cluster responds on
redshift_cluster_preferred_maintenance_window The backup window
redshift_cluster_public_key The public key for the cluster
redshift_cluster_revision_number The specific revision number of the database in the cluster
redshift_cluster_security_groups The security groups associated with the cluster
redshift_cluster_subnet_group_name The name of a cluster subnet group to be associated with this cluster
redshift_cluster_type The Redshift cluster type
redshift_cluster_version The version of Redshift engine software
redshift_cluster_vpc_security_group_ids The VPC security group ids associated with the cluster
redshift_parameter_group_id The ID of Redshift parameter group created by this module
redshift_subnet_group_id The ID of Redshift subnet group created by this module

Authors

Module is maintained by Anton Babenko with help from these awesome contributors.

License

Apache 2 Licensed. See LICENSE for full details.

terraform-aws-redshift's People

Contributors

abemedia avatar antonbabenko avatar betajobot avatar bryantbiggs avatar idnorton avatar jefforulez avatar komljen avatar kostyaplis avatar leonkozlowski avatar lizthegrey avatar maateen avatar mattk-ce avatar mcardinalupgrade avatar sc250024 avatar statwoodland avatar

Watchers

 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.