GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal Apache ZooKeeper di Debian 10

Apache Zookeeper adalah layanan sumber terbuka dan gratis untuk sistem terdistribusi yang membantu Anda mengelola sejumlah besar host. Ini adalah layanan terpusat yang digunakan untuk memelihara informasi konfigurasi, penamaan, dan layanan grup. Itu ditulis dalam Java dan memungkinkan pengembang untuk fokus membangun fitur perangkat lunak tanpa mengkhawatirkan sifat aplikasi yang terdistribusi. Apache ZooKeeper paling sering digunakan dalam beban kerja "read-dominant" di mana membaca jauh lebih umum daripada menulis. Muncul dengan serangkaian fitur yang kaya termasuk, Sinkronisasi, Pesan yang Dipesan, Serialisasi, Keandalan, Atomisitas, Pemrosesan Cepat, dan banyak lagi. Ini memiliki mekanisme penguncian dan sinkronisasi yang membantu Anda dalam pemulihan gagal otomatis saat menghubungkan aplikasi terdistribusi lainnya. Proyek Zookeeper adalah salah satu proyek paling sukses dari yayasan Apache. Banyak perusahaan mengadopsi Zookeeper untuk menciptakan sistem terdistribusi yang sangat tersedia dalam skala besar.

Dalam tutorial ini, kami akan menunjukkan cara menyiapkan cluster Apache Zookeeper node tunggal di server Debian 10.

Prasyarat

  • Server yang menjalankan Debian 10 dengan RAM 2 GB.
  • Kata sandi root dikonfigurasi di server Anda.

Memulai

Sebelum memulai, disarankan untuk memperbarui server Anda dengan versi terbaru. Anda dapat memperbaruinya menggunakan perintah berikut:

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

Setelah server Anda diperbarui, mulai ulang untuk menerapkan perubahan.

Instal Java

Apache Zookeeper ditulis dalam bahasa Java. Jadi, Anda perlu menginstal Java di sistem Anda. Secara default, versi terbaru Java tersedia di repositori default Debian 10. Anda dapat menginstalnya dengan menjalankan perintah berikut:

apt-get install default-jdk -y

Setelah menginstal Java, verifikasi versi Java yang diinstal menggunakan perintah berikut:

java --version

Anda akan mendapatkan output berikut:

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)

Setelah selesai, Anda dapat melanjutkan untuk membuat pengguna sistem untuk Zookeeper.

Buat Pengguna Sistem untuk Zookeeper

Merupakan ide bagus untuk membuat pengguna khusus untuk menjalankan layanan Zookeeper. Ini akan meningkatkan keamanan dan pengelolaan Anda.

Pertama, jalankan perintah berikut untuk membuat pengguna zookeeper dengan direktori home:

useradd zookeeper -m

Selanjutnya, atur shell default untuk pengguna zookeeper menggunakan perintah berikut:

usermod --shell /bin/bash zookeeper

Selanjutnya, atur kata sandi untuk pengguna zookeeper menggunakan perintah berikut:

passwd zookeeper

Selanjutnya, tambahkan pengguna zookeeper ke grup sudo:

usermod -aG sudo zookeeper

Pada titik ini, Anda telah membuat dan mengonfigurasi pengguna Zookeeper. Sekarang Anda dapat melanjutkan untuk mengunduh Zookeeper.

Unduh Zookeeper

Pertama, Anda perlu mengunduh Apache Zookeeper versi terbaru dari situs resminya. Saat artikel ini ditulis, versi terbaru Apache Zookeeper adalah 3.5.6.

Untuk mengunduhnya, ubah direktori ke /opt dan jalankan perintah berikut:

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

Setelah unduhan selesai, ekstrak file yang diunduh dengan perintah berikut:

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

Selanjutnya, ganti nama direktori yang diekstrak menjadi zookeeper dan berikan izin yang sesuai:

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

Selanjutnya, Anda perlu membuat direktori data untuk Zookeeper untuk menyimpan semua konfigurasi dan data status. Anda dapat membuatnya di sistem file lokal atau sistem file jarak jauh sesuai kebutuhan Anda.

Anda dapat membuat direktori data menggunakan perintah berikut:

mkdir -p /data/zookeeper

Selanjutnya, ubah kepemilikan direktori data menjadi pengguna zookeeper:

chown -R zookeeper:zookeeper /data/zookeeper

Pada titik ini, Anda telah mengunduh Zookeeper dan membuat direktori data untuknya. Sekarang Anda dapat melanjutkan untuk mengonfigurasi Zookeeper.

Konfigurasi Zookeeper

Zookeeper semua file konfigurasi berada di dalam direktori /opt/zookeeper/conf/. Anda dapat membuat file konfigurasi Zookeeper di dalam direktori /opt/zookeeper/conf/ menggunakan perintah berikut:

nano /opt/zookeeper/conf/zoo.cfg

Tambahkan baris berikut:

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

Simpan dan tutup file setelah Anda selesai.

Di mana:

  • tickTime :Opsi ini menyetel panjang tanda centang dalam milidetik.
  • dataDir :Tentukan direktori data untuk menyimpan data Zookeeper.
  • clientPort :Tentukan port yang digunakan untuk mendengarkan koneksi klien.
  • maxClientCnxns :Digunakan untuk membatasi jumlah maksimum koneksi klien.

Catatan :Parameter di atas adalah untuk pengembangan dan pengujian. Anda dapat mengubahnya sesuai kebutuhan Anda.

Pada titik ini, Anda telah mengonfigurasi Zookeeper. Sekarang Anda dapat siap untuk memulai server Zookeeper.

Mulai dan Uji Server Zookeeper

Anda dapat memulai server Zookeeper menggunakan perintah berikut:

/opt/zookeeper/bin/zkServer.sh start

Anda akan mendapatkan output berikut:

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

Selanjutnya, Anda dapat terhubung ke server Zookeeper pada port 2181 menggunakan perintah berikut:

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

Setelah terhubung, Anda akan melihat output berikut:

[zk: 127.0.0.1:2181(CONNECTED) 0]

Selanjutnya, jalankan perintah bantuan untuk mendapatkan daftar perintah yang dapat Anda jalankan dari klien.

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

Anda akan melihat output berikut:

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

Setelah pengujian, keluar dari sesi klien menggunakan perintah quit:

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

Anda sekarang dapat menghentikan layanan Zookeeper dengan perintah berikut:

/opt/zookeeper/bin/zkServer.sh stop

Anda akan melihat perintah berikut:

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

Pada titik ini, Anda telah berhasil memulai dan menguji server Zookeeper.

Buat File Layanan Systemd untuk Zookeeper

Selanjutnya, Anda perlu membuat file layanan systemd untuk mengelola layanan Zookeeper menggunakan systemd.

Anda dapat membuatnya dengan perintah berikut:

nano /etc/systemd/system/zookeeper.service

Tambahkan baris berikut:

[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

Simpan dan tutup file setelah Anda selesai. Kemudian, muat ulang daemon systemd dengan perintah berikut:

systemctl daemon-reload

Selanjutnya, mulai layanan Zookeeper dan aktifkan untuk memulai setelah sistem reboot menggunakan perintah berikut:

systemctl start zookeeper
systemctl enable zookeeper

Anda sekarang dapat memverifikasi status Zookeeper menggunakan perintah berikut:

systemctl status zookeeper

Anda akan melihat output berikut:

? 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.

Sekarang, Anda dapat dengan mudah mengelola layanan Zookeeper dengan systemd.

Kesimpulan

Selamat! Anda telah berhasil menginstal dan mengonfigurasi satu node Zookeeper cluster di server Debian 10. Pengaturan ini sangat berguna untuk lingkungan pengembangan dan pengujian. Saya harap Anda sekarang memiliki cukup pengetahuan untuk membuat satu node Zookeeper cluster. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.


Debian
  1. Cara Menginstal osquery di Debian 10

  2. Cara Menginstal Apache ZooKeeper di Ubuntu 20.04

  3. Cara Menginstal Apache Maven di Debian 11

  1. Cara Instal Apache di Debian 9

  2. Cara Menginstal Apache Maven di Debian 10

  3. Cara Instal Apache Cassandra di Debian 11

  1. Cara Instal Apache Cassandra di Debian 9

  2. Cara Menginstal Apache OFBiz CRM di Debian 10

  3. Cara Menginstal Apache ActiveMQ di Debian 10