Atualizar 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á.

Atualizar a versão do Apache Kafka

É possível atualizar um cluster do 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 no lado do cliente é compatível com os recursos da nova versão do Kafka.

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

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

  2. Na barra de navegação, escolha a região na qual você criou seu cluster do MSK.

  3. Selecione o cluster do MSK que deseja atualizar.

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

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

    1. Na lista suspensa Escolher versão do Apache Kafka, escolha a versão de destino que 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 atualização disponíveis. Em seguida, selecione Escolher para continuar.

      nota

      O Amazon MSK oferece suporte a atualizações no local 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) Marque a caixa de seleção Atualizar configuração do cluster para aplicar as atualizações de configuração compatíveis com a nova versão. Isso habilita os recursos e as melhorias da nova versão.

      É possível ignorar esta etapa se for necessário manter suas configurações personalizadas existentes.

      nota
      • As atualizações do lado do servidor não atualizam automaticamente as aplicações de clientes.

      • Para manter a estabilidade do cluster, não há suporte a 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 CLIdescribe-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.

Atualizar 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.