GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat Apache ZooKeeper na Debian 10

Apache Zookeeper je bezplatná služba s otevřeným zdrojovým kódem pro distribuované systémy, která vám pomůže spravovat velkou sadu hostitelů. Jedná se o centralizovanou službu používanou pro údržbu konfiguračních informací, pojmenování a skupinových služeb. Je napsán v Javě a umožňuje vývojářům soustředit se na vytváření softwarových funkcí bez obav o distribuovanou povahu aplikace. Apache ZooKeeper se nejčastěji používá v pracovních zátěžích „dominantních čtení“, kde je čtení mnohem běžnější než zápis. Dodává se s bohatou sadou funkcí včetně synchronizace, objednaných zpráv, serializace, spolehlivosti, atomicity, rychlého zpracování a mnoha dalších. Má zamykací a synchronizační mechanismus, který vám pomáhá při automatické obnově selhání při připojování dalších distribuovaných aplikací. Projekt Zookeeper je jedním z nejúspěšnějších projektů nadace Apache. Mnoho společností přijalo Zookeeper pro vytváření vysoce dostupných distribuovaných systémů ve velkém měřítku.

V tomto tutoriálu vám ukážeme, jak nastavit jednouzlový cluster Apache Zookeeper na serveru Debian 10.

Předpoklady

  • Server se systémem Debian 10 s 2 GB RAM.
  • Na vašem serveru je nakonfigurováno heslo uživatele root.

Začínáme

Před spuštěním se doporučuje aktualizovat server na nejnovější verzi. Můžete jej aktualizovat pomocí následujícího příkazu:

apt-get update -y
apt-get upgrade -y

Jakmile je váš server aktualizován, restartujte jej, aby se změny implementovaly.

Instalovat Javu

Apache Zookeeper je napsán v jazyce Java. Budete tedy muset do svého systému nainstalovat Javu. Ve výchozím nastavení je ve výchozím úložišti Debian 10 k dispozici nejnovější verze Javy. Můžete jej nainstalovat spuštěním následujícího příkazu:

apt-get install default-jdk -y

Po instalaci Javy ověřte nainstalovanou verzi Javy pomocí následujícího příkazu:

java --version

Měli byste získat následující výstup:

openjdk 11.0.5 2019-10-15
OpenJDK Runtime Environment (build 11.0.5+10-post-Debian-1deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.5+10-post-Debian-1deb10u1, mixed mode, sharing)

Jakmile budete hotovi, můžete přistoupit k vytvoření systémového uživatele pro Zookeeper.

Vytvoření systémového uživatele pro Zookeeper

Pro spuštění služby Zookeeper je dobré vytvořit vyhrazeného uživatele. Tím se zlepší vaše zabezpečení a správa.

Nejprve spusťte následující příkaz k vytvoření uživatele zookeeper s domovským adresářem:

useradd zookeeper -m

Dále nastavte výchozí shell pro uživatele zookeeper pomocí následujícího příkazu:

usermod --shell /bin/bash zookeeper

Dále nastavte heslo pro uživatele zookeeper pomocí následujícího příkazu:

passwd zookeeper

Dále přidejte uživatele zookeeper do skupiny sudo:

usermod -aG sudo zookeeper

V tomto okamžiku jste vytvořili a nakonfigurovali uživatele Zookeeper. Nyní můžete přistoupit ke stažení Zookeeper.

Stáhnout Zookeeper

Nejprve si budete muset stáhnout nejnovější verzi Apache Zookeeper z jeho oficiálních stránek. V době psaní tohoto článku je nejnovější verze Apache Zookeeper 3.5.6.

Chcete-li jej stáhnout, změňte adresář na /opt a spusťte následující příkaz:

cd /opt
wget https://archive.apache.org/dist/zookeeper/stable/apache-zookeeper-3.5.6-bin.tar.gz

Po dokončení stahování rozbalte stažený soubor pomocí následujícího příkazu:

tar -xvzf apache-zookeeper-3.5.6-bin.tar.gz

Dále přejmenujte extrahovaný adresář na zookeeper a udělte správná oprávnění:

mv apache-zookeeper-3.5.6-bin zookeeper
chown -R zookeeper:zookeeper /opt/zookeeper

Dále budete muset vytvořit datový adresář pro Zookeeper, kde budou uložena všechna konfigurační a stavová data. Můžete vytvořit v místním souborovém systému nebo vzdáleném souborovém systému podle vašich potřeb.

Datový adresář můžete vytvořit pomocí následujícího příkazu:

mkdir -p /data/zookeeper

Dále změňte vlastnictví datového adresáře na uživatele zookeeper:

chown -R zookeeper:zookeeper /data/zookeeper

V tomto okamžiku jste si stáhli Zookeeper a vytvořili pro něj datový adresář. Nyní můžete pokračovat v konfiguraci Zookeeper.

Konfigurace Zookeeper

Zookeeper všechny konfigurační soubory jsou umístěny v adresáři /opt/zookeeper/conf/. Konfigurační soubor Zookeeper můžete vytvořit v adresáři /opt/zookeeper/conf/ pomocí následujícího příkazu:

nano /opt/zookeeper/conf/zoo.cfg

Přidejte následující řádky:

tickTime=2500
dataDir=/data/zookeeper
clientPort=2181
maxClientCnxns=80

Po dokončení uložte a zavřete soubor.

Kde:

  • tickTime :Tato možnost nastavuje délku zaškrtnutí v milisekundách.
  • dataDir :Určete datový adresář pro ukládání dat Zookeeper.
  • clientPort :Zadejte port používaný k naslouchání připojení klientů.
  • maxClientCnxns :Používá se k omezení maximálního počtu klientských připojení.

Poznámka :Výše ​​uvedené parametry jsou pro vývoj a testování. Můžete je změnit podle potřeby.

V tomto okamžiku jste nakonfigurovali Zookeeper. Nyní můžete být připraveni ke spuštění serveru Zookeeper.

Spustit a otestovat server Zookeeper

Server Zookeeper můžete spustit pomocí následujícího příkazu:

/opt/zookeeper/bin/zkServer.sh start

Měli byste získat následující výstup:

/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

Dále se můžete připojit k serveru Zookeeper na portu 2181 pomocí následujícího příkazu:

/opt/zookeeper/bin/zkCli.sh -server 127.0.0.1:2181

Po připojení byste měli vidět následující výstup:

[zk: 127.0.0.1:2181(CONNECTED) 0]

Dále spusťte příkaz help a získejte seznam příkazů, které můžete spustit z klienta.

[zk: 127.0.0.1:2181(CONNECTED) 0] help

Měli byste vidět následující výstup:

ZooKeeper -server host:port cmd args
	addauth scheme auth
	close 
	config [-c] [-w] [-s]
	connect host:port
	create [-s] [-e] [-c] [-t ttl] path [data] [acl]
	delete [-v version] path
	deleteall path
	delquota [-n|-b] path
	get [-s] [-w] path
	getAcl [-s] path
	history 
	listquota path
	ls [-s] [-w] [-R] path
	ls2 path [watch]
	printwatches on|off
	quit 
	reconfig [-s] [-v version] [[-file path] | [-members serverID=host:port1:port2;port3[,...]*]] | [-add serverId=host:port1:port2;port3[,...]]* [-remove serverId[,...]*]
	redo cmdno
	removewatches path [-c|-d|-a] [-l]
	rmr path
	set [-s] [-v version] path data
	setAcl [-s] [-v version] [-R] path acl
	setquota -n|-b val path
	stat [-w] path
	sync path

Po testování ukončete relaci klienta pomocí příkazu quit:

[zk: 127.0.0.1:2181(CONNECTED) 0] quit

Nyní můžete zastavit službu Zookeeper pomocí následujícího příkazu:

/opt/zookeeper/bin/zkServer.sh stop

Měli byste vidět následující příkaz:

/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED

V tomto okamžiku jste úspěšně spustili a otestovali server Zookeeper.

Vytvoření souboru Systemd Service pro Zookeeper

Dále budete muset vytvořit soubor služby systemd pro správu služby Zookeeper pomocí systemd.

Můžete jej vytvořit pomocí následujícího příkazu:

nano /etc/systemd/system/zookeeper.service

Přidejte následující řádky:

[Unit]
Description=Zookeeper Daemon
Documentation=http://zookeeper.apache.org
Requires=network.target
After=network.target

[Service]    
Type=forking
WorkingDirectory=/opt/zookeeper
User=zookeeper
Group=zookeeper
ExecStart=/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg
ExecStop=/opt/zookeeper/bin/zkServer.sh stop /opt/zookeeper/conf/zoo.cfg
ExecReload=/opt/zookeeper/bin/zkServer.sh restart /opt/zookeeper/conf/zoo.cfg
TimeoutSec=30
Restart=on-failure

[Install]
WantedBy=default.target

Po dokončení uložte a zavřete soubor. Poté znovu načtěte démona systemd pomocí následujícího příkazu:

systemctl daemon-reload

Dále spusťte službu Zookeeper a povolte její spuštění po restartu systému pomocí následujícího příkazu:

systemctl start zookeeper
systemctl enable zookeeper

Nyní můžete ověřit stav Zookeeper pomocí následujícího příkazu:

systemctl status zookeeper

Měli byste vidět následující výstup:

? zookeeper.service - Zookeeper Daemon
   Loaded: loaded (/etc/systemd/system/zookeeper.service; disabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-12-29 15:12:39 UTC; 8min ago
     Docs: http://zookeeper.apache.org
  Process: 9229 ExecStart=/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg (code=exited, status=0/SUCCESS)
 Main PID: 9245 (java)
    Tasks: 29 (limit: 2359)
   Memory: 49.7M
   CGroup: /system.slice/zookeeper.service
           ??9245 java -Dzookeeper.log.dir=/opt/zookeeper/bin/../logs -Dzookeeper.log.file=zookeeper-zookeeper-server-debian10.log -Dzookeeper.

Dec 29 15:12:38 debian10 systemd[1]: Starting Zookeeper Daemon...
Dec 29 15:12:38 debian10 zkServer.sh[9229]: /usr/bin/java
Dec 29 15:12:38 debian10 zkServer.sh[9229]: ZooKeeper JMX enabled by default
Dec 29 15:12:38 debian10 zkServer.sh[9229]: Using config: /opt/zookeeper/conf/zoo.cfg
Dec 29 15:12:39 debian10 zkServer.sh[9229]: Starting zookeeper ... STARTED
Dec 29 15:12:39 debian10 systemd[1]: Started Zookeeper Daemon.

Nyní můžete službu Zookeeper snadno spravovat pomocí systemd.

Závěr

Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali cluster Zookeeper s jedním uzlem na serveru Debian 10. Toto nastavení je velmi užitečné pro vývojová a testovací prostředí. Doufám, že nyní máte dostatek znalostí k nastavení jednoho uzlu Zookeeper clusteru. Pokud máte nějaké dotazy, neváhejte se mě zeptat.


Debian
  1. Jak nainstalovat Apache Maven na Debian 10

  2. Jak nainstalovat osquery na Debian 10

  3. Jak nainstalovat Apache Cassandra na Debian 11

  1. Jak nainstalovat Apache na Debian 9

  2. Jak nainstalovat Apache ZooKeeper na Ubuntu 20.04

  3. Jak nainstalovat Apache Maven na Debian 11

  1. Jak nainstalovat Apache Cassandra na Debian 9

  2. Jak nainstalovat Apache OFBiz CRM na Debian 10

  3. Jak nainstalovat Apache ActiveMQ na Debian 10