:doc:`Kafka <../../kafka>` / Client / update_storage

**************
update_storage
**************



.. py:method:: Kafka.Client.update_storage(**kwargs)

  Updates cluster broker volume size (or) sets cluster storage mode to TIERED.

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/UpdateStorage>`_  


  **Request Syntax**
  ::

    response = client.update_storage(
        ClusterArn='string',
        CurrentVersion='string',
        ProvisionedThroughput={
            'Enabled': True|False,
            'VolumeThroughput': 123
        },
        StorageMode='LOCAL'|'TIERED',
        VolumeSizeGB=123
    )
    
  :type ClusterArn: string
  :param ClusterArn: **[REQUIRED]** 

    The Amazon Resource Name (ARN) of the cluster to be updated.

    

  
  :type CurrentVersion: string
  :param CurrentVersion: **[REQUIRED]** 

    The version of cluster to update from. A successful operation will then generate a new version.

    

  
  :type ProvisionedThroughput: dict
  :param ProvisionedThroughput: 

    EBS volume provisioned throughput information.

    

  
    - **Enabled** *(boolean) --* 

      Provisioned throughput is enabled or not.

      

    
    - **VolumeThroughput** *(integer) --* 

      Throughput value of the EBS volumes for the data drive on each kafka broker node in MiB per second.

      

    
  
  :type StorageMode: string
  :param StorageMode: 

    Controls storage mode for supported storage tiers.

    

  
  :type VolumeSizeGB: integer
  :param VolumeSizeGB: 

    size of the EBS volume to update.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'ClusterArn': 'string',
          'ClusterOperationArn': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* HTTP Status Code 200: OK.
      

      - **ClusterArn** *(string) --* 

        The Amazon Resource Name (ARN) of the cluster.

        
      

      - **ClusterOperationArn** *(string) --* 

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

        
  
  **Exceptions**
  
  *   :py:class:`Kafka.Client.exceptions.BadRequestException`

  
  *   :py:class:`Kafka.Client.exceptions.UnauthorizedException`

  
  *   :py:class:`Kafka.Client.exceptions.InternalServerErrorException`

  
  *   :py:class:`Kafka.Client.exceptions.ForbiddenException`

  
  *   :py:class:`Kafka.Client.exceptions.NotFoundException`

  
  *   :py:class:`Kafka.Client.exceptions.ServiceUnavailableException`

  
  *   :py:class:`Kafka.Client.exceptions.TooManyRequestsException`

  