jaytaylor.kafka
Ansible Kafka
Eine Ansible-Rolle zur Installation und Konfiguration von Kafka, einem verteilten Pub/Sub-Nachrichtensystem.
So bekommen Sie es
Fügen Sie in Ihre Playbooks die Datei requirements.yml Folgendes hinzu:
- src: https://github.com/jaytaylor/ansible-kafka
und führen Sie dann aus:
ansible-galaxy install -r requirements.yml --ignore-errors
Oder, wenn Sie diese Rolle nur herunterladen und verwenden möchten:
cd my-playbook-folder/roles
git clone https://github.com/jaytaylor/ansible-kafka.git
cd -
So verwenden Sie es
Sobald die Rolle installiert ist, konfigurieren Sie sie in Ihrer Playbook-Datei (z.B. playbook.yml).
Beispiel:
---
- hosts: [all]
roles:
- {
role: "ansible-kafka",
kafka_hosts: "{{ groups.kafka | list }}",
kafka_zookeeper_hosts: "{{ zookeeper_hosts | list }}"
kafka_version: 0.11.0.2, # Kafka-Version-Überschreibung.
kafka_scala_serverion: 2.10 # Scala-Version-Überschreibung.
}
Dabei sind kafka_hosts und zookeeper_hosts definierte Variablen (z.B. in group_vars/all), die die Liste der zu verwendenden Hosts enthalten.
Wichtiger Hinweis
Wenn Sie diese Rolle von der Ansible-Galaxy-Website verwenden, stellen Sie sicher, dass Sie "jaytaylor.kafka" für den Rollennamen verwenden (anstatt "ansible-kafka").
Rollenvariablen
kafka_hosts- Liste von Hosts im Cluster.kafka_zookeeper_hosts- Liste von Zookeeper-Hosts für den Cluster.kafka_broker_id- Ganzzahl, die den Broker eindeutig identifiziert; standardmäßig wird einer für Sie generiert, entweder von dieser Rolle oder von Kafka selbst für Versionen >= 0.9.kafka_generate_broker_id- Flag, das steuert, ob eine Broker-ID generiert werden soll; standardmäßig aufja.kafka_server_defaults- Standard-Kafka-Servereinstellungen. Diese Variable sollte normalerweise nicht geändert werden.kafka_producer_defaults- Standard-Kafka-Producer-Einstellungen. Diese Variable sollte normalerweise nicht geändert werden.kafka_server- Ermöglicht das Überschreiben spezieller Standardservereinstellungen (aus der Variablekafka_server_defaults). Werte in diesem Hash werden mit der Variablekafka_server_defaultskombiniert.kafka_producer- Ermöglicht das Überschreiben spezieller Standardproduzereinrichtungen (aus der Variablekafka_producer_defaults). Werte in diesem Hash werden mit der Variablekafka_server_defaultskombiniert.kafka_healthcheck_address- Wenn nicht definiert, wird dies dynamisch aufkafka_server_defaults.host_nameoderkafka_server.host_namegesetzt, falls definiert. Standardwert ist '127.0.0.1'.kafka_java_version- Zu installierende Java-Version. Standardwert ist "openjdk-7-jre-headless".
Versionshinweise
Version 2.0.0 unterstützt keine Ansible-Versionen unter 2.2.
Vor Version 2.0.0 wurden die Ansible-Variablen server und producer verwendet, um den Kafka-Server und den Kafka-Produzenten entsprechend zu konfigurieren, aber 2.0.0 führte eine bessere Variablenverwendung und bessere Überschreibung von Variablen ein:
- Die
server-Variable wurde zukafka_server, sodass sie innerhalb des "Scopes" der Kafka-Rolle ist. Es handelt sich um einen Hash, der mit dem Hashkafka_server_defaultskombiniert wird, wobei die Werte aus dem vorherigen Hash überschrieben werden. Dadurch wird das Überschreiben einer speziellen Einstellung einfacher, anstatt den gesamten Hash derserver-Variable neu zu schreiben, nur um eine Einstellung zu ändern. - Die
producer-Variable wurde zukafka_producer, und sie verhält sich jetzt genauso wie diekafka_server-Variable. Der Hashkafka_producer_defaultshat auch die Standardwerte für den Produzenten.
Außerdem:
healthcheck_addresswurde zukafka_healthcheck_address, was den Geltungsbereich verbessert.nofiles_limitwurde zukafka_nofiles_limit.
Lizenz
BSD
Autor
Jay Taylor
An Ansible role for installing and configuring a kafka cluster.
ansible-galaxy install jaytaylor.kafka