Usage Patterns
The AMQ Streams collection is defined with a set of different roles to automate a Kafka ecosystem in a proper way inside Ansible playbooks, following the common practices of Ansible.
This collection is designed to be used by these guidelines:
Each Kafka component will have its own playbook bound to its own set of hosts
Define a playbook for each component and life cycle
The following scenarios can be implemented with this collection:
Kafka all-in-one deployment, a playbook using the main roles (
amq_streams_zookeeper
,amq_streams_broker
) using the same inventory of hosts (e.g.:hosts: all
).Kafka distributed deployment, two different playbooks with different inventories to deploy the Zookeeper ensemble and Kafka brokers in separate hosts (e.g:
hosts: zookeeper
,hosts: broker
)Kafka connect deployment, a playbook using its own inventory to deploy the Kafka Connect cluster (e.g:
hosts: kconnect
)
There is a example of each playbook in the playbooks
folder.