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.
Actualice la versión de Apache Kafka
Puede actualizar un clúster de MSK existente a una versión más reciente de Apache Kafka. Antes de actualizar la versión de Kafka del clúster, compruebe que la versión del software del lado del cliente sea compatible con las funciones de la nueva versión de Kafka.
Para obtener información sobre cómo hacer que un clúster esté altamente disponible durante una actualización, consulte. Crear clústeres de alta disponibilidad
Actualice la versión de Apache Kafka mediante el AWS Management Console
Abra la consola de Amazon MSK en https://console.aws.amazon.com/msk/
. -
En la barra de navegación, elija la región en la que creó el clúster de MSK.
-
Elija el clúster de MSK que desee actualizar.
-
En la pestaña Propiedades, elija Actualizar en la sección de versiones de Apache Kafka.
-
En la sección de la versión de Apache Kafka, haga lo siguiente:
-
En la lista desplegable Elija la versión de Apache Kafka, elija la versión de destino a la que desee actualizar. En este ejemplo, elija
3.9.x
. -
(Opcional) Seleccione Ver compatibilidad de versiones para comprobar la compatibilidad entre la versión actual del clúster y las versiones de actualización disponibles. A continuación, selecciona Elegir para continuar.
nota
Amazon MSK admite actualizaciones locales de 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 nuevo clúster y cambie los clientes al nuevo clúster.
-
(Opcional) Seleccione la casilla Actualizar la configuración del clúster para aplicar las actualizaciones de configuración compatibles con la nueva versión. Esto habilita las funciones y mejoras de la nueva versión.
Puede omitir este paso si necesita mantener las configuraciones personalizadas existentes.
nota
-
Las actualizaciones del lado del servidor no actualizan automáticamente las aplicaciones cliente.
-
Para mantener la estabilidad del clúster, no se admiten las bajadas de versión.
-
-
Selecciona Actualizar para iniciar el proceso.
-
Actualice la versión de Apache Kafka con el AWS CLI
Ejecute el siguiente comando, reemplazando
ClusterArn
por 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
El resultado 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" ] } ] }
-
Ejecute el siguiente comando, reemplazando
ClusterArn
por 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. PuesTargetVersion
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 CLI describe-cluster
. Un ejemplo de ID de versión es KTVPDKIKX0DER
.aws kafka update-cluster-kafka-version --cluster-arn
ClusterArn
--current-versionCurrent-Cluster-Version
--target-kafka-versionTargetVersion
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" }
-
Para obtener el resultado de la
update-cluster-kafka-version
operación, ejecute el siguiente comando yClusterOperationArn
reemplácelo por el ARN que obtuvo en el resultado delupdate-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 valorUPDATE_IN_PROGRESS
, espere un rato y vuelva a ejecutar el comandodescribe-cluster-operation
. Cuando se completa la operación, el valor deOperationState
se convierte enUPDATE_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.
Actualice la versión de Apache Kafka mediante la API
Ejecute la GetCompatibleKafkaVersionsoperación para obtener una lista de las versiones de Apache Kafka a las que puede actualizar el clúster.
Ejecute la UpdateClusterKafkaVersionoperación para actualizar el clúster a una de las versiones compatibles de Apache Kafka.