jaytaylor.kafka
Ansible Kafka
Un rôle Ansible pour installer et configurer des clusters de file d'attente de messages pub/sub distribués kafka.
Comment l'obtenir
Ajoutez à votre fichier requirements.yml des playbooks :
- src: https://github.com/jaytaylor/ansible-kafka
Puis exécutez :
ansible-galaxy install -r requirements.yml --ignore-errors
Ou si vous souhaitez simplement récupérer ce rôle et commencer à l'utiliser :
cd my-playbook-folder/roles
git clone https://github.com/jaytaylor/ansible-kafka.git
cd -
Comment l'utiliser
Une fois le rôle installé, configurez-le depuis votre fichier playbook (par ex. playbook.yml).
Exemple :
---
- hosts: [all]
roles:
- {
role: "ansible-kafka",
kafka_hosts: "{{ groups.kafka | list }}",
kafka_zookeeper_hosts: "{{ zookeeper_hosts | list }}"
kafka_version: 0.11.0.2, # Remplacement de la version Kafka.
kafka_scala_serverion: 2.10 # Remplacement de la version Scala.
}
Où kafka_hosts et zookeeper_hosts sont des variables définies (par ex. dans group_vars/all) et contiennent la liste des hôtes à utiliser.
Remarque importante
Si vous utilisez ce rôle depuis le site Ansible Galaxy, assurez-vous d'utiliser "jaytaylor.kafka" comme nom de rôle (et non "ansible-kafka").
Variables de rôle
kafka_hosts- liste des hôtes dans le cluster.kafka_zookeeper_hosts- liste des hôtes Zookeeper pour le cluster.kafka_broker_id- Entier identifiant de manière unique le courtier, par défaut, un identifiant sera généré pour vous soit par ce rôle, soit par Kafka lui-même pour les versions >= 0.9.kafka_generate_broker_id- Indicateur contrôlant si un identifiant de courtier doit être généré, par défaut àoui.kafka_server_defaults- Paramètres par défaut du serveur Kafka. Cette variable ne devrait généralement pas être modifiée.kafka_producer_defaults- Paramètres par défaut du producteur Kafka. Cette variable ne devrait généralement pas être modifiée.kafka_server- Permet de remplacer des paramètres de serveur par défaut particuliers (de la variablekafka_server_defaults). Les valeurs de ce hachage sont combinées avec celles de la variablekafka_server_defaults.kafka_producer- Permet de remplacer des paramètres par défaut particuliers du producteur (de la variablekafka_producer_defaults). Les valeurs de ce hachage sont combinées avec celles de la variablekafka_server_defaults.kafka_healthcheck_address- Si non définie, cela sera automatiquement définie commekafka_server_defaults.host_nameoukafka_server.host_namesi défini. Par défaut à '127.0.0.1'.kafka_java_version- Version de Java à installer. Par défaut "openjdk-7-jre-headless".
Remarques sur la version
La version 2.0.0 ne prend pas en charge les versions Ansible inférieures à 2.2.
Avant la version 2.0.0, les variables Ansible server et producer étaient utilisées pour configurer respectivement le serveur Kafka et le producteur Kafka, mais la version 2.0.0 a introduit un meilleur scope de variable et un meilleur remplacement de variable :
- La variable
serverest devenuekafka_server, elle est donc maintenant dans le "scope" du rôle Kafka. C'est un hachage combiné avec le hachagekafka_server_defaults, remplaçant les valeurs définies précédemment. Cela facilite le remplacement de certains paramètres particuliers sans avoir à réécrire tout le hachage de la variableserverjuste pour changer un paramètre. - La variable
producerest devenuekafka_producer, et elle se comporte maintenant de la même manière que la variablekafka_server. De plus, le hachagekafka_producer_defaultscontient les valeurs par défaut pour le producteur.
Aussi :
healthcheck_addressest devenuekafka_healthcheck_address, ce qui améliore son scope.nofiles_limitest devenukafka_nofiles_limit.
Licence
BSD
Auteur
Jay Taylor
An Ansible role for installing and configuring a kafka cluster.
ansible-galaxy install jaytaylor.kafka