AnsibleShipyard.ansible-zookeeper
ansible-zookeeper
Playbook ZooKeeper dla Ansible
Instalacja
ansible-galaxy install AnsibleShipyard.ansible-zookeeper
Zależności
Java
Wymagania
Wersja Ansible przynajmniej 1.6
Zmienne roli
---
zookeeper_version: 3.4.12
zookeeper_url: http://www.us.apache.org/dist/zookeeper/zookeeper-{{zookeeper_version}}/zookeeper-{{zookeeper_version}}.tar.gz
# Flaga, która wybiera, czy użyć systemd czy upstart do usługi init:
# Uwaga: domyślnie Ubuntu 15.04 i nowsze używają systemd (ale wspierają przełączanie do upstart)
zookeeper_debian_systemd_enabled: "{{ ansible_distribution_version|version_compare(15.04, '>=') }}"
zookeeper_debian_apt_install: false
# (Opcjonalnie:) dodaj niestandardowe repozytoria 'ppa' w zależności od wersji dystrybucji (tylko z debian_apt_install=true)
# Przykład: aby użyć pakietu deb z wersją zookeeper v3.4.8 dla Ubuntu 14.04 (gdzie ostatnia oficjalna wersja to v3.4.5)
zookeeper_debian_apt_repositories:
- repository_url: "ppa:ufscar/zookeeper"
distro_version: "14.04"
apt_cache_timeout: 3600
zookeeper_register_path_env: false
client_port: 2181
init_limit: 5
sync_limit: 2
tick_time: 2000
zookeeper_autopurge_purgeInterval: 0
zookeeper_autopurge_snapRetainCount: 10
zookeeper_cluster_ports: "2888:3888"
zookeeper_max_client_connections: 60
data_dir: /var/lib/zookeeper
log_dir: /var/log/zookeeper
zookeeper_dir: /opt/zookeeper-{{zookeeper_version}} # lub /usr/share/zookeeper, gdy zookeeper_debian_apt_install jest prawdziwe
zookeeper_conf_dir: {{zookeeper_dir}} # lub /etc/zookeeper, gdy zookeeper_debian_apt_install jest prawdziwe
zookeeper_tarball_dir: /opt/src
zookeeper_hosts_hostname: "{{inventory_hostname}}"
# Lista słowników (np. {zookeeper_hosts:[{host:,id:},{host:,id:},...]})
zookeeper_hosts:
- host: "{{zookeeper_hosts_hostname}}" # maszyna, na której działa
id: 1
# Słownik ustawień ENV, które będą zapisane w (opcjonalnym) conf/zookeeper-env.sh
zookeeper_env: {}
# Kontroluje generację myid Zookeeper
zookeeper_force_myid: yes
Przykład Playbooka
- name: Instalacja ZooKeeper
hosts: all
sudo: yes
roles:
- role: AnsibleShipyard.ansible-zookeeper
Przykład pobierania archiwum z S3
- name: Instalacja ZooKeeper
hosts: all
sudo: yes
vars:
zookeeper_archive_s3_bucket: my-s3-bucket
zookeeper_archive_s3_object: my/s3/directory/zookeeper-{{zookeeper_version}}.tar.gz
roles:
- role: AnsibleShipyard.ansible-zookeeper
Przykład klastra
- name: Ustawienie klastra Zookeeper
hosts: zookeepers
sudo: yes
roles:
- role: AnsibleShipyard.ansible-zookeeper
zookeeper_hosts: "{{groups['zookeepers']}}"
Zakładając, że zookeepers
jest grupą hostów zdefiniowaną w pliku inwentaryzacyjnym.
[zookeepers]
server[1:3]
Niestandardowy adres IP dla grupy hostów
zookeeper_hosts: "
{%- set ips = [] %}
{%- for host in groups['zookeepers'] %}
{{- ips.append(dict(id=loop.index, host=host, ip=hostvars[host]['ansible_default_ipv4'].address)) }}
{%- endfor %}
{{- ips -}}"
Zobacz ten przykładowy playbook, który pokazuje, jak używać tego playbooka oraz innych. Jest częścią ansible-galaxy-roles i służy jako zbiór (a tym samym przykład) wszystkich naszych playbooków Ansible.
Licencja
Licencja MIT (MIT)
Copyright (c) 2014 Kien Pham
Niniejszym udziela się nieodpłatnie każdej osobie, która uzyska kopię tego oprogramowania oraz powiązanej dokumentacji ("Oprogramowanie"), prawa do korzystania z Oprogramowania bez ograniczeń, w tym, bez ograniczeń, do korzystania, kopiowania, modyfikowania, scalania, publikowania, dystrybuowania, sublicencjonowania i/lub sprzedawania kopii Oprogramowania oraz praw do zezwalania osobom, którym Oprogramowanie jest udostępnione, aby tak działały, z zastrzeżeniem następujących warunków:
Powyższy tekst dotyczący praw autorskich i niniejsza zgoda muszą być dołączone do wszystkich kopii lub istotnych części Oprogramowania.
OPROGRAMOWANIE JEST DOSTARCZANE "TAK JEST", BEZ ŻADNEJ GWARANCJI JAKIEGOKOLWIEK RODZAJU, WYRAŹNEJ LUB DOMNIEMANEJ, W TYM, ALE NIE TYLKO, GWARANCJI HANDLOWOŚCI, PRZYDATNOŚCI DO OKREŚLONEGO CELU I BRAKU NARUSZENIA. W ŻADNYM WYPADKU AUTORZY LUB POSIADACZE PRAW AUTORSKICH NIE PONOSZĄ ODPOWIEDZIALNOŚCI ZA ŻADNE ROSZCZENIA, SZKODY LUB INNE ODPOWIEDZIALNOŚCI, CZY TO W DZIAŁANIU UMOWNYM, DELIKTOWYM CZY INNYM, WYNIKAJĄCE Z, LUB W ZWIĄZKU Z OPROGRAMOWANIEM LUB UŻYTYM CZY INNYMI DZIAŁANIAMI ZWIĄZANYMI Z OPROGRAMOWANIEM.
AnsibleShipyard
Nasze powiązane playbooki
Informacje o autorze
@AnsibleShipyard/developers i inni.
ansible-galaxy install AnsibleShipyard.ansible-zookeeper