Actualización de la versión de Apache Kafka - Transmisión administrada de Amazon para Apache Kafka

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Actualización de la versión de Apache Kafka

Puede actualizar un clúster de Amazon MSK existente a una versión más reciente de Apache Kafka. Antes de actualizar la versión de Kafka del clúster, verifique que la versión del software del lado del cliente admita las características de la nueva versión de Kafka.

Para obtener información sobre cómo mantener un clúster con alta disponibilidad durante una actualización, consulte Crear clústeres de alta disponibilidad.

Actualice la versión de Apache Kafka con el Consola de administración de AWS
  1. Abra la consola de Amazon MSK en https://console.aws.amazon.com/msk/.

  2. En la barra de navegación, seleccione la región en la que creó el clúster de MSK.

  3. Seleccione el clúster de Amazon MSK que desea actualizar.

  4. En la pestaña Propiedades, elija Actualizar en la sección Versión de Apache Kafka.

  5. En la sección Versión de Apache Kafka, realice lo siguiente:

    1. En la lista desplegable Elegir versión de Apache Kafka, seleccione la versión de destino a la que desea realizar la actualización. En este ejemplo, elija 3.9.x.

    2. (Opcional) Seleccione Ver compatibilidad de versiones para verificar la compatibilidad entre la versión actual del clúster y las versiones disponibles para la actualización. Luego, seleccione Elegir para continuar.

      nota

      Amazon MSK admite actualizaciones de versión en el lugar para la mayoría de las versiones de Apache Kafka. Sin embargo, al actualizar de una versión ZooKeeper basada en Kafka a una versión KRaft basada en Kafka, debe crear un clúster nuevo. A continuación, copie los datos en el clúster nuevo y cambie los clientes para que utilicen dicho clúster.

    3. (Opcional) Seleccione la casilla Actualizar la configuración del clúster para aplicar actualizaciones de configuración compatibles con la nueva versión. Esto habilita las nuevas características y mejoras de la versión.

      Puede omitir este paso si necesita mantener las configuraciones personalizadas existentes.

      nota
      • Las actualizaciones del servidor no actualizan automáticamente las aplicaciones cliente.

      • Para mantener la estabilidad del clúster, no se admiten reducciones de versión.

    4. Seleccione Actualizar versión para iniciar el proceso.

Actualice la versión de Apache Kafka mediante AWS CLI
  1. Ejecute el siguiente comando, reemplazando ClusterArnpor el nombre de recurso de Amazon (ARN) que obtuvo al crear el clúster. Si no tiene el ARN para su clúster, puede encontrarlo enumerando todos los clústeres. Para obtener más información, consulte Enumeración de clústeres de Amazon MSK.

    aws kafka get-compatible-kafka-versions --cluster-arn ClusterArn

    La salida de este comando incluye una lista de las versiones de Apache Kafka a las que puede actualizar el clúster. Es similar al ejemplo siguiente.

    { "CompatibleKafkaVersions": [ { "SourceVersion": "2.2.1", "TargetVersions": [ "2.3.1", "2.4.1", "2.4.1.1", "2.5.1" ] } ] }
  2. Ejecute el siguiente comando, reemplazando ClusterArnpor el nombre de recurso de Amazon (ARN) que obtuvo al crear el clúster. Si no tiene el ARN para su clúster, puede encontrarlo enumerando todos los clústeres. Para obtener más información, consulte Enumeración de clústeres de Amazon MSK.

    Reemplace Current-Cluster-Version con la versión actual del clúster. Pues TargetVersion puede especificar cualquiera de las versiones de destino a partir del resultado del comando anterior.

    importante

    Las versiones de clúster no son enteros simples. Para encontrar la versión actual del clúster, utilice la DescribeClusteroperación o el comando AWS CLIdescribe-cluster. Un ejemplo de ID de versión es KTVPDKIKX0DER.

    aws kafka update-cluster-kafka-version --cluster-arn ClusterArn --current-version Current-Cluster-Version --target-kafka-version TargetVersion

    El resultado del comando anterior tiene un aspecto similar al siguiente JSON.

    { "ClusterArn": "arn:aws:kafka:us-east-1:012345678012:cluster/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2", "ClusterOperationArn": "arn:aws:kafka:us-east-1:012345678012:cluster-operation/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2/0123abcd-abcd-4f7f-1234-9876543210ef" }
  3. Para obtener el resultado de la update-cluster-kafka-version operación, ejecute el siguiente comando y ClusterOperationArn reemplácelo por el ARN que obtuvo en el resultado del update-cluster-kafka-version comando.

    aws kafka describe-cluster-operation --cluster-operation-arn ClusterOperationArn

    El resultado de este comando describe-cluster-operation tendrá un aspecto similar al siguiente.

    { "ClusterOperationInfo": { "ClientRequestId": "62cd41d2-1206-4ebf-85a8-dbb2ba0fe259", "ClusterArn": "arn:aws:kafka:us-east-1:012345678012:cluster/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2", "CreationTime": "2021-03-11T20:34:59.648000+00:00", "OperationArn": "arn:aws:kafka:us-east-1:012345678012:cluster-operation/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2/0123abcd-abcd-4f7f-1234-9876543210ef", "OperationState": "UPDATE_IN_PROGRESS", "OperationSteps": [ { "StepInfo": { "StepStatus": "IN_PROGRESS" }, "StepName": "INITIALIZE_UPDATE" }, { "StepInfo": { "StepStatus": "PENDING" }, "StepName": "UPDATE_APACHE_KAFKA_BINARIES" }, { "StepInfo": { "StepStatus": "PENDING" }, "StepName": "FINALIZE_UPDATE" } ], "OperationType": "UPDATE_CLUSTER_KAFKA_VERSION", "SourceClusterInfo": { "KafkaVersion": "2.4.1" }, "TargetClusterInfo": { "KafkaVersion": "2.6.1" } } }

    Si OperationState tiene el valor UPDATE_IN_PROGRESS, espere un rato y vuelva a ejecutar el comando describe-cluster-operation. Cuando se completa la operación, el valor de OperationState se convierte en UPDATE_COMPLETE. Como el tiempo necesario para que Amazon MSK complete la operación varía, es posible que tenga que comprobarlo varias veces hasta que se complete la operación.

Actualización de la versión de Apache Kafka mediante la API
  1. Invoque la GetCompatibleKafkaVersionsoperación para obtener una lista de las versiones de Apache Kafka a las que puede actualizar el clúster.

  2. Ejecute la UpdateClusterKafkaVersionoperación para actualizar el clúster a una de las versiones compatibles de Apache Kafka.