DAX / Client / increase_replication_factor

increase_replication_factor#

DAX.Client.increase_replication_factor(**kwargs)#

Adds one or more nodes to a DAX cluster.

See also: AWS API Documentation

Request Syntax

response = client.increase_replication_factor(
    ClusterName='string',
    NewReplicationFactor=123,
    AvailabilityZones=[
        'string',
    ]
)
Parameters:
  • ClusterName (string) –

    [REQUIRED]

    The name of the DAX cluster that will receive additional nodes.

  • NewReplicationFactor (integer) –

    [REQUIRED]

    The new number of nodes for the DAX cluster.

  • AvailabilityZones (list) –

    The Availability Zones (AZs) in which the cluster nodes will be created. All nodes belonging to the cluster are placed in these Availability Zones. Use this parameter if you want to distribute the nodes across multiple AZs.

    • (string) –

Return type:

dict

Returns:

Response Syntax

{
    'Cluster': {
        'ClusterName': 'string',
        'Description': 'string',
        'ClusterArn': 'string',
        'TotalNodes': 123,
        'ActiveNodes': 123,
        'NodeType': 'string',
        'Status': 'string',
        'ClusterDiscoveryEndpoint': {
            'Address': 'string',
            'Port': 123,
            'URL': 'string'
        },
        'NodeIdsToRemove': [
            'string',
        ],
        'Nodes': [
            {
                'NodeId': 'string',
                'Endpoint': {
                    'Address': 'string',
                    'Port': 123,
                    'URL': 'string'
                },
                'NodeCreateTime': datetime(2015, 1, 1),
                'AvailabilityZone': 'string',
                'NodeStatus': 'string',
                'ParameterGroupStatus': 'string'
            },
        ],
        'PreferredMaintenanceWindow': 'string',
        'NotificationConfiguration': {
            'TopicArn': 'string',
            'TopicStatus': 'string'
        },
        'SubnetGroup': 'string',
        'SecurityGroups': [
            {
                'SecurityGroupIdentifier': 'string',
                'Status': 'string'
            },
        ],
        'IamRoleArn': 'string',
        'ParameterGroup': {
            'ParameterGroupName': 'string',
            'ParameterApplyStatus': 'string',
            'NodeIdsToReboot': [
                'string',
            ]
        },
        'SSEDescription': {
            'Status': 'ENABLING'|'ENABLED'|'DISABLING'|'DISABLED'
        },
        'ClusterEndpointEncryptionType': 'NONE'|'TLS'
    }
}

Response Structure

  • (dict) –

    • Cluster (dict) –

      A description of the DAX cluster. with its new replication factor.

      • ClusterName (string) –

        The name of the DAX cluster.

      • Description (string) –

        The description of the cluster.

      • ClusterArn (string) –

        The Amazon Resource Name (ARN) that uniquely identifies the cluster.

      • TotalNodes (integer) –

        The total number of nodes in the cluster.

      • ActiveNodes (integer) –

        The number of nodes in the cluster that are active (i.e., capable of serving requests).

      • NodeType (string) –

        The node type for the nodes in the cluster. (All nodes in a DAX cluster are of the same type.)

      • Status (string) –

        The current status of the cluster.

      • ClusterDiscoveryEndpoint (dict) –

        The endpoint for this DAX cluster, consisting of a DNS name, a port number, and a URL. Applications should use the URL to configure the DAX client to find their cluster.

        • Address (string) –

          The DNS hostname of the endpoint.

        • Port (integer) –

          The port number that applications should use to connect to the endpoint.

        • URL (string) –

          The URL that applications should use to connect to the endpoint. The default ports are 8111 for the “dax” protocol and 9111 for the “daxs” protocol.

      • NodeIdsToRemove (list) –

        A list of nodes to be removed from the cluster.

        • (string) –

      • Nodes (list) –

        A list of nodes that are currently in the cluster.

        • (dict) –

          Represents an individual node within a DAX cluster.

          • NodeId (string) –

            A system-generated identifier for the node.

          • Endpoint (dict) –

            The endpoint for the node, consisting of a DNS name and a port number. Client applications can connect directly to a node endpoint, if desired (as an alternative to allowing DAX client software to intelligently route requests and responses to nodes in the DAX cluster.

            • Address (string) –

              The DNS hostname of the endpoint.

            • Port (integer) –

              The port number that applications should use to connect to the endpoint.

            • URL (string) –

              The URL that applications should use to connect to the endpoint. The default ports are 8111 for the “dax” protocol and 9111 for the “daxs” protocol.

          • NodeCreateTime (datetime) –

            The date and time (in UNIX epoch format) when the node was launched.

          • AvailabilityZone (string) –

            The Availability Zone (AZ) in which the node has been deployed.

          • NodeStatus (string) –

            The current status of the node. For example: available.

          • ParameterGroupStatus (string) –

            The status of the parameter group associated with this node. For example, in-sync.

      • PreferredMaintenanceWindow (string) –

        A range of time when maintenance of DAX cluster software will be performed. For example: sun:01:00-sun:09:00. Cluster maintenance normally takes less than 30 minutes, and is performed automatically within the maintenance window.

      • NotificationConfiguration (dict) –

        Describes a notification topic and its status. Notification topics are used for publishing DAX events to subscribers using Amazon Simple Notification Service (SNS).

        • TopicArn (string) –

          The Amazon Resource Name (ARN) that identifies the topic.

        • TopicStatus (string) –

          The current state of the topic. A value of “active” means that notifications will be sent to the topic. A value of “inactive” means that notifications will not be sent to the topic.

      • SubnetGroup (string) –

        The subnet group where the DAX cluster is running.

      • SecurityGroups (list) –

        A list of security groups, and the status of each, for the nodes in the cluster.

        • (dict) –

          An individual VPC security group and its status.

          • SecurityGroupIdentifier (string) –

            The unique ID for this security group.

          • Status (string) –

            The status of this security group.

      • IamRoleArn (string) –

        A valid Amazon Resource Name (ARN) that identifies an IAM role. At runtime, DAX will assume this role and use the role’s permissions to access DynamoDB on your behalf.

      • ParameterGroup (dict) –

        The parameter group being used by nodes in the cluster.

        • ParameterGroupName (string) –

          The name of the parameter group.

        • ParameterApplyStatus (string) –

          The status of parameter updates.

        • NodeIdsToReboot (list) –

          The node IDs of one or more nodes to be rebooted.

          • (string) –

      • SSEDescription (dict) –

        The description of the server-side encryption status on the specified DAX cluster.

        • Status (string) –

          The current state of server-side encryption:

          • ENABLING - Server-side encryption is being enabled.

          • ENABLED - Server-side encryption is enabled.

          • DISABLING - Server-side encryption is being disabled.

          • DISABLED - Server-side encryption is disabled.

      • ClusterEndpointEncryptionType (string) –

        The type of encryption supported by the cluster’s endpoint. Values are:

        • NONE for no encryption TLS for Transport Layer Security

Exceptions

  • DAX.Client.exceptions.ClusterNotFoundFault

  • DAX.Client.exceptions.InvalidClusterStateFault

  • DAX.Client.exceptions.InsufficientClusterCapacityFault

  • DAX.Client.exceptions.InvalidVPCNetworkStateFault

  • DAX.Client.exceptions.NodeQuotaForClusterExceededFault

  • DAX.Client.exceptions.NodeQuotaForCustomerExceededFault

  • DAX.Client.exceptions.ServiceLinkedRoleNotFoundFault

  • DAX.Client.exceptions.InvalidParameterValueException

  • DAX.Client.exceptions.InvalidParameterCombinationException