Přeskočit obsah

ZooKeeper v ASAB Maestro

ZooKeeper je technologie konsenzu pro ASAB Maestro. Všechny ostatní služby musí komunikovat se ZooKeeperem, aby měly přístup k datům na úrovni clusteru. Proto je řetězec serveru ZooKeeper poskytován jako parametr pro všechny služby a služby ASAB získávají konfigurační sekci [zoookeeper] z technologie ZooKeeper.

Parametry

ZOOKEEPER_SERVERS

Adresy všech instancí ZooKeeper, oddělené čárkami. V tříuzlovém clusteru (s uzly pojmenovanými lm1, lm2, lm3) by parametr ZOOKEEPER_SERVERS byl nahrazen řetězcem lm1:2181,lm2:2181,lm3:2181.

Příklad

define:
type: rc/descriptor
name: Webové uživatelské rozhraní ZooKeeper
url: https://zoonavigator.elkozmon.com/

descriptor:
image: elkozmon/zoonavigator

volumes:
    - "{{SLOW_STORAGE}}/{{INSTANCE_ID}}/logs:/app/logs"

environment:
    HTTP_PORT: "9001"
    CONNECTION_ZK_NAME: Lokální ZooKeeper
    CONNECTION_ZK_CONN: "{{ZOOKEEPER_SERVERS}}"
    AUTO_CONNECT_CONNECTION_ID: ZK
    BASE_HREF: /zoonavigator

Konfigurace služeb ASAB

Každá služba ASAB získává konfigurační sekci zookeeper.

[zookeeper]
servers=lmc01:2181,lmc02:2181,lmc03:2181

Proměnné prostředí

Dostupné pouze pro příslušnou instanci ZooKeeper.

ZOO_MY_ID

Číslo instance každé instance ZooKeeper se stává proměnnou prostředí ZOO_MY_ID kontejneru ZooKeeper (Docker). Proto může být přejmenování instancí ZooKeeper v modelu problematické.