opstree_devops.kafka_cluster
OSM: Kafka
Zaawansowana rola ansible, która skonfiguruje klaster kafka i zookeeper.
Wymagania
Jedynym wymaganiem dla tej roli jest Java.
Naszą rolę Java możesz znaleźć tutaj
Zmienne Roli
Zmienne podzieliliśmy na dwie części: Obowiązkowe i Opcjonalne
Zmienne Obowiązkowe
Zmienne | Domyślne Wartości | Możliwe Wartości | Opis |
---|---|---|---|
zookeeper_data_dir | /opt/zookeeper |
Dowolny katalog w systemie Linux | Katalog, w którym zookeeper będzie przechowywać swoje dane |
installation_dir | /opt |
Dowolny katalog w systemie Linux | Katalog, w którym chcesz zainstalować kafka |
kafka_major_version | 2.12 |
Dowolna prawidłowa wersja kafka | Główna wersja wydania kafka |
kafka_minor_version | 2.2.1 |
Dowolna prawidłowa wersja kafka | Pomocnicza wersja wydania kafka |
Zmienne Opcjonalne
Zmienne | Domyślne Wartości | Możliwe Wartości | Opis |
---|---|---|---|
kafka_service_user_name | kafka |
Nazwa użytkownika usługi dla kafka | Nazwa systemowego użytkownika kafka, który będzie uruchamiał wszystkie operacje |
kafka_service_group_name | kafka |
Nazwa grupy usługi dla kafka | Nazwa grupy systemowej kafka, która będzie uruchamiać wszystkie operacje |
kafka_logs_dir | /var/log/kafka |
Dowolny katalog w systemie Linux | Katalog, w którym kafka będzie generować logi |
zk_client_port | 2181 |
Dowolny numer portu w systemie Linux | Port klienta zookeeper do połączenia |
init_limit | 5 |
Dowolna wartość całkowita | initLimit to czas oczekiwania, który zookeeper wykorzystuje do ograniczenia długości czasu, w którym serwery w kworum muszą połączyć się z liderem |
sync_limit | 2 |
Dowolna wartość całkowita | syncLimit ogranicza, jak bardzo opóźniony może być serwer w stosunku do lidera |
tick_time | 2000 |
Dowolna wartość całkowita | Podstawowa jednostka czasu w milisekundach używana przez zookeepera. Jest używana do sygnalizacji zdrowia (heartbeat), a minimalny czas sesji będzie dwa razy większy niż tickTime |
max_memory_heap | -Xmx256M |
Rozmiar pamięci JVM | To maksymalny rozmiar pamięci dla kafka, który należy dostosować do konfiguracji serwera |
min_memory_heap | -Xmx128M |
Rozmiar pamięci JVM | To minimalny rozmiar pamięci dla kafka, który należy dostosować do konfiguracji serwera |
Inwentarz
Inwentarz powinien wyglądać tak:-
[zookeeper] # Informacje o hoście i ID dla zookeeper
zookeeper1 zookeeper_id=1
zookeeper2 zookeeper_id=2
zookeeper3 zookeeper_id=3
[kafka] # Informacje o hoście i brokerze dla kafka
kafka1 kafka_broker_id=1
kafka2 kafka_broker_id=2
kafka3 kafka_broker_id=3
[kafka_cluster:children] # Grupa nadrzędna dla grupy kafka i zookeeper
zookeeper
kafka
[kafka_cluster:vars] # Zmienne dla grupy nadrzędnej kafka_cluster
ansible_user=ubuntu
Przykładowy Playbook
Oto przykładowy playbook:-
---
- hosts: kafka_cluster
roles:
- role: osm_kafka_cluster
become: yes
Użycie
Aby użyć tej roli, musisz wykonać playbook
ansible-playbook -i hosts site.yml
Uruchamianie testów dla konfiguracji
Aby uruchomić testy, mamy osobny folder o nazwie inspec. Inspec (https://www.inspec.io/) powinien być zainstalowany, jeśli chcesz uruchomić testy.
Polecenie, które należy uruchomić:
inspec exec . -t ssh://username@server_ip -i /path/to/keyfile
Autor
O projekcie
Ansible role for setting up the kafka cluster with zookeeper
Zainstaluj
ansible-galaxy install opstree_devops.kafka_cluster
Licencja
Unknown
Pobrania
158
Właściciel