ansible_playbooks
ELKB roles playbook:
Data Source => filebeat => Kafka <=> zookeeper
||
︾
logstash => Elasticsearch => Kibana
||
︾ .=> .=> hdfs
For comprehensive details refer to the README.md in every role directory.
todo list:
hdfs role
Requisitions Check Example:
requisition_precheck.yml
---
- hosts: deploy_servers
vars:
tasks:
- name: check java version
shell: source ~/.bash_profile; java -version
register: result
failed_when: "'1.8' not in result.stderr"
- name: check python version
shell: python -V|grep '2.7'
register: result
failed_when: "'' == result.stderr"
# - hosts: zookeeper_servers
# vars:
# zookeeper_con: 10.0.0.11:12181,10.0.0.12:12181,10.0.0.13:12181
# tasks:
# - name: check if zk can connect
# shell: nc -z -w 10 {{ item.split(':')[0] }} {{ item.split(':')[1] }}
# with_items: "{{ zookeeper_con.split(',') }}"
# register: result
# failed_when: "'succeeded' not in result.stdout"
- hosts: zookeeper_servers
vars:
zookeeper_port: 12181
tasks:
- name: check_zookeeper_port
wait_for: port={{ zookeeper_port }} timeout=1
debug: msg=ok
- hosts: kafka_servers
vars:
kafka_port: 9092
tasks:
- name: check_kafka_port
wait_for: port={{ kafka_port }} timeout=1
debug: msg=ok
- hosts: elasticsearch_servers
vars:
elasticsearch_port: 9200
tasks:
- name: check_elasticsearch_port
wait_for: port={{ elasticsearch_port }} timeout=1
debug: msg=ok
- hosts: logstash_servers
vars:
logstash_port: 9600
tasks:
- name: check_logstash_port
wait_for: port={{ logstash_port }} timeout=1
debug: msg=ok
- hosts: kibana_servers
vars:
kibana_port: 5601
tasks:
- name: check_kibana_port
wait_for: port={{ kibana_port }} timeout=1
debug: msg=ok
Usage:
ansible-playbook -u deploy -i kafka_hosts kafka.yml