This module allows you to acquire and release a slot. This is primarily useful for ensureing that no more than N hosts take a specific action at once. This can also be used to coordinate between masters.
salt.modules.zk_concurrency.
lock
(path, zk_hosts, identifier=None, max_concurrency=1, timeout=None, ephemeral_lease=False, force=False)¶Get lock (with optional timeout)
Example:
... code-block: bash
salt minion zk_concurrency.lock /lock/path host1:1234,host2:1234
salt.modules.zk_concurrency.
lock_holders
(path, zk_hosts, identifier=None, max_concurrency=1, timeout=None, ephemeral_lease=False)¶Return an un-ordered list of lock holders
Example:
... code-block: bash
salt minion zk_concurrency.lock_holders /lock/path host1:1234,host2:1234
salt.modules.zk_concurrency.
party_members
(path, zk_hosts)¶Get the List of identifiers in a particular party
Example:
... code-block: bash
salt minion zk_concurrency.party_members /lock/path host1:1234,host2:1234
salt.modules.zk_concurrency.
unlock
(path, zk_hosts=None, identifier=None, max_concurrency=1, ephemeral_lease=False)¶Remove lease from semaphore
Example:
... code-block: bash
salt minion zk_concurrency.unlock /lock/path host1:1234,host2:1234