levonet.docker-zookeeper
Zookeeperの役割
==============
公式イメージ zookeeper:latest
を使用して、Dockerコンテナ内でZookeeperを設定し、起動します。
役割の変数
zookeeper_id
(必須):このIDは、エンセmbles内でユニークでなければなりません。値は1から255の間である必要があります。zookeeper_servers
(必須):この変数を使用してZookeeperエンセmblesのマシンのリストを指定します。各エントリは、server.id=host:port:port
の形式です。エントリはスペースで区切られます。 3.5では、構文が変更されました。サーバーは次のように指定する必要があります:server.id=<address1>:<port1>:<port2>[:role];[<client port address>:]<client port>
Zookeeperの動的再構成。docker_zookeeper_name
(デフォルト:zookeeper):この名前は、ホームフォルダーのパスとコンテナの名前に使用されます。docker_zookeeper_version
(デフォルト:latest)docker_zookeeper_image
(デフォルト:zookeeper:{{docker_zookeeper_version}})docker_zookeeper_expose
(デフォルト:[2181, 2888, 3888])docker_zookeeper_ports
(デフォルト:[2181, 2888, 3888]):それぞれZookeeperのクライアントポート、フォロワーポート、選挙ポートです。docker_zookeeper_env
(省略可能):詳しくは環境変数を参照してください。docker_zookeeper_network_mode
(デフォルト:host):コンテナをネットワークに接続します。docker_zookeeper_networks
(デフォルト:[]):コンテナが属するネットワークのリスト。docker_zookeeper_log_driver
(デフォルト:json-file):ログドライバーを指定します。docker_zookeeper_log_options
(省略可能):選択したlog_driverに特有のオプションの辞書。詳細についてはロギングドライバーの設定を参照してください。
依存関係
docker
例プレイブック
hosts
で:
[zooservers]
10.10.10.1 zookeeper_id=1
10.10.10.2 zookeeper_id=2
10.10.10.3 zookeeper_id=3
プレイブックで:
- hosts: zooservers
roles:
- role: levonet.docker-zookeeper
zookeeper_servers: "server.1=10.10.10.1:2888:3888 server.2=10.10.10.2:2888:3888 server.3=10.10.10.3:2888:3888"
docker_zookeeper_name: "zookeeper-{{ zookeeper_id }}"
docker_zookeeper_log_driver: syslog
docker_zookeeper_log_options:
syslog-facility: local0
tag: "{{ docker_zookeeper_name }}"
when: zookeeper_id is defined
単一サーバー上でZookeeperクラスターを実行する例
- hosts: all
vars:
zookeeper_host: "{{ hostvars[inventory_hostname]['ansible_default_ipv4']['address'] }}"
docker_zookeeper_version: "3.5"
roles:
- role: levonet.docker-zookeeper
docker_zookeeper_name: zoo-1
docker_zookeeper_env:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=0.0.0.0:2788:3788;2181 server.2={{ zookeeper_host }}:2888:3888;2182 server.3={{ zookeeper_host }}:2988:3988;2183
docker_zookeeper_expose: [2181, 2788, 3788]
docker_zookeeper_ports:
- 2181
- role: levonet.docker-zookeeper
docker_zookeeper_name: zoo-2
docker_zookeeper_env:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1={{ zookeeper_host }}:2788:3788;2181 server.2=0.0.0.0:2888:3888;2182 server.3={{ zookeeper_host }}:2988:3988;2183
docker_zookeeper_expose: [2182, 2888, 3888]
docker_zookeeper_ports:
- 2182
- role: levonet.docker-zookeeper
docker_zookeeper_name: zoo-3
docker_zookeeper_env:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1={{ zookeeper_host }}:2788:3788;2181 server.2={{ zookeeper_host }}:2888:3888;2182 server.3=0.0.0.0:2988:3988;2183
docker_zookeeper_expose: [2183, 2988, 3988]
docker_zookeeper_ports:
- 2183
ライセンス
著者情報
この役割はMarica Antonacciによって作成されました。
現在のメンテナーはPavlo Bashynskyiです。
インストール
ansible-galaxy install levonet.docker-zookeeper
ライセンス
apache-2.0
ダウンロード
2.8k
所有者