kafka
Ansible Kafka
Роль Ansible для установки и настройки кластеров распределенной системы обмена сообщениями pub/sub Kafka.
Как получить
Добавьте в ваш файл playbook requirements.yml:
- src: https://github.com/jaytaylor/ansible-kafka
А затем выполните:
ansible-galaxy install -r requirements.yml --ignore-errors
Или если вы просто хотите скачать эту роль и начать ее использовать:
cd my-playbook-folder/roles
git clone https://github.com/jaytaylor/ansible-kafka.git
cd -
Как использовать
После установки роли настройте ее в вашем файле playbook (например, playbook.yml).
Пример:
---
- hosts: [all]
roles:
- {
role: "ansible-kafka",
kafka_hosts: "{{ groups.kafka | list }}",
kafka_zookeeper_hosts: "{{ zookeeper_hosts | list }}"
kafka_version: 0.11.0.2, # Переопределение версии Kafka.
kafka_scala_serverion: 2.10 # Переопределение версии Scala.
}
Где kafka_hosts
и zookeeper_hosts
– это определенные переменные
(например, в group_vars/all), и содержат список хостов для использования.
Важное замечание
Если вы используете эту роль с сайта ansible-galaxy, убедитесь, что используете "jaytaylor.kafka" в качестве имени роли (а не "ansible-kafka").
Переменные роли
kafka_hosts
- список хостов в кластере.kafka_zookeeper_hosts
- список хостов Zookeeper для кластера.kafka_broker_id
- Уникальный целочисленный идентификатор брокера, по умолчанию будет сгенерирован этой ролью или самой Kafka для версий >= 0.9.kafka_generate_broker_id
- Флаг, управляющий тем, генерировать ли идентификатор брокера, по умолчанию -yes
.kafka_server_defaults
- Настройки сервера Kafka по умолчанию. Эту переменную обычно не следует изменять.kafka_producer_defaults
- Настройки продюсера Kafka по умолчанию. Эту переменную обычно не следует изменять.kafka_server
- Позволяет переопределить конкретные настройки сервера по умолчанию (из переменнойkafka_server_defaults
). Значения в этом хэше комбинируются с переменнойkafka_server_defaults
.kafka_producer
- Позволяет переопределить конкретные настройки продюсера по умолчанию (из переменнойkafka_producer_defaults
). Значения в этом хэше комбинируются с переменнойkafka_server_defaults
.kafka_healthcheck_address
- Если не определено, это будет динамически установлено вkafka_server_defaults.host_name
илиkafka_server.host_name
, если определено. По умолчанию '127.0.0.1'.kafka_java_version
- Версия Java для установки. По умолчанию "openjdk-7-jre-headless".
Примечания к версии
Версия 2.0.0 не поддерживает версии Ansible ниже 2.2.
До версии 2.0.0 переменные Ansible server
и producer
использовались для настройки сервера Kafka и продюсера Kafka соответственно, но 2.0.0 ввела улучшение области видимости переменных и их переопределения:
- Переменная
server
сталаkafka_server
, таким образом она находится в области роли Kafka. Это хэш, который комбинируется с хэшомkafka_server_defaults
, переопределяя значения, определенные в предыдущем. Это упрощает переопределение только некоторых конкретных настроек, а не переписывание всего хэша переменнойserver
, чтобы изменить одну настройку. - Переменная
producer
сталаkafka_producer
, и теперь ведет себя так же, как переменнаяkafka_server
. Также хэшkafka_producer_defaults
содержит значения по умолчанию для продюсера.
Также:
healthcheck_address
сталаkafka_healthcheck_address
, что улучшает ее область видимости.nofiles_limit
сталаkafka_nofiles_limit
.
Лицензия
BSD
Автор
Джей Тейлор
An Ansible role for installing and configuring a kafka cluster.
ansible-galaxy install jaytaylor/ansible-kafka