Show / Hide Table of Contents

Class ClusterProps

(experimental) Properties for a new database cluster.

Inheritance
object
ClusterProps
Implements
IClusterProps
Inherited Members
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Amazon.CDK.AWS.Redshift.Alpha
Assembly: Amazon.CDK.AWS.Redshift.Alpha.dll
Syntax (csharp)
public class ClusterProps : IClusterProps
Syntax (vb)
Public Class ClusterProps Implements IClusterProps
Remarks

Stability: Experimental

ExampleMetadata: infused

Examples
using Amazon.CDK.AWS.EC2;
             using Amazon.CDK.AWS.IAM;
             Vpc vpc;


             var defaultRole = new Role(this, "DefaultRole", new RoleProps {
                 AssumedBy = new ServicePrincipal("redshift.amazonaws.com")
             });

             new Cluster(this, "Redshift", new ClusterProps {
                 MasterUser = new Login {
                     MasterUsername = "admin"
                 },
                 Vpc = vpc,
                 Roles = new [] { defaultRole },
                 DefaultRole = defaultRole
             });

Synopsis

Constructors

ClusterProps()

(experimental) Properties for a new database cluster.

Properties

AvailabilityZoneRelocation

(experimental) Whether to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is created.

ClassicResizing

(experimental) If this flag is set, the cluster resizing type will be set to classic.

ClusterName

(experimental) An optional identifier for the cluster.

ClusterType

(experimental) Settings for the individual instances that are launched.

DefaultDatabaseName

(experimental) Name of a database which is automatically created inside the cluster.

DefaultRole

(experimental) A single AWS Identity and Access Management (IAM) role to be used as the default role for the cluster.

ElasticIp

(experimental) The Elastic IP (EIP) address for the cluster.

Encrypted

(experimental) Whether to enable encryption of data at rest in the cluster.

EncryptionKey

(experimental) The KMS key to use for encryption of data at rest.

EnhancedVpcRouting

(experimental) If this flag is set, Amazon Redshift forces all COPY and UNLOAD traffic between your cluster and your data repositories through your virtual private cloud (VPC).

LoggingProperties

(experimental) Bucket details for log files to be sent to, including prefix.

MaintenanceTrackName

(experimental) The maintenance track name for the cluster.

MasterUser

(experimental) Username and password for the administrative user.

MultiAz

(experimental) Indicating whether Amazon Redshift should deploy the cluster in two Availability Zones.

NodeType

(experimental) The node type to be provisioned for the cluster.

NumberOfNodes

(experimental) Number of compute nodes in the cluster. Only specify this property for multi-node clusters.

ParameterGroup

(experimental) Additional parameters to pass to the database engine https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html.

Port

(experimental) What port to listen on.

PreferredMaintenanceWindow

(experimental) A preferred maintenance window day/time range. Should be specified as a range ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC).

PubliclyAccessible

(experimental) Whether to make cluster publicly accessible.

RebootForParameterChanges

(experimental) If this flag is set, the cluster will be rebooted when changes to the cluster's parameter group that require a restart to apply.

RemovalPolicy

(experimental) The removal policy to apply when the cluster and its instances are removed from the stack or replaced during an update.

ResourceAction

(experimental) The Amazon Redshift operation to be performed.

Roles

(experimental) A list of AWS Identity and Access Management (IAM) role that can be used by the cluster to access other AWS services.

SecurityGroups

(experimental) Security group.

SubnetGroup

(experimental) A cluster subnet group to use with this cluster.

Vpc

(experimental) The VPC to place the cluster in.

VpcSubnets

(experimental) Where to place the instances within the VPC.

Constructors

ClusterProps()

(experimental) Properties for a new database cluster.

public ClusterProps()
Remarks

Stability: Experimental

ExampleMetadata: infused

Examples
using Amazon.CDK.AWS.EC2;
             using Amazon.CDK.AWS.IAM;
             Vpc vpc;


             var defaultRole = new Role(this, "DefaultRole", new RoleProps {
                 AssumedBy = new ServicePrincipal("redshift.amazonaws.com")
             });

             new Cluster(this, "Redshift", new ClusterProps {
                 MasterUser = new Login {
                     MasterUsername = "admin"
                 },
                 Vpc = vpc,
                 Roles = new [] { defaultRole },
                 DefaultRole = defaultRole
             });

Properties

AvailabilityZoneRelocation

(experimental) Whether to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is created.

public bool? AvailabilityZoneRelocation { get; set; }
Property Value

bool?

Remarks

Default: - false

Stability: Experimental

See: https://docs.aws.amazon.com/redshift/latest/mgmt/managing-cluster-recovery.html

ClassicResizing

(experimental) If this flag is set, the cluster resizing type will be set to classic.

public bool? ClassicResizing { get; set; }
Property Value

bool?

Remarks

When resizing a cluster, classic resizing will always provision a new cluster and transfer the data there.

Classic resize takes more time to complete, but it can be useful in cases where the change in node count or the node type to migrate to doesn't fall within the bounds for elastic resize.

Default: - Elastic resize type

Stability: Experimental

See: https://docs.aws.amazon.com/redshift/latest/mgmt/managing-cluster-operations.html#elastic-resize

ClusterName

(experimental) An optional identifier for the cluster.

public string? ClusterName { get; set; }
Property Value

string

Remarks

Default: - A name is automatically generated.

Stability: Experimental

ClusterType

(experimental) Settings for the individual instances that are launched.

public ClusterType? ClusterType { get; set; }
Property Value

ClusterType?

Remarks

Default: ClusterType.MULTI_NODE

Stability: Experimental

DefaultDatabaseName

(experimental) Name of a database which is automatically created inside the cluster.

public string? DefaultDatabaseName { get; set; }
Property Value

string

Remarks

Default: - default_db

Stability: Experimental

DefaultRole

(experimental) A single AWS Identity and Access Management (IAM) role to be used as the default role for the cluster.

public IRole? DefaultRole { get; set; }
Property Value

IRole

Remarks

The default role must be included in the roles list.

Default: - No default role is specified for the cluster.

Stability: Experimental

ElasticIp

(experimental) The Elastic IP (EIP) address for the cluster.

public string? ElasticIp { get; set; }
Property Value

string

Remarks

Default: - No Elastic IP

Stability: Experimental

See: https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-vpc.html

Encrypted

(experimental) Whether to enable encryption of data at rest in the cluster.

public bool? Encrypted { get; set; }
Property Value

bool?

Remarks

Default: true

Stability: Experimental

EncryptionKey

(experimental) The KMS key to use for encryption of data at rest.

public IKey? EncryptionKey { get; set; }
Property Value

IKey

Remarks

Default: - AWS-managed key, if encryption at rest is enabled

Stability: Experimental

EnhancedVpcRouting

(experimental) If this flag is set, Amazon Redshift forces all COPY and UNLOAD traffic between your cluster and your data repositories through your virtual private cloud (VPC).

public bool? EnhancedVpcRouting { get; set; }
Property Value

bool?

Remarks

Default: - false

Stability: Experimental

See: https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html

LoggingProperties

(experimental) Bucket details for log files to be sent to, including prefix.

public ILoggingProperties? LoggingProperties { get; set; }
Property Value

ILoggingProperties

Remarks

Default: - No logging bucket is used

Stability: Experimental

MaintenanceTrackName

(experimental) The maintenance track name for the cluster.

public MaintenanceTrackName? MaintenanceTrackName { get; set; }
Property Value

MaintenanceTrackName?

Remarks

Default: undefined - Redshift default is current

Stability: Experimental

See: https://docs.aws.amazon.com/redshift/latest/mgmt/managing-cluster-considerations.html#rs-mgmt-maintenance-tracks

MasterUser

(experimental) Username and password for the administrative user.

public ILogin MasterUser { get; set; }
Property Value

ILogin

Remarks

Stability: Experimental

MultiAz

(experimental) Indicating whether Amazon Redshift should deploy the cluster in two Availability Zones.

public bool? MultiAz { get; set; }
Property Value

bool?

Remarks

Default: - false

Stability: Experimental

NodeType

(experimental) The node type to be provisioned for the cluster.

public NodeType? NodeType { get; set; }
Property Value

NodeType?

Remarks

Default: NodeType.DC2_LARGE

Stability: Experimental

NumberOfNodes

(experimental) Number of compute nodes in the cluster. Only specify this property for multi-node clusters.

public double? NumberOfNodes { get; set; }
Property Value

double?

Remarks

Value must be at least 2 and no more than 100.

Default: - 2 if clusterType is ClusterType.MULTI_NODE, undefined otherwise

Stability: Experimental

ParameterGroup

(experimental) Additional parameters to pass to the database engine https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html.

public IClusterParameterGroup? ParameterGroup { get; set; }
Property Value

IClusterParameterGroup

Remarks

Default: - No parameter group.

Stability: Experimental

Port

(experimental) What port to listen on.

public double? Port { get; set; }
Property Value

double?

Remarks

Default: - The default for the engine is used.

Stability: Experimental

PreferredMaintenanceWindow

(experimental) A preferred maintenance window day/time range. Should be specified as a range ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC).

public string? PreferredMaintenanceWindow { get; set; }
Property Value

string

Remarks

Example: 'Sun:23:45-Mon:00:15'

Default: - 30-minute window selected at random from an 8-hour block of time for each AWS Region, occurring on a random day of the week.

Stability: Experimental

See: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_UpgradeDBInstance.Maintenance.html#Concepts.DBMaintenance

PubliclyAccessible

(experimental) Whether to make cluster publicly accessible.

public bool? PubliclyAccessible { get; set; }
Property Value

bool?

Remarks

Default: false

Stability: Experimental

RebootForParameterChanges

(experimental) If this flag is set, the cluster will be rebooted when changes to the cluster's parameter group that require a restart to apply.

public bool? RebootForParameterChanges { get; set; }
Property Value

bool?

Remarks

Default: false

Stability: Experimental

RemovalPolicy

(experimental) The removal policy to apply when the cluster and its instances are removed from the stack or replaced during an update.

public RemovalPolicy? RemovalPolicy { get; set; }
Property Value

RemovalPolicy?

Remarks

Default: RemovalPolicy.RETAIN

Stability: Experimental

ResourceAction

(experimental) The Amazon Redshift operation to be performed.

public ResourceAction? ResourceAction { get; set; }
Property Value

ResourceAction?

Remarks

Default: - no operation

Stability: Experimental

Roles

(experimental) A list of AWS Identity and Access Management (IAM) role that can be used by the cluster to access other AWS services.

public IRole[]? Roles { get; set; }
Property Value

IRole[]

Remarks

The maximum number of roles to attach to a cluster is subject to a quota.

Default: - No role is attached to the cluster.

Stability: Experimental

SecurityGroups

(experimental) Security group.

public ISecurityGroup[]? SecurityGroups { get; set; }
Property Value

ISecurityGroup[]

Remarks

Default: - a new security group is created.

Stability: Experimental

SubnetGroup

(experimental) A cluster subnet group to use with this cluster.

public IClusterSubnetGroup? SubnetGroup { get; set; }
Property Value

IClusterSubnetGroup

Remarks

Default: - a new subnet group will be created.

Stability: Experimental

Vpc

(experimental) The VPC to place the cluster in.

public IVpc Vpc { get; set; }
Property Value

IVpc

Remarks

Stability: Experimental

VpcSubnets

(experimental) Where to place the instances within the VPC.

public ISubnetSelection? VpcSubnets { get; set; }
Property Value

ISubnetSelection

Remarks

Default: - private subnets

Stability: Experimental

Implements

IClusterProps
Back to top Generated by DocFX