Atualize a versão do Apache Kafka - Amazon Managed Streaming for Apache Kafka

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Atualize a versão do Apache Kafka

Você pode atualizar um cluster MSK existente para uma versão mais recente do Apache Kafka. Antes de atualizar a versão do Kafka do seu cluster, verifique se a versão do software do lado do cliente oferece suporte aos recursos da nova versão do Kafka.

Para obter informações sobre como tornar um cluster altamente disponível durante uma atualização, consulteCriar clusters altamente disponíveis.

Atualize a versão do Apache Kafka usando o AWS Management Console
  1. Abra o console do Amazon MSK em https://console.aws.amazon.com/msk/.

  2. Na barra de navegação, escolha a região em que você criou o cluster MSK.

  3. Escolha o cluster MSK que você deseja atualizar.

  4. Na guia Propriedades, escolha Atualizar na seção Versão do Apache Kafka.

  5. Na seção de versão do Apache Kafka, faça o seguinte:

    1. Na lista suspensa Escolha a versão do Apache Kafka, escolha a versão de destino para a qual você deseja atualizar. Para este exemplo, selecione 3.9.x.

    2. (Opcional) Escolha Exibir compatibilidade de versão para verificar a compatibilidade entre a versão atual do cluster e as versões de upgrade disponíveis. Em seguida, selecione Escolher para continuar.

      nota

      O Amazon MSK oferece suporte a atualizações locais para a maioria das versões do Apache Kafka. No entanto, ao fazer o upgrade de uma versão ZooKeeper baseada no Kafka para uma versão KRaft baseada, você deve criar um novo cluster. Em seguida, copie seus dados para o novo cluster e troque os clientes para o novo cluster.

    3. (Opcional) Escolha a caixa de seleção Atualizar configuração do cluster para aplicar atualizações de configuração compatíveis com a nova versão. Isso habilita os recursos e melhorias da nova versão.

      Você pode pular essa etapa se precisar manter suas configurações personalizadas existentes.

      nota
      • As atualizações do lado do servidor não atualizam automaticamente os aplicativos cliente.

      • Para manter a estabilidade do cluster, não há suporte para downgrades de versão.

    4. Escolha Atualizar para iniciar o processo.

Atualize a versão do Apache Kafka usando o AWS CLI
  1. Execute o comando a seguir, substituindo ClusterArn pelo nome do recurso da Amazon (ARN) que você obteve quando criou o cluster. Se você não tiver o ARN do cluster, poderá encontrá-lo listando todos os clusters. Para obter mais informações, consulte Listar clusters do Amazon MSK.

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

    A saída desse comando inclui uma lista das versões do Apache Kafka para as quais você pode atualizar o cluster. Ela se parece com o exemplo a seguir.

    { "CompatibleKafkaVersions": [ { "SourceVersion": "2.2.1", "TargetVersions": [ "2.3.1", "2.4.1", "2.4.1.1", "2.5.1" ] } ] }
  2. Execute o comando a seguir, substituindo ClusterArn pelo nome do recurso da Amazon (ARN) que você obteve quando criou o cluster. Se você não tiver o ARN do cluster, poderá encontrá-lo listando todos os clusters. Para obter mais informações, consulte Listar clusters do Amazon MSK.

    Substitua Current-Cluster-Version pela versão atual do cluster. Pois TargetVersion você pode especificar qualquer uma das versões de destino a partir da saída do comando anterior.

    Importante

    As versões de cluster não são inteiros simples. Para encontrar a versão atual do cluster, use a DescribeClusteroperação ou o comando AWS CLI describe-cluster. Uma versão de exemplo é KTVPDKIKX0DER.

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

    A saída do comando anterior é semelhante ao JSON a seguir.

    { "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 obter o resultado da update-cluster-kafka-version operação, execute o comando a seguir, ClusterOperationArn substituindo-o pelo ARN obtido na saída do update-cluster-kafka-version comando.

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

    A saída desse comando describe-cluster-operation é semelhante ao seguinte JSON de exemplo.

    { "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" } } }

    Se OperationState tiver o valor UPDATE_IN_PROGRESS, aguarde um pouco e execute o comando describe-cluster-operation novamente. Quando a operação for concluída, o valor de OperationState será transformado em UPDATE_COMPLETE. Como o tempo necessário para que o Amazon MSK conclua a operação varia, talvez seja necessário verificar repetidamente até que a operação seja concluída.

Atualize a versão do Apache Kafka usando a API
  1. Invoque a GetCompatibleKafkaVersionsoperação para obter uma lista das versões do Apache Kafka para as quais você pode atualizar o cluster.

  2. Invoque a UpdateClusterKafkaVersionoperação para atualizar o cluster para uma das versões compatíveis do Apache Kafka.