AnsibleShipyard.ansible-zookeeper
ansible-zookeeper
ZooKeeper-Playbook für Ansible
Installation
ansible-galaxy install AnsibleShipyard.ansible-zookeeper
Abhängigkeiten
Java
Anforderungen
Ansible-Version mindestens 1.6
Variablen
---
zookeeper_version: 3.4.12
zookeeper_url: http://www.us.apache.org/dist/zookeeper/zookeeper-{{zookeeper_version}}/zookeeper-{{zookeeper_version}}.tar.gz
# Flag, das auswählt, ob systemd oder upstart für den Init-Dienst verwendet wird:
# Hinweis: standardmäßig verwenden Ubuntu 15.04 und später systemd (aber Unterstützung für den Wechsel zu upstart)
zookeeper_debian_systemd_enabled: "{{ ansible_distribution_version|version_compare(15.04, '>=') }}"
zookeeper_debian_apt_install: false
# (Optional:) Fügen Sie benutzerdefinierte 'ppa'-Repositories je nach Distribution-Version hinzu (nur bei debian_apt_install=true)
# Beispiel: um ein Community-Zookeeper-Paket v3.4.8 für Ubuntu 14.04 zu verwenden (wo die neueste offizielle Version v3.4.5 ist)
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}} # oder /usr/share/zookeeper, wenn zookeeper_debian_apt_install wahr ist
zookeeper_conf_dir: {{zookeeper_dir}} # oder /etc/zookeeper, wenn zookeeper_debian_apt_install wahr ist
zookeeper_tarball_dir: /opt/src
zookeeper_hosts_hostname: "{{inventory_hostname}}"
# Liste von Dictionnaires (d.h. {zookeeper_hosts:[{host:,id:},{host:,id:},...]})
zookeeper_hosts:
- host: "{{zookeeper_hosts_hostname}}" # der laufende Rechner
id: 1
# Dictionär von ENV-Einstellungen, die in die (optionale) conf/zookeeper-env.sh geschrieben werden
zookeeper_env: {}
# Steuert die Generierung von Zookeeper myid
zookeeper_force_myid: yes
Beispiel-Playbook
- name: ZooKeeper installieren
hosts: all
sudo: yes
roles:
- role: AnsibleShipyard.ansible-zookeeper
Beispiel für das Abrufen von Tarball aus S3
- name: ZooKeeper installieren
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
Cluster-Beispiel
- name: Zookeeper-Cluster einrichten
hosts: zookeepers
sudo: yes
roles:
- role: AnsibleShipyard.ansible-zookeeper
zookeeper_hosts: "{{groups['zookeepers']}}"
Vorausgesetzt, zookeepers
ist eine Hostgruppe, die in der Inventardatei definiert ist.
[zookeepers]
server[1:3]
Benutzerdefinierte IP pro Hostgruppe
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 -}}"
Siehe dieses Beispiel Playbook, das zeigt, wie man dieses Playbook sowie andere nutzt. Es ist Teil von ansible-galaxy-roles und dient als Sammlung (und somit als Beispiel) aller unserer ansible-Playbooks.
Lizenz
Die MIT-Lizenz (MIT)
Copyright (c) 2014 Kien Pham
Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, ohne Gebühr die Erlaubnis erteilt, in der Software ohne Einschränkung zu handeln, einschließlich, aber nicht beschränkt auf die Rechte, die Software zu nutzen, zu kopieren, zu modifizieren, zu kombinieren, zu veröffentlichen, zu vertreiben, Unterlizenzen zu erteilen und/oder Kopien der Software zu verkaufen, sowie Personen, denen die Software überlassen wird, zu erlauben, dies zu tun, unter den folgenden Bedingungen:
Der obige Copyright-Hinweis und dieser Erlaubnishinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.
DIE SOFTWARE WIRD "WIE BESEHEN" BEREITGESTELLT, OHNE IRGENDEINE GARANTIE, SEI ES AUSDRÜCKLICHER ODER STILLSCHWEIGENDER ART, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GARANTIEN DER VERKAUFBARKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG. IN KEINEM FALL SOLLEN DIE AUTOREN ODER INHABER DES COPYRIGHTS FÜR ANSPRÜCHE, SCHÄDEN ODER SONSTIGE HAFTUNGEN HAFTBAR GEMACHT WERDEN, OB IN EINEM VERTRAGSVERHÄLTNIS, ENTSCHADIGUNG ODER AUF SONSTIGE WEISE, DIE AUS, DURCH ODER IN VERBINDUNG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN DEALINGS IN DER SOFTWARE RESULTIEREN.
AnsibleShipyard
Unsere verwandten Playbooks
Autoreninformationen
@AnsibleShipyard/Entwickler und andere.
ansible-galaxy install AnsibleShipyard.ansible-zookeeper