Redshift
Terraform module to create AWS Redshift resources
Inputs
40 / 81
allow_version_upgradeoptionalboolIf `true`, major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster. Default is `true`
nullapply_immediatelyoptionalboolSpecifies whether any cluster modifications are applied immediately, or during the next maintenance window. Default is `false`
nullauthentication_profilesoptionalmap(object({ name = optional(string) # Will fall back to key if not set content …Map of authentication profiles to create
{}automated_snapshot_retention_periodoptionalnumberThe number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want with create-cluster-snapshot. Default is 1
nullavailability_zoneoptionalstringThe EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision the cluster. Can only be changed if `availability_zone_relocation_enabled` is `true`
nullavailability_zone_relocation_enabledoptionalboolIf `true`, the cluster can be relocated to another availability zone, either automatically by AWS or when requested. Default is `false`. Available for use on clusters from the RA3 instance family
nullcloudwatch_log_group_kms_key_idoptionalstringThe ARN of the KMS Key to use when encrypting log data
nullcloudwatch_log_group_retention_in_daysoptionalnumberThe number of days to retain CloudWatch logs for the redshift cluster
0cloudwatch_log_group_skip_destroyoptionalboolSet to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the Terraform state
nullcloudwatch_log_group_tagsoptionalmap(string)Additional tags to add to cloudwatch log groups created
{}cluster_identifieroptionalstringThe Cluster Identifier. Must be a lower case string
""cluster_timeoutsoptionalobject({ create = optional(string) update = optional(string) delete = optional(s…Create, update, and delete timeout configurations for the cluster
nullcluster_versionoptionalstringThe version of the Amazon Redshift engine software that you want to deploy on the cluster. The version selected runs on all the nodes in the cluster
nullcreateoptionalboolDetermines whether to create Redshift cluster and resources (affects all resources)
truecreate_cloudwatch_log_groupoptionalboolDetermines whether a CloudWatch log group is created for each `var.logging.log_exports`
falsecreate_parameter_groupoptionalboolDetermines whether to create a parameter group or use existing
truecreate_scheduled_action_iam_roleoptionalboolDetermines whether a scheduled action IAM role is created
falsecreate_security_groupoptionalboolDetermines whether to create security group for Redshift cluster
truecreate_subnet_groupoptionalboolDetermines whether to create a subnet group or use existing
truedatabase_nameoptionalstringThe name of the first database to be created when the cluster is created. If you do not provide a name, Amazon Redshift will create a default database called `dev`
nulldefault_iam_role_arnoptionalstringThe Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was created
nullelastic_ipoptionalstringThe Elastic IP (EIP) address for the cluster
nullencryptedoptionalboolIf `true`, the data in the cluster is encrypted at rest
nullendpoint_accessoptionalmap(object({ name = optional(string) # Will fall back to key if not set resource…Map of endpoint access (managed VPC endpoint) definitions to create
{}enhanced_vpc_routingoptionalboolIf `true`, enhanced VPC routing is enabled
nullfinal_snapshot_identifieroptionalstringThe 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`
nulliam_role_arnsoptionallist(string)A list of IAM Role ARNs to associate with the cluster. A Maximum of 10 can be associated to the cluster at any time
[]iam_role_descriptionoptionalstringDescription of the scheduled action IAM role
nulliam_role_nameoptionalstringName to use on scheduled action IAM role created
nulliam_role_pathoptionalstringScheduled action IAM role path
nulliam_role_permissions_boundaryoptionalstringARN of the policy that is used to set the permissions boundary for the scheduled action IAM role
nulliam_role_tagsoptionalmap(string)A map of additional tags to add to the scheduled action IAM role created
{}iam_role_use_name_prefixoptionalstringDetermines whether scheduled action the IAM role name (`iam_role_name`) is used as a prefix
truekms_key_arnoptionalstringThe ARN for the KMS encryption key. When specifying `kms_key_arn`, `encrypted` needs to be set to `true`
nullloggingoptionalobject({ bucket_name = optional(string) log_destination_type = optional(string) …Logging configuration for the cluster
nullmaintenance_track_nameoptionalstringThe name of the maintenance track for the restored cluster. When you take a snapshot, the snapshot inherits the MaintenanceTrack value from the cluster. The snapshot might be on a different track than the cluster that was the source for the snapshot. Default value is `current`
nullmanage_master_passwordoptionalboolWhether to use AWS SecretsManager to manage the cluster admin credentials. Conflicts with `master_password_wo`. One of `master_password_wo` or `manage_master_password` is required unless `snapshot_identifier` is provided
truemanage_master_password_rotationoptionalboolWhether to manage the master user password rotation. Setting this value to false after previously having been set to true will disable automatic rotation
falsemanual_snapshot_retention_periodoptionalnumberThe default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained indefinitely. This setting doesn't change the retention period of existing snapshots. Valid values are between `-1` and `3653`. Default value is `-1`
nullmaster_password_rotate_immediatelyoptionalboolSpecifies whether to rotate the secret immediately or wait until the next scheduled rotation window
nullAll 81 are optional — the module deploys with none of them set. Showing 40, so the site stays a static download — the remaining 41 are in the source.
Outputs
38
authentication_profilesMap of authentication profiles created and their associated attributes
cluster_arnThe Redshift cluster ARN
cluster_automated_snapshot_retention_periodThe backup retention period
cluster_availability_zoneThe availability zone of the Cluster
cluster_database_nameThe name of the default database in the Cluster
cluster_dns_nameThe DNS name of the cluster
cluster_encryptedWhether the data in the cluster is encrypted
cluster_endpointThe connection endpoint
cluster_hostnameThe hostname of the Redshift cluster
cluster_idThe Redshift cluster ID
cluster_identifierThe Redshift cluster identifier
cluster_master_passwordThe Redshift cluster master password
cluster_master_usernameThe Redshift cluster master username
cluster_namespace_arnThe namespace Amazon Resource Name (ARN) of the cluster
cluster_node_typeThe type of nodes in the cluster
cluster_nodesThe nodes in the cluster. Each node is a map of the following attributes: `node_role`, `private_ip_address`, and `public_ip_address`
cluster_parameter_group_nameThe name of the parameter group to be associated with this cluster
cluster_portThe port the cluster responds on
cluster_preferred_maintenance_windowThe backup window
cluster_public_keyThe public key for the cluster
cluster_revision_numberThe specific revision number of the database in the cluster
cluster_secretsmanager_secret_rotation_enabledSpecifies whether automatic rotation is enabled for the secret
cluster_subnet_group_nameThe name of a cluster subnet group to be associated with this cluster
cluster_typeThe Redshift cluster type
cluster_versionThe version of Redshift engine software
cluster_vpc_security_group_idsThe VPC security group ids associated with the cluster
endpoint_accessA map of access endpoints created and their attributes
master_password_secret_arnARN of managed master password secret
parameter_group_arnAmazon Resource Name (ARN) of the parameter group created
parameter_group_idThe name of the Redshift parameter group created
scheduled_action_iam_role_arnScheduled actions IAM role ARN
scheduled_action_iam_role_nameScheduled actions IAM role name
scheduled_action_iam_role_unique_idStable and unique string identifying the scheduled action IAM role
scheduled_actionsA map of maps containing scheduled action details
snapshot_schedule_arnAmazon Resource Name (ARN) of the Redshift Snapshot Schedule
subnet_group_arnAmazon Resource Name (ARN) of the Redshift subnet group created
subnet_group_idThe ID of Redshift Subnet group created
usage_limitsMap of usage limits created and their associated attributes
What the agent wires into the next module. An edge on the architecture diagram is one of these consumed by something else.