It is group of playbooks to manage apache pulsar. It is also 100% compliant with ansible-lint rules.
- Download Apache pulsar Tar on Ansible Server
- vagrant (optional)
- Any OS with SystemD
- Ansible
1. It assumes you have zookeeper already running in localmode or cluster mode.
2. All tasks like broker/jvm/logging/downgrade/removeOldVersion will be done in serial order.
- Zookeeper Installation https://github.com/116davinder/zookeeper-cluster-ansible
- Update Required vars in
inventory/<environment>/group_vars/all.yml
. - Update Required vars in
inventory/<environment>/cluster.ini
.
ansible-playbook -i inventory/<environment>/cluster.ini clusterSetup.yml
It will upgrade broker first then bookeeper nodes in the rolling fashion.
- Update Required vars in
inventory/<environment>/group_vars/all.yml
. - Update Required vars in
inventory/<environment>/cluster.ini
.
ansible-playbook -i inventory/<environment>/cluster.ini clusterUpgrade.yml
It will restart broker first then bookeeper nodes in the rolling restart fashion.
ansible-playbook -i inventory/<environment>/cluster.ini clusterRollingRestart.yml
- Update Required vars in
inventory/<environment>/group_vars/all.yml
. - Update Required vars in
inventory/<environment>/cluster.ini
.
ansible-playbook -i inventory/<environment>/cluster.ini clusterAddBroker.yml
- Update Required vars in
inventory/<environment>/group_vars/all.yml
. - Update Required vars in
inventory/<environment>/cluster.ini
.
ansible-playbook -i inventory/<environment>/cluster.ini clusterAddBookeeper.yml
- Update Required vars in
inventory/<environment>/group_vars/all.yml
. - Update Required vars in
inventory/<environment>/cluster.ini
.
ansible-playbook -i inventory/<environment>/cluster.ini clusterDecomissionNodes.yml
- Update Required vars in
inventory/<environment>/group_vars/all.yml
. - Update Required vars in
inventory/<environment>/cluster.ini
.
ansible-playbook -i inventory/<environment>/cluster.ini clusterJava.yml
- CentOS 7
- RedHat 7
ansible 2.8.1
config file = None
configured module search path = ['/home/davinderpal/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/local/lib/python3.6/dist-packages/ansible
executable location = /usr/local/bin/ansible
python version = 3.6.7 (default, Oct 22 2018, 11:32:17) [GCC 8.2.0]