ZOOKEEPER

Zookeeper to narzędzie open source służące do koordynacji rozproszonych systemów. W Apache Kafka, Zookeeper pełni kilka ważnych ról:

  1. Kontrola stanu klastra: Kafka wykorzystuje Zookeepera do zarządzania i monitorowania brokerów.

  2. Zarządzanie tematami i partycjami: Kafka wykorzystuje Zookeepera do zarządzania tematami i partycjami. Zookeeper śledzi, które partycje należą do których brokerów i gdzie są one przechowywane.

  3. Elekcja lidera: Zookeeper wybiera lidera dla każdej partycji tematu. Lider jest odpowiedzialny za wszystkie odczyty i zapisy danej partycji. Zookeeper monitoruje, czy lider partycji jest nadal żywy i zdolny do obsługi żądań, a w przypadku jego awarii, Zookeeper pomaga w wyborze nowego lidera.

  4. Zarządzanie przesunięciami (offsets): Kafka używa Zookeepera do przechowywania przesunięć, które są zapisywane przez konsumentów. Przesunięcie to numer, który wskazuje, jaki dokładnie komunikat w partycji został już przetworzony. Dzięki temu konsument wie, który komunikat ma przeczytać następny.

  5. Synchronizacja konsumentów: Zookeeper pomaga w koordynacji grup konsumentów w Kafka. Dzięki temu jest możliwe zrównoważenie obciążenia odczytu między różnymi konsumentami w grupie.

Parametry konfiguracyjne

  • ZOOKEEPER_CLIENT_PORT: Port, na którym serwer Zookeeper przyjmuje połączenia od klientów. Standardowo jest to port 2181.

  • ZOOKEEPER_TICK_TIME: Podstawowa jednostka czasu w Zookeeper, wyrażona w milisekundach. Służy do regulowania płynności połączeń i innych limitów czasowych.

  • ZOOKEEPER_INIT_LIMIT: Liczba "ticków", które "obserwator" może spędzić, łącząc się z liderem i synchronizując z nim. Jeżeli "obserwator" nie zdoła tego zrobić w tym czasie, zostanie wyłączony z klastrowania.

  • ZOOKEEPER_SYNC_LIMIT: Liczba "ticków", które "obserwator" może spędzić na utrzymaniu połączenia z liderem.

Wolumeny

./zoo/data:/var/lib/zookeeper/data: Katalog ./zoo/data jest mapowany na katalog /var/lib/zookeeper/data w kontenerze. W tym katalogu przechowywane są dane Zookeepera.

./zoo/log:/var/lib/zookeeper/log: Katalog ./zoo/log jest mapowany na katalog /var/lib/zookeeper/log w kontenerze. W tym katalogu przechowywane są logi Zookeepera.

Pamiętaj aby nadać uprawnienia dla powyższych folderów. W przeciwnym razie proces dockera nie będzie mógł zapisywać zmian !

Szczegóły kontenera

Właściwościdocker

Nazwa obrazu

zookeeper

Nazwa w repozytorium

confluentinc/cp-zookeeper

Port

2181

Zależność

BRAK

Obecna wersja : 7.1.1

Last updated