Udostępnij za pośrednictwem


Migrowanie obciążeń platformy Apache Kafka do usługi Azure HDInsight 5.1

Usługa Azure HDInsight 5.1 oferuje najnowsze składniki typu open source ze znacznymi ulepszeniami wydajności, łączności i zabezpieczeń. W tym dokumencie wyjaśniono, jak migrować obciążenia platformy Apache Kafka z usługi HDInsight 4.0 (Kafka 2.1) do usługi HDInsight 5.1 (Kafka 3.2).

Wersje platformy Apache Kafka

Apache Kafka 3.2.0

W przypadku migracji do platformy Kafka 3.2.0 (HDI 5.1) możesz skorzystać z następujących nowych funkcji:

  • Obsługa synchronizacji automatycznych odbiorców między klastrem w mm 2.0, co ułatwia migrowanie lub przełączanie użytkowników w tryb failover w klastrach KIP-545.
  • Wskazówka do lidera partycji w celu odzyskania partycji: nowa funkcja, która umożliwia kontrolerowi komunikowanie się z nowo wybranym liderem partycji tematu, czy musi odzyskać stan KIP-704.
  • Domyślnie obsługuje protokół TLS 1.2 na potrzeby bezpiecznej komunikacji.
  • Usuwanie zależności zookeeper: Producenci i konsumenci nie potrzebują już parametru zookeeper. Użyj opcji zamiast poleceń interfejsu --bootstrap-server --zookeeper wiersza polecenia KIP-500.
  • Konfigurowalny rozmiar listy prac na potrzeby tworzenia akceptowania: nowa konfiguracja, która umożliwia ustawienie rozmiaru listy prac SYN dla gniazd akceptowanych protokołu TCP w brokerach KIP-764.
  • Pole kodu błędu najwyższego poziomu do elementu DescribeLogDirsResponse: nowy kod błędu, który sprawia, że interfejs API DescribeLogDirs jest spójny z innymi interfejsami API i umożliwia zwracanie innych błędów oprócz CLUSTER_AUTHORIZATION_FAILED KIP-784.

Aby uzyskać pełną listę aktualizacji, zobacz Informacje o wersji platformy Apache Kafka 3.2.0.

Zgodność klienta platformy Kafka

Nowi brokerzy platformy Kafka obsługują starszych klientów. KIP-35 — Wersja protokołu pobierania wprowadziła mechanizm dynamicznego określania funkcjonalności brokera platformy Kafka i KIP-97: Ulepszone zasady zgodności RPC klienta platformy Kafka wprowadziły nowe zasady zgodności i gwarancje dla klienta Java. Wcześniej klient platformy Kafka musiał wchodzić w interakcję z brokerem tej samej wersji lub nowszej wersji. Teraz nowsze wersje klientów Java i innych klientów, które obsługują kip-35 , takie jak librdkafka mogą wrócić do starszych typów żądań lub zgłaszać odpowiednie błędy, jeśli funkcjonalność nie jest dostępna.

Screenshot shows Upgrade Kafka client compatibility.

Uwaga

Zalecane jest używanie wersji klienta platformy Kafka w taki sam sposób jak w przypadku wersji klastra. Aby uzyskać więcej informacji, zobacz Macierz zgodności.

Ogólny proces migracji

Poniższe wskazówki dotyczące migracji zakładają, że klaster Platformy Apache Kafka 2.1.1 wdrożony w usłudze HDInsight 4.0 w jednej sieci wirtualnej. Istniejący broker ma kilka tematów i jest aktywnie używany przez producentów i konsumentów. Uaktualnianie wersji platformy Kafka w istniejącym klastrze nie jest obsługiwane. Po utworzeniu klastra z usługą HDI 5.1 zmigruj klientów platformy Kafka do korzystania z nowego klastra.

Aby ukończyć migrację, wykonaj następujące czynności:

  1. Wdróż nowy klaster i klientów usługi HDInsight 5.1 na potrzeby testowania. Wdróż nowy klaster platformy Kafka usługi HDInsight 5.1. Jeśli można wybrać wiele wersji klastra Platformy Kafka, zaleca się wybranie najnowszej wersji. Po wdrożeniu ustaw parametry zgodnie z potrzebami i utwórz temat o tej samej nazwie co istniejące środowisko. Ponadto ustaw szyfrowanie TLS i bring-your-own-key (BYOK) zgodnie z potrzebami. Następnie sprawdź, czy działa poprawnie z nowym klastrem.

    Screenshot shows how to Deploy new HDInsight 5.1 clusters.

  2. Przełącz klaster dla aplikacji producenta i poczekaj, aż wszystkie dane kolejki będą używane przez bieżących odbiorców. Gdy nowy klaster platformy Kafka usługi HDInsight 5.1 jest gotowy, przełącz istniejące miejsce docelowe producenta do nowego klastra. Pozostaw ją tak, jak jest, dopóki istniejąca aplikacja konsumenta nie zużyje wszystkich danych z istniejącego klastra.

    Screenshot shows how to Switch cluster for producer app.

  3. Przełącz klaster w aplikacji konsumenckiej. Po potwierdzeniu, że istniejąca aplikacja konsumenta zakończyła korzystanie ze wszystkich danych z istniejącego klastra, przełącz połączenie z nowym klastrem.

    Screenshot shows how to Switch cluster on consumer app.

  4. Usuń stary klaster i aplikacje testowe zgodnie z potrzebami. Po zakończeniu pracy przełącznika usuń stary klaster platformy Kafka usługi HDInsight 4.0 i producentów i konsumentów używanych w teście zgodnie z potrzebami.

Następne kroki