Skip to content

update_multi_region_cluster

update_multi_region_cluster(
    multi_region_cluster_name: String,
    *,
    config_overrides: Optional[MemoryDBClientConfig] = None,
    node_type: Optional[String] = None,
    description: Optional[String] = None,
    engine_version: Optional[String] = None,
    shard_configuration: Optional[ShardConfigurationRequest] = None,
    multi_region_parameter_group_name: Optional[String] = None,
    update_strategy: Optional[UpdateStrategy] = None,
) -> UpdateMultiRegionClusterResponse

Updates the configuration of an existing multi-Region cluster.

Parameters:

  • multi_region_cluster_name (String) –

    The name of the multi-Region cluster to be updated.

  • node_type (Optional[String], default: None ) –

    The new node type to be used for the multi-Region cluster.

  • description (Optional[String], default: None ) –

    A new description for the multi-Region cluster.

  • engine_version (Optional[String], default: None ) –

    The new engine version to be used for the multi-Region cluster.

  • multi_region_parameter_group_name (Optional[String], default: None ) –

    The new multi-Region parameter group to be associated with the cluster.

  • update_strategy (Optional[UpdateStrategy], default: None ) –

    The strategy to use for the update operation. Supported values are "coordinated" or "uncoordinated".

Raises:

Source code in docs_src/capo_memorydb/_services/memory_db.py
def update_multi_region_cluster(
    self,
    multi_region_cluster_name: "capo_memorydb.types.string.String",
    *,
    config_overrides: Optional[MemoryDBClientConfig] = None,
    node_type: Optional["capo_memorydb.types.string.String"] = None,
    description: Optional["capo_memorydb.types.string.String"] = None,
    engine_version: Optional["capo_memorydb.types.string.String"] = None,
    shard_configuration: Optional[
        "capo_memorydb.types.shard_configuration_request.ShardConfigurationRequest"
    ] = None,
    multi_region_parameter_group_name: Optional[
        "capo_memorydb.types.string.String"
    ] = None,
    update_strategy: Optional[
        "capo_memorydb.types.update_strategy.UpdateStrategy"
    ] = None,
) -> "capo_memorydb.types.update_multi_region_cluster_response.UpdateMultiRegionClusterResponse":
    """<p>Updates the configuration of an existing multi-Region cluster.</p>

    Args:
        multi_region_cluster_name: <p>The name of the multi-Region cluster to be updated.</p>
        node_type: <p>The new node type to be used for the multi-Region cluster.</p>
        description: <p>A new description for the multi-Region cluster.</p>
        engine_version: <p>The new engine version to be used for the multi-Region cluster.</p>
        multi_region_parameter_group_name: <p>The new multi-Region parameter group to be associated with the cluster.</p>
        update_strategy: <p>The strategy to use for the update operation. Supported values are "coordinated" or "uncoordinated".</p>

    Raises:
        capo_memorydb.errors.invalid_multi_region_cluster_state_fault.InvalidMultiRegionClusterStateFault: <p>The requested operation cannot be performed on the multi-Region cluster in its current state.</p>
        capo_memorydb.errors.invalid_parameter_combination_exception.InvalidParameterCombinationException: <p>The specified parameter combination is not valid.</p>
        capo_memorydb.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>The specified parameter value is not valid.</p>
        capo_memorydb.errors.multi_region_cluster_not_found_fault.MultiRegionClusterNotFoundFault: <p>The specified multi-Region cluster does not exist.</p>
        capo_memorydb.errors.multi_region_parameter_group_not_found_fault.MultiRegionParameterGroupNotFoundFault: <p>The specified multi-Region parameter group does not exist.</p>
        capo_memorydb.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_memorydb.types.update_multi_region_cluster_request.UpdateMultiRegionClusterRequest]",
    ) -> OperationResponse[
        "capo_memorydb.types.update_multi_region_cluster_response.UpdateMultiRegionClusterResponse"
    ]:
        import capo_memorydb._operations.amazon_memory_db.update_multi_region_cluster

        output, http_response = (
            capo_memorydb._operations.amazon_memory_db.update_multi_region_cluster.update_multi_region_cluster(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateMultiRegionCluster")
    )
    input_: capo_memorydb.types.update_multi_region_cluster_request.UpdateMultiRegionClusterRequest = {
        "multi_region_cluster_name": multi_region_cluster_name
    }
    if node_type is not None:
        input_["node_type"] = node_type
    if description is not None:
        input_["description"] = description
    if engine_version is not None:
        input_["engine_version"] = engine_version
    if shard_configuration is not None:
        input_["shard_configuration"] = shard_configuration
    if multi_region_parameter_group_name is not None:
        input_["multi_region_parameter_group_name"] = (
            multi_region_parameter_group_name
        )
    if update_strategy is not None:
        input_["update_strategy"] = update_strategy

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output