wtanaka.apache-kafka
wtanaka.apache-kafka
Instaluje Apache Kafka. Zarządza nim za pomocą monit.
Wymaga:
- Instalacji Javy, np. za pomocą https://galaxy.ansible.com/wtanaka/oracle-java/
- Instalacji Zookeepera, np. za pomocą https://galaxy.ansible.com/wtanaka/zookeeper/
Przykładowy Playbook
Dodanie roli zainstaluje prostą, domyślną instalację
- hosts: serwery
roles:
- role: wtanaka.apache-kafka
Możesz skonfigurować rolę w playbooku:
- hosts: serwery
roles:
- role: wtanaka.apache-kafka
kafka_env_variables:
KAFKA_HEAP_OPTS: "-Xmx512m -Xms512m"
Lub używając zmiennych w odpowiednim pliku host_vars
lub group_vars
.
Pełny zestaw dostępnych opcji konfiguracyjnych możesz zobaczyć w defaults/main.yml
kafka_version: "0.10.0.1"
kafka_scala_version: "2.11"
kafka_mirror: 'http://archive.apache.org/dist/kafka'
kafka_install_chdir: "/opt"
kafka_user: "kafka"
kafka_monit_conf_dir: "/etc/monit/conf.d"
kafka_init_wrapper_prefix: "kafka-"
kafka_pid_prefix: "/var/run/kafka-"
kafka_config_prefix: "server-"
kafka_log_prefix: "/var/log/kafka-"
# kafka_delete_topic_enable: "false"
# kafka_brokers to lista brokerów działających na maszynie.
# Zwykle uruchamia się jeden broker. Każdy broker musi określić
# albo:
#
# A broker_id
#
# A file_basename i log_dirs -- to automatycznie
# wygeneruje broker id w Kafka 0.9+
kafka_brokers:
- broker_id: 0
listeners: "PLAINTEXT://:9092"
- listeners: "PLAINTEXT://:9093"
file_basename: kafka-9093
log_dirs: /var/lib/kafka/broker-9093
kafka_config_contents:
# Liczba wątków obsługujących żądania sieciowe
num.network.threads: 3
# Liczba wątków zajmujących się I/O dysku
num.io.threads: 8
# Bufor wysyłania (SO_SNDBUF) używany przez serwer gniazd
socket.send.buffer.bytes: 102400
# Bufor odbierania (SO_RCVBUF) używany przez serwer gniazd
socket.receive.buffer.bytes: 102400
# Maksymalny rozmiar żądania, które serwer gniazd zaakceptuje
# (ochrona przed OOM)
socket.request.max.bytes: 104857600
# Domyślna liczba partycji logów na temat. Więcej partycji
# pozwala na większy równoległy dostęp, ale prowadzi to również
# do większej liczby plików w brokerach.
num.partitions: 1
# Liczba wątków na katalog danych używanych do odzyskiwania logów
# podczas uruchamiania i wypisywania przy zamykaniu. Zaleca się
# zwiększenie tej wartości dla instalacji z katalogami danych
# znajdującymi się w macierzy RAID.
num.recovery.threads.per.data.dir: 1
# Minimalny wiek pliku logu, aby był kwalifikowany do usunięcia
log.retention.hours: 168
# Maksymalny rozmiar pliku segmentu logu. Gdy ten rozmiar zostanie osiągnięty, utworzony zostanie nowy segment logu.
log.segment.bytes: 1073741824
# Częstotliwość sprawdzania segmentów logów, aby sprawdzić, czy można je usunąć zgodnie
# z politykami retencji
log.retention.check.interval.ms: 300000
# Ciąg połączeniowy do Zookeepera (szczegóły w dokumentacji zookeeper).
# Są to sparowane hosty:port, każdy odpowiadający serwerowi zk
# np. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
# Możesz również dodać opcjonalny ciąg chroot do adresów URL, aby określić
# katalog główny dla wszystkich znów kafka.
zookeeper.connect: "localhost:2181"
# Czas oczekiwania w ms na połączenie z zookeeperem
zookeeper.connection.timeout.ms: "6000"
kafka_more_config: {}
# Ustaw zmienne środowiskowe tutaj, takie jak KAFKA_HEAP_OPTS lub
# KAFKA_JVM_PERFORMANCE_OPTS itp. Nie wspiera zagnieżdżonych znaków pojedynczego
# cudzysłowu "'".
kafka_env_variables:
KAFKA_HEAP_OPTS: "-Xmx1G -Xms1G"
kafka_monit_enabled
Domyślnie: true
Ustaw to na false
, aby wyłączyć instalację pliku .conf monit i uniknąć uruchamiania usługi monit
kafka_user
Domyślnie: kafka
Użytkownik systemu operacyjnego, pod którym będzie działać proces Kafka. Ta rola także zapewni, że ten użytkownik istnieje w systemie operacyjnym.
Licencja
GPLv2
Informacje o autorze
Zainstaluj
ansible-galaxy install wtanaka.apache-kafka
Licencja
Unknown
Pobrania
5.6k
Właściciel