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

*********************
update_broker_storage
*********************



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

  

  Updates the EBS storage associated with MSK brokers.

  

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


  **Request Syntax**
  ::

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

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

    

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

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

    

  
  :type TargetBrokerEBSVolumeInfo: list
  :param TargetBrokerEBSVolumeInfo: **[REQUIRED]** 

    Describes the target volume size and the ID of the broker to apply the update to.

    

  
    - *(dict) --* 

      Specifies the EBS volume upgrade information. The broker identifier must be set to the keyword ALL. This means the changes apply to all the brokers in the cluster.

      

    
      - **KafkaBrokerNodeId** *(string) --* **[REQUIRED]** 

        The ID of the broker to update.

        

      
      - **ProvisionedThroughput** *(dict) --* 

        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.

          

        
      
      - **VolumeSizeGB** *(integer) --* 

        Size of the EBS volume to update.

        

      
    

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

    
    ::

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

    

    - *(dict) --* 

      Successful response.

      
      

      - **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.ServiceUnavailableException`

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

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

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

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

  