Redshift / Client / create_cluster

create_cluster#

Redshift.Client.create_cluster(**kwargs)#

Creates a new cluster with the specified parameters.

To create a cluster in Virtual Private Cloud (VPC), you must provide a cluster subnet group name. The cluster subnet group identifies the subnets of your VPC that Amazon Redshift uses when creating the cluster. For more information about managing clusters, go to Amazon Redshift Clusters in the Amazon Redshift Cluster Management Guide.

See also: AWS API Documentation

Request Syntax

response = client.create_cluster(
    DBName='string',
    ClusterIdentifier='string',
    ClusterType='string',
    NodeType='string',
    MasterUsername='string',
    MasterUserPassword='string',
    ClusterSecurityGroups=[
        'string',
    ],
    VpcSecurityGroupIds=[
        'string',
    ],
    ClusterSubnetGroupName='string',
    AvailabilityZone='string',
    PreferredMaintenanceWindow='string',
    ClusterParameterGroupName='string',
    AutomatedSnapshotRetentionPeriod=123,
    ManualSnapshotRetentionPeriod=123,
    Port=123,
    ClusterVersion='string',
    AllowVersionUpgrade=True|False,
    NumberOfNodes=123,
    PubliclyAccessible=True|False,
    Encrypted=True|False,
    HsmClientCertificateIdentifier='string',
    HsmConfigurationIdentifier='string',
    ElasticIp='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    KmsKeyId='string',
    EnhancedVpcRouting=True|False,
    AdditionalInfo='string',
    IamRoles=[
        'string',
    ],
    MaintenanceTrackName='string',
    SnapshotScheduleIdentifier='string',
    AvailabilityZoneRelocation=True|False,
    AquaConfigurationStatus='enabled'|'disabled'|'auto',
    DefaultIamRoleArn='string',
    LoadSampleData='string',
    ManageMasterPassword=True|False,
    MasterPasswordSecretKmsKeyId='string',
    IpAddressType='string',
    MultiAZ=True|False,
    RedshiftIdcApplicationArn='string'
)
Parameters:
  • DBName (string) –

    The name of the first database to be created when the cluster is created.

    To create additional databases after the cluster is created, connect to the cluster with a SQL client and use SQL commands to create a database. For more information, go to Create a Database in the Amazon Redshift Database Developer Guide.

    Default: dev

    Constraints:

    • Must contain 1 to 64 alphanumeric characters.

    • Must contain only lowercase letters.

    • Cannot be a word that is reserved by the service. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide.

  • ClusterIdentifier (string) –

    [REQUIRED]

    A unique identifier for the cluster. You use this identifier to refer to the cluster for any subsequent cluster operations such as deleting or modifying. The identifier also appears in the Amazon Redshift console.

    Constraints:

    • Must contain from 1 to 63 alphanumeric characters or hyphens.

    • Alphabetic characters must be lowercase.

    • First character must be a letter.

    • Cannot end with a hyphen or contain two consecutive hyphens.

    • Must be unique for all clusters within an Amazon Web Services account.

    Example: myexamplecluster

  • ClusterType (string) –

    The type of the cluster. When cluster type is specified as

    • single-node, the NumberOfNodes parameter is not required.

    • multi-node, the NumberOfNodes parameter is required.

    Valid Values: multi-node | single-node

    Default: multi-node

  • NodeType (string) –

    [REQUIRED]

    The node type to be provisioned for the cluster. For information about node types, go to Working with Clusters in the Amazon Redshift Cluster Management Guide.

    Valid Values: dc2.large | dc2.8xlarge | ra3.large | ra3.xlplus | ra3.4xlarge | ra3.16xlarge

  • MasterUsername (string) –

    [REQUIRED]

    The user name associated with the admin user account for the cluster that is being created.

    Constraints:

    • Must be 1 - 128 alphanumeric characters or hyphens. The user name can’t be PUBLIC.

    • Must contain only lowercase letters, numbers, underscore, plus sign, period (dot), at symbol (@), or hyphen.

    • The first character must be a letter.

    • Must not contain a colon (:) or a slash (/).

    • Cannot be a reserved word. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide.

  • MasterUserPassword (string) –

    The password associated with the admin user account for the cluster that is being created.

    You can’t use MasterUserPassword if ManageMasterPassword is true.

    Constraints:

    • Must be between 8 and 64 characters in length.

    • Must contain at least one uppercase letter.

    • Must contain at least one lowercase letter.

    • Must contain one number.

    • Can be any printable ASCII character (ASCII code 33-126) except ' (single quote), " (double quote), \, /, or @.

  • ClusterSecurityGroups (list) –

    A list of security groups to be associated with this cluster.

    Default: The default cluster security group for Amazon Redshift.

    • (string) –

  • VpcSecurityGroupIds (list) –

    A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster.

    Default: The default VPC security group is associated with the cluster.

    • (string) –

  • ClusterSubnetGroupName (string) –

    The name of a cluster subnet group to be associated with this cluster.

    If this parameter is not provided the resulting cluster will be deployed outside virtual private cloud (VPC).

  • AvailabilityZone (string) –

    The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision the cluster. For example, if you have several EC2 instances running in a specific Availability Zone, then you might want the cluster to be provisioned in the same zone in order to decrease network latency.

    Default: A random, system-chosen Availability Zone in the region that is specified by the endpoint.

    Example: us-east-2d

    Constraint: The specified Availability Zone must be in the same region as the current endpoint.

  • PreferredMaintenanceWindow (string) –

    The weekly time range (in UTC) during which automated cluster maintenance can occur.

    Format: ddd:hh24:mi-ddd:hh24:mi

    Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. For more information about the time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide.

    Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

    Constraints: Minimum 30-minute window.

  • ClusterParameterGroupName (string) –

    The name of the parameter group to be associated with this cluster.

    Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, go to Working with Amazon Redshift Parameter Groups

    Constraints:

    • Must be 1 to 255 alphanumeric characters or hyphens.

    • First character must be a letter.

    • Cannot end with a hyphen or contain two consecutive hyphens.

  • AutomatedSnapshotRetentionPeriod (integer) –

    The 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 CreateClusterSnapshot.

    You can’t disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 days.

    Default: 1

    Constraints: Must be a value from 0 to 35.

  • ManualSnapshotRetentionPeriod (integer) –

    The 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.

    The value must be either -1 or an integer between 1 and 3,653.

  • Port (integer) –

    The port number on which the cluster accepts incoming connections.

    The cluster is accessible only via the JDBC and ODBC connection strings. Part of the connection string requires the port on which the cluster will listen for incoming connections.

    Default: 5439

    Valid Values:

    • For clusters with ra3 nodes - Select a port within the ranges 5431-5455 or 8191-8215. (If you have an existing cluster with ra3 nodes, it isn’t required that you change the port to these ranges.)

    • For clusters with dc2 nodes - Select a port within the range 1150-65535.

  • ClusterVersion (string) –

    The 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.

    Constraints: Only version 1.0 is currently available.

    Example: 1.0

  • AllowVersionUpgrade (boolean) –

    If true, major version upgrades can be applied during the maintenance window to the Amazon Redshift engine that is running on the cluster.

    When a new major version of the Amazon Redshift engine is released, you can request that the service automatically apply upgrades during the maintenance window to the Amazon Redshift engine that is running on your cluster.

    Default: true

  • NumberOfNodes (integer) –

    The number of compute nodes in the cluster. This parameter is required when the ClusterType parameter is specified as multi-node.

    For information about determining how many nodes you need, go to Working with Clusters in the Amazon Redshift Cluster Management Guide.

    If you don’t specify this parameter, you get a single-node cluster. When requesting a multi-node cluster, you must specify the number of nodes that you want in the cluster.

    Default: 1

    Constraints: Value must be at least 1 and no more than 100.

  • PubliclyAccessible (boolean) – If true, the cluster can be accessed from a public network.

  • Encrypted (boolean) –

    If true, the data in the cluster is encrypted at rest.

    Default: false

  • HsmClientCertificateIdentifier (string) – Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM.

  • HsmConfigurationIdentifier (string) – Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM.

  • ElasticIp (string) –

    The Elastic IP (EIP) address for the cluster.

    Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible through an Internet gateway. Don’t specify the Elastic IP address for a publicly accessible cluster with availability zone relocation turned on. For more information about provisioning clusters in EC2-VPC, go to Supported Platforms to Launch Your Cluster in the Amazon Redshift Cluster Management Guide.

  • Tags (list) –

    A list of tag instances.

    • (dict) –

      A tag consisting of a name/value pair for a resource.

      • Key (string) –

        The key, or name, for the resource tag.

      • Value (string) –

        The value for the resource tag.

  • KmsKeyId (string) – The Key Management Service (KMS) key ID of the encryption key that you want to use to encrypt data in the cluster.

  • EnhancedVpcRouting (boolean) –

    An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

    If this option is true, enhanced VPC routing is enabled.

    Default: false

  • AdditionalInfo (string) – Reserved.

  • IamRoles (list) –

    A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format.

    The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to Quotas and limits in the Amazon Redshift Cluster Management Guide.

    • (string) –

  • MaintenanceTrackName (string) – An optional parameter for the name of the maintenance track for the cluster. If you don’t provide a maintenance track name, the cluster is assigned to the current track.

  • SnapshotScheduleIdentifier (string) – A unique identifier for the snapshot schedule.

  • AvailabilityZoneRelocation (boolean) – The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is created.

  • AquaConfigurationStatus (string) – This parameter is retired. It does not set the AQUA configuration status. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).

  • DefaultIamRoleArn (string) – The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was created.

  • LoadSampleData (string) – A flag that specifies whether to load sample data once the cluster is created.

  • ManageMasterPassword (boolean) – If true, Amazon Redshift uses Secrets Manager to manage this cluster’s admin credentials. You can’t use MasterUserPassword if ManageMasterPassword is true. If ManageMasterPassword is false or not set, Amazon Redshift uses MasterUserPassword for the admin user account’s password.

  • MasterPasswordSecretKmsKeyId (string) – The ID of the Key Management Service (KMS) key used to encrypt and store the cluster’s admin credentials secret. You can only use this parameter if ManageMasterPassword is true.

  • IpAddressType (string) – The IP address types that the cluster supports. Possible values are ipv4 and dualstack.

  • MultiAZ (boolean) – If true, Amazon Redshift will deploy the cluster in two Availability Zones (AZ).

  • RedshiftIdcApplicationArn (string) – The Amazon resource name (ARN) of the Amazon Redshift IAM Identity Center application.

Return type:

dict

Returns:

Response Syntax

{
    'Cluster': {
        'ClusterIdentifier': 'string',
        'NodeType': 'string',
        'ClusterStatus': 'string',
        'ClusterAvailabilityStatus': 'string',
        'ModifyStatus': 'string',
        'MasterUsername': 'string',
        'DBName': 'string',
        'Endpoint': {
            'Address': 'string',
            'Port': 123,
            'VpcEndpoints': [
                {
                    'VpcEndpointId': 'string',
                    'VpcId': 'string',
                    'NetworkInterfaces': [
                        {
                            'NetworkInterfaceId': 'string',
                            'SubnetId': 'string',
                            'PrivateIpAddress': 'string',
                            'AvailabilityZone': 'string',
                            'Ipv6Address': 'string'
                        },
                    ]
                },
            ]
        },
        'ClusterCreateTime': datetime(2015, 1, 1),
        'AutomatedSnapshotRetentionPeriod': 123,
        'ManualSnapshotRetentionPeriod': 123,
        'ClusterSecurityGroups': [
            {
                'ClusterSecurityGroupName': 'string',
                'Status': 'string'
            },
        ],
        'VpcSecurityGroups': [
            {
                'VpcSecurityGroupId': 'string',
                'Status': 'string'
            },
        ],
        'ClusterParameterGroups': [
            {
                'ParameterGroupName': 'string',
                'ParameterApplyStatus': 'string',
                'ClusterParameterStatusList': [
                    {
                        'ParameterName': 'string',
                        'ParameterApplyStatus': 'string',
                        'ParameterApplyErrorDescription': 'string'
                    },
                ]
            },
        ],
        'ClusterSubnetGroupName': 'string',
        'VpcId': 'string',
        'AvailabilityZone': 'string',
        'PreferredMaintenanceWindow': 'string',
        'PendingModifiedValues': {
            'MasterUserPassword': 'string',
            'NodeType': 'string',
            'NumberOfNodes': 123,
            'ClusterType': 'string',
            'ClusterVersion': 'string',
            'AutomatedSnapshotRetentionPeriod': 123,
            'ClusterIdentifier': 'string',
            'PubliclyAccessible': True|False,
            'EnhancedVpcRouting': True|False,
            'MaintenanceTrackName': 'string',
            'EncryptionType': 'string'
        },
        'ClusterVersion': 'string',
        'AllowVersionUpgrade': True|False,
        'NumberOfNodes': 123,
        'PubliclyAccessible': True|False,
        'Encrypted': True|False,
        'RestoreStatus': {
            'Status': 'string',
            'CurrentRestoreRateInMegaBytesPerSecond': 123.0,
            'SnapshotSizeInMegaBytes': 123,
            'ProgressInMegaBytes': 123,
            'ElapsedTimeInSeconds': 123,
            'EstimatedTimeToCompletionInSeconds': 123
        },
        'DataTransferProgress': {
            'Status': 'string',
            'CurrentRateInMegaBytesPerSecond': 123.0,
            'TotalDataInMegaBytes': 123,
            'DataTransferredInMegaBytes': 123,
            'EstimatedTimeToCompletionInSeconds': 123,
            'ElapsedTimeInSeconds': 123
        },
        'HsmStatus': {
            'HsmClientCertificateIdentifier': 'string',
            'HsmConfigurationIdentifier': 'string',
            'Status': 'string'
        },
        'ClusterSnapshotCopyStatus': {
            'DestinationRegion': 'string',
            'RetentionPeriod': 123,
            'ManualSnapshotRetentionPeriod': 123,
            'SnapshotCopyGrantName': 'string'
        },
        'ClusterPublicKey': 'string',
        'ClusterNodes': [
            {
                'NodeRole': 'string',
                'PrivateIPAddress': 'string',
                'PublicIPAddress': 'string'
            },
        ],
        'ElasticIpStatus': {
            'ElasticIp': 'string',
            'Status': 'string'
        },
        'ClusterRevisionNumber': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'KmsKeyId': 'string',
        'EnhancedVpcRouting': True|False,
        'IamRoles': [
            {
                'IamRoleArn': 'string',
                'ApplyStatus': 'string'
            },
        ],
        'PendingActions': [
            'string',
        ],
        'MaintenanceTrackName': 'string',
        'ElasticResizeNumberOfNodeOptions': 'string',
        'DeferredMaintenanceWindows': [
            {
                'DeferMaintenanceIdentifier': 'string',
                'DeferMaintenanceStartTime': datetime(2015, 1, 1),
                'DeferMaintenanceEndTime': datetime(2015, 1, 1)
            },
        ],
        'SnapshotScheduleIdentifier': 'string',
        'SnapshotScheduleState': 'MODIFYING'|'ACTIVE'|'FAILED',
        'ExpectedNextSnapshotScheduleTime': datetime(2015, 1, 1),
        'ExpectedNextSnapshotScheduleTimeStatus': 'string',
        'NextMaintenanceWindowStartTime': datetime(2015, 1, 1),
        'ResizeInfo': {
            'ResizeType': 'string',
            'AllowCancelResize': True|False
        },
        'AvailabilityZoneRelocationStatus': 'string',
        'ClusterNamespaceArn': 'string',
        'TotalStorageCapacityInMegaBytes': 123,
        'AquaConfiguration': {
            'AquaStatus': 'enabled'|'disabled'|'applying',
            'AquaConfigurationStatus': 'enabled'|'disabled'|'auto'
        },
        'DefaultIamRoleArn': 'string',
        'ReservedNodeExchangeStatus': {
            'ReservedNodeExchangeRequestId': 'string',
            'Status': 'REQUESTED'|'PENDING'|'IN_PROGRESS'|'RETRYING'|'SUCCEEDED'|'FAILED',
            'RequestTime': datetime(2015, 1, 1),
            'SourceReservedNodeId': 'string',
            'SourceReservedNodeType': 'string',
            'SourceReservedNodeCount': 123,
            'TargetReservedNodeOfferingId': 'string',
            'TargetReservedNodeType': 'string',
            'TargetReservedNodeCount': 123
        },
        'CustomDomainName': 'string',
        'CustomDomainCertificateArn': 'string',
        'CustomDomainCertificateExpiryDate': datetime(2015, 1, 1),
        'MasterPasswordSecretArn': 'string',
        'MasterPasswordSecretKmsKeyId': 'string',
        'IpAddressType': 'string',
        'MultiAZ': 'string',
        'MultiAZSecondary': {
            'AvailabilityZone': 'string',
            'ClusterNodes': [
                {
                    'NodeRole': 'string',
                    'PrivateIPAddress': 'string',
                    'PublicIPAddress': 'string'
                },
            ]
        }
    }
}

Response Structure

  • (dict) –

    • Cluster (dict) –

      Describes a cluster.

      • ClusterIdentifier (string) –

        The unique identifier of the cluster.

      • NodeType (string) –

        The node type for the nodes in the cluster.

      • ClusterStatus (string) –

        The current state of the cluster. Possible values are the following:

        • available

        • available, prep-for-resize

        • available, resize-cleanup

        • cancelling-resize

        • creating

        • deleting

        • final-snapshot

        • hardware-failure

        • incompatible-hsm

        • incompatible-network

        • incompatible-parameters

        • incompatible-restore

        • modifying

        • paused

        • rebooting

        • renaming

        • resizing

        • rotating-keys

        • storage-full

        • updating-hsm

      • ClusterAvailabilityStatus (string) –

        The availability status of the cluster for queries. Possible values are the following:

        • Available - The cluster is available for queries.

        • Unavailable - The cluster is not available for queries.

        • Maintenance - The cluster is intermittently available for queries due to maintenance activities.

        • Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.

        • Failed - The cluster failed and is not available for queries.

      • ModifyStatus (string) –

        The status of a modify operation, if any, initiated for the cluster.

      • MasterUsername (string) –

        The admin user name for the cluster. This name is used to connect to the database that is specified in the DBName parameter.

      • DBName (string) –

        The name of the initial database that was created when the cluster was created. This same name is returned for the life of the cluster. If an initial database was not specified, a database named ``dev``dev was created by default.

      • Endpoint (dict) –

        The connection endpoint.

        • Address (string) –

          The DNS address of the Cluster.

        • Port (integer) –

          The port that the database engine is listening on.

        • VpcEndpoints (list) –

          Describes a connection endpoint.

          • (dict) –

            The connection endpoint for connecting to an Amazon Redshift cluster through the proxy.

            • VpcEndpointId (string) –

              The connection endpoint ID for connecting an Amazon Redshift cluster through the proxy.

            • VpcId (string) –

              The VPC identifier that the endpoint is associated.

            • NetworkInterfaces (list) –

              One or more network interfaces of the endpoint. Also known as an interface endpoint.

              • (dict) –

                Describes a network interface.

                • NetworkInterfaceId (string) –

                  The network interface identifier.

                • SubnetId (string) –

                  The subnet identifier.

                • PrivateIpAddress (string) –

                  The IPv4 address of the network interface within the subnet.

                • AvailabilityZone (string) –

                  The Availability Zone.

                • Ipv6Address (string) –

                  The IPv6 address of the network interface within the subnet.

      • ClusterCreateTime (datetime) –

        The date and time that the cluster was created.

      • AutomatedSnapshotRetentionPeriod (integer) –

        The number of days that automatic cluster snapshots are retained.

      • ManualSnapshotRetentionPeriod (integer) –

        The 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.

        The value must be either -1 or an integer between 1 and 3,653.

      • ClusterSecurityGroups (list) –

        A list of cluster security group that are associated with the cluster. Each security group is represented by an element that contains ClusterSecurityGroup.Name and ClusterSecurityGroup.Status subelements.

        Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC). Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups parameter.

        • (dict) –

          Describes a cluster security group.

          • ClusterSecurityGroupName (string) –

            The name of the cluster security group.

          • Status (string) –

            The status of the cluster security group.

      • VpcSecurityGroups (list) –

        A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This parameter is returned only if the cluster is in a VPC.

        • (dict) –

          Describes the members of a VPC security group.

          • VpcSecurityGroupId (string) –

            The identifier of the VPC security group.

          • Status (string) –

            The status of the VPC security group.

      • ClusterParameterGroups (list) –

        The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is returned with its status.

        • (dict) –

          Describes the status of a parameter group.

          • ParameterGroupName (string) –

            The name of the cluster parameter group.

          • ParameterApplyStatus (string) –

            The status of parameter updates.

          • ClusterParameterStatusList (list) –

            The list of parameter statuses.

            For more information about parameters and parameter groups, go to Amazon Redshift Parameter Groups in the Amazon Redshift Cluster Management Guide.

            • (dict) –

              Describes the status of a parameter group.

              • ParameterName (string) –

                The name of the parameter.

              • ParameterApplyStatus (string) –

                The status of the parameter that indicates whether the parameter is in sync with the database, waiting for a cluster reboot, or encountered an error when being applied.

                The following are possible statuses and descriptions.

                • in-sync: The parameter value is in sync with the database.

                • pending-reboot: The parameter value will be applied after the cluster reboots.

                • applying: The parameter value is being applied to the database.

                • invalid-parameter: Cannot apply the parameter value because it has an invalid value or syntax.

                • apply-deferred: The parameter contains static property changes. The changes are deferred until the cluster reboots.

                • apply-error: Cannot connect to the cluster. The parameter change will be applied after the cluster reboots.

                • unknown-error: Cannot apply the parameter change right now. The change will be applied after the cluster reboots.

              • ParameterApplyErrorDescription (string) –

                The error that prevented the parameter from being applied to the database.

      • ClusterSubnetGroupName (string) –

        The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster is in a VPC.

      • VpcId (string) –

        The identifier of the VPC the cluster is in, if the cluster is in a VPC.

      • AvailabilityZone (string) –

        The name of the Availability Zone in which the cluster is located.

      • PreferredMaintenanceWindow (string) –

        The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.

      • PendingModifiedValues (dict) –

        A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are identified by subelements.

        • MasterUserPassword (string) –

          The pending or in-progress change of the admin user password for the cluster.

        • NodeType (string) –

          The pending or in-progress change of the cluster’s node type.

        • NumberOfNodes (integer) –

          The pending or in-progress change of the number of nodes in the cluster.

        • ClusterType (string) –

          The pending or in-progress change of the cluster type.

        • ClusterVersion (string) –

          The pending or in-progress change of the service version.

        • AutomatedSnapshotRetentionPeriod (integer) –

          The pending or in-progress change of the automated snapshot retention period.

        • ClusterIdentifier (string) –

          The pending or in-progress change of the new identifier for the cluster.

        • PubliclyAccessible (boolean) –

          The pending or in-progress change of the ability to connect to the cluster from the public network.

        • EnhancedVpcRouting (boolean) –

          An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

          If this option is true, enhanced VPC routing is enabled.

          Default: false

        • MaintenanceTrackName (string) –

          The name of the maintenance track that the cluster will change to during the next maintenance window.

        • EncryptionType (string) –

          The encryption type for a cluster. Possible values are: KMS and None.

      • ClusterVersion (string) –

        The version ID of the Amazon Redshift engine that is running on the cluster.

      • AllowVersionUpgrade (boolean) –

        A boolean value that, if true, indicates that major version upgrades will be applied automatically to the cluster during the maintenance window.

      • NumberOfNodes (integer) –

        The number of compute nodes in the cluster.

      • PubliclyAccessible (boolean) –

        A boolean value that, if true, indicates that the cluster can be accessed from a public network.

      • Encrypted (boolean) –

        A boolean value that, if true, indicates that data in the cluster is encrypted at rest.

      • RestoreStatus (dict) –

        A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not created by restoring a snapshot.

        • Status (string) –

          The status of the restore action. Returns starting, restoring, completed, or failed.

        • CurrentRestoreRateInMegaBytesPerSecond (float) –

          The number of megabytes per second being transferred from the backup storage. Returns the average rate for a completed backup. This field is only updated when you restore to DC2 node types.

        • SnapshotSizeInMegaBytes (integer) –

          The size of the set of snapshot data used to restore the cluster. This field is only updated when you restore to DC2 node types.

        • ProgressInMegaBytes (integer) –

          The number of megabytes that have been transferred from snapshot storage. This field is only updated when you restore to DC2 node types.

        • ElapsedTimeInSeconds (integer) –

          The amount of time an in-progress restore has been running, or the amount of time it took a completed restore to finish. This field is only updated when you restore to DC2 node types.

        • EstimatedTimeToCompletionInSeconds (integer) –

          The estimate of the time remaining before the restore will complete. Returns 0 for a completed restore. This field is only updated when you restore to DC2 node types.

      • DataTransferProgress (dict) –

        • Status (string) –

          Describes the status of the cluster. While the transfer is in progress the status is transferringdata.

        • CurrentRateInMegaBytesPerSecond (float) –

          Describes the data transfer rate in MB’s per second.

        • TotalDataInMegaBytes (integer) –

          Describes the total amount of data to be transfered in megabytes.

        • DataTransferredInMegaBytes (integer) –

          Describes the total amount of data that has been transfered in MB’s.

        • EstimatedTimeToCompletionInSeconds (integer) –

          Describes the estimated number of seconds remaining to complete the transfer.

        • ElapsedTimeInSeconds (integer) –

          Describes the number of seconds that have elapsed during the data transfer.

      • HsmStatus (dict) –

        A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM) settings changes specified in a modify cluster command.

        Values: active, applying

        • HsmClientCertificateIdentifier (string) –

          Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption keys stored in an HSM.

        • HsmConfigurationIdentifier (string) –

          Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to retrieve and store keys in an HSM.

        • Status (string) –

          Reports whether the Amazon Redshift cluster has finished applying any HSM settings changes specified in a modify cluster command.

          Values: active, applying

      • ClusterSnapshotCopyStatus (dict) –

        A value that returns the destination region and retention period that are configured for cross-region snapshot copy.

        • DestinationRegion (string) –

          The destination region that snapshots are automatically copied to when cross-region snapshot copy is enabled.

        • RetentionPeriod (integer) –

          The number of days that automated snapshots are retained in the destination region after they are copied from a source region.

        • ManualSnapshotRetentionPeriod (integer) –

          The number of days that automated snapshots are retained in the destination region after they are copied from a source region. If the value is -1, the manual snapshot is retained indefinitely.

          The value must be either -1 or an integer between 1 and 3,653.

        • SnapshotCopyGrantName (string) –

          The name of the snapshot copy grant.

      • ClusterPublicKey (string) –

        The public key for the cluster.

      • ClusterNodes (list) –

        The nodes in the cluster.

        • (dict) –

          The identifier of a node in a cluster.

          • NodeRole (string) –

            Whether the node is a leader node or a compute node.

          • PrivateIPAddress (string) –

            The private IP address of a node within a cluster.

          • PublicIPAddress (string) –

            The public IP address of a node within a cluster.

      • ElasticIpStatus (dict) –

        The status of the elastic IP (EIP) address.

        • ElasticIp (string) –

          The elastic IP (EIP) address for the cluster.

        • Status (string) –

          The status of the elastic IP (EIP) address.

      • ClusterRevisionNumber (string) –

        The specific revision number of the database in the cluster.

      • Tags (list) –

        The list of tags for the cluster.

        • (dict) –

          A tag consisting of a name/value pair for a resource.

          • Key (string) –

            The key, or name, for the resource tag.

          • Value (string) –

            The value for the resource tag.

      • KmsKeyId (string) –

        The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.

      • EnhancedVpcRouting (boolean) –

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

      • IamRoles (list) –

        A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web Services services.

        • (dict) –

          An Identity and Access Management (IAM) role that can be used by the associated Amazon Redshift cluster to access other Amazon Web Services services.

          • IamRoleArn (string) –

            The Amazon Resource Name (ARN) of the IAM role, for example, arn:aws:iam::123456789012:role/RedshiftCopyUnload.

          • ApplyStatus (string) –

            A value that describes the status of the IAM role’s association with an Amazon Redshift cluster.

            The following are possible statuses and descriptions.

            • in-sync: The role is available for use by the cluster.

            • adding: The role is in the process of being associated with the cluster.

            • removing: The role is in the process of being disassociated with the cluster.

      • PendingActions (list) –

        Cluster operations that are waiting to be started.

        • (string) –

      • MaintenanceTrackName (string) –

        The name of the maintenance track for the cluster.

      • ElasticResizeNumberOfNodeOptions (string) –

        The number of nodes that you can resize the cluster to with the elastic resize method.

      • DeferredMaintenanceWindows (list) –

        Describes a group of DeferredMaintenanceWindow objects.

        • (dict) –

          Describes a deferred maintenance window

          • DeferMaintenanceIdentifier (string) –

            A unique identifier for the maintenance window.

          • DeferMaintenanceStartTime (datetime) –

            A timestamp for the beginning of the time period when we defer maintenance.

          • DeferMaintenanceEndTime (datetime) –

            A timestamp for the end of the time period when we defer maintenance.

      • SnapshotScheduleIdentifier (string) –

        A unique identifier for the cluster snapshot schedule.

      • SnapshotScheduleState (string) –

        The current state of the cluster snapshot schedule.

      • ExpectedNextSnapshotScheduleTime (datetime) –

        The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot schedule and backups enabled.

      • ExpectedNextSnapshotScheduleTimeStatus (string) –

        The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled. Possible values are the following:

        • OnTrack - The next snapshot is expected to be taken on time.

        • Pending - The next snapshot is pending to be taken.

      • NextMaintenanceWindowStartTime (datetime) –

        The date and time in UTC when system maintenance can begin.

      • ResizeInfo (dict) –

        Returns the following:

        • AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.

        • ResizeType: Returns ClassicResize

        • ResizeType (string) –

          Returns the value ClassicResize.

        • AllowCancelResize (boolean) –

          A boolean value indicating if the resize operation can be cancelled.

      • AvailabilityZoneRelocationStatus (string) –

        Describes the status of the Availability Zone relocation operation.

      • ClusterNamespaceArn (string) –

        The namespace Amazon Resource Name (ARN) of the cluster.

      • TotalStorageCapacityInMegaBytes (integer) –

        The total storage capacity of the cluster in megabytes.

      • AquaConfiguration (dict) –

        This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).

        • AquaStatus (string) –

          This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).

        • AquaConfigurationStatus (string) –

          This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).

      • DefaultIamRoleArn (string) –

        The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.

      • ReservedNodeExchangeStatus (dict) –

        The status of the reserved-node exchange request. Statuses include in-progress and requested.

        • ReservedNodeExchangeRequestId (string) –

          The identifier of the reserved-node exchange request.

        • Status (string) –

          The status of the reserved-node exchange request. Statuses include in-progress and requested.

        • RequestTime (datetime) –

          A date and time that indicate when the reserved-node exchange was requested.

        • SourceReservedNodeId (string) –

          The identifier of the source reserved node.

        • SourceReservedNodeType (string) –

          The source reserved-node type, for example ra3.4xlarge.

        • SourceReservedNodeCount (integer) –

          The source reserved-node count in the cluster.

        • TargetReservedNodeOfferingId (string) –

          The identifier of the target reserved node offering.

        • TargetReservedNodeType (string) –

          The node type of the target reserved node, for example ra3.4xlarge.

        • TargetReservedNodeCount (integer) –

          The count of target reserved nodes in the cluster.

      • CustomDomainName (string) –

        The custom domain name associated with the cluster.

      • CustomDomainCertificateArn (string) –

        The certificate Amazon Resource Name (ARN) for the custom domain name.

      • CustomDomainCertificateExpiryDate (datetime) –

        The expiration date for the certificate associated with the custom domain name.

      • MasterPasswordSecretArn (string) –

        The Amazon Resource Name (ARN) for the cluster’s admin user credentials secret.

      • MasterPasswordSecretKmsKeyId (string) –

        The ID of the Key Management Service (KMS) key used to encrypt and store the cluster’s admin credentials secret.

      • IpAddressType (string) –

        The IP address type for the cluster. Possible values are ipv4 and dualstack.

      • MultiAZ (string) –

        A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.

      • MultiAZSecondary (dict) –

        The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.

        • AvailabilityZone (string) –

          The name of the Availability Zone in which the secondary compute unit of the cluster is located.

        • ClusterNodes (list) –

          The nodes in the secondary compute unit.

          • (dict) –

            The identifier of a node in a cluster.

            • NodeRole (string) –

              Whether the node is a leader node or a compute node.

            • PrivateIPAddress (string) –

              The private IP address of a node within a cluster.

            • PublicIPAddress (string) –

              The public IP address of a node within a cluster.

Exceptions

  • Redshift.Client.exceptions.ClusterAlreadyExistsFault

  • Redshift.Client.exceptions.InsufficientClusterCapacityFault

  • Redshift.Client.exceptions.ClusterParameterGroupNotFoundFault

  • Redshift.Client.exceptions.ClusterSecurityGroupNotFoundFault

  • Redshift.Client.exceptions.ClusterQuotaExceededFault

  • Redshift.Client.exceptions.NumberOfNodesQuotaExceededFault

  • Redshift.Client.exceptions.NumberOfNodesPerClusterLimitExceededFault

  • Redshift.Client.exceptions.ClusterSubnetGroupNotFoundFault

  • Redshift.Client.exceptions.InvalidVPCNetworkStateFault

  • Redshift.Client.exceptions.InvalidClusterSubnetGroupStateFault

  • Redshift.Client.exceptions.InvalidSubnet

  • Redshift.Client.exceptions.UnauthorizedOperation

  • Redshift.Client.exceptions.HsmClientCertificateNotFoundFault

  • Redshift.Client.exceptions.HsmConfigurationNotFoundFault

  • Redshift.Client.exceptions.InvalidElasticIpFault

  • Redshift.Client.exceptions.TagLimitExceededFault

  • Redshift.Client.exceptions.InvalidTagFault

  • Redshift.Client.exceptions.LimitExceededFault

  • Redshift.Client.exceptions.DependentServiceRequestThrottlingFault

  • Redshift.Client.exceptions.InvalidClusterTrackFault

  • Redshift.Client.exceptions.SnapshotScheduleNotFoundFault

  • Redshift.Client.exceptions.InvalidRetentionPeriodFault

  • Redshift.Client.exceptions.Ipv6CidrBlockNotFoundFault

  • Redshift.Client.exceptions.UnsupportedOperationFault

  • Redshift.Client.exceptions.RedshiftIdcApplicationNotExistsFault