Cara Menginstal dan Mengkonfigurasi Zookeeper di Ubuntu 18.04

Cara Menginstal dan Mengkonfigurasi Zookeeper di Ubuntu 18.04

Zookeeper adalah layanan terpusat untuk mempertahankan informasi konfigurasi, penamaan, memberikan sinkronisasi terdistribusi, dan menyediakan layanan grup.
Semua jenis layanan ini digunakan dalam beberapa bentuk atau lainnya dengan aplikasi terdistribusi.

Dalam artikel ini, kami telah menjelaskan langkah -langkah yang diperlukan untuk menginstal dan mengonfigurasi 3 node zookeeper cluster dengan kuorum yang pasti di Ubuntu 18.04.

Dalam tutorial ini Anda akan belajar:

  • Apa itu Zookeeper dan Tinjauannya.
  • Apa arsitektur zookeeper.
  • Cara Mengkonfigurasi Host Zookeeper dan Tambahkan Pengguna Zookeeper.
  • Cara Menginstal dan Mengkonfigurasi Oracle JDK.
  • Cara Mengkonfigurasi dan Mengatur ZooKeeper.
  • Cara mengkonfigurasi node pekerja untuk bergabung dengan cluster swarm.
  • Cara memverifikasi kluster dan ansambel Zookeeper.
Tinjauan Arsitektur Zookeeper.

Persyaratan dan konvensi perangkat lunak yang digunakan

Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, konvensi atau versi perangkat lunak yang digunakan
Sistem Ubuntu 18.04
Perangkat lunak Zookeeper-3.4.12, Oracle JDK 1.8.0_192
Lainnya Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo memerintah.
Konvensi # - mensyaratkan perintah linux yang diberikan untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
$ - mensyaratkan perintah Linux yang diberikan untuk dieksekusi sebagai pengguna biasa

Ikhtisar Zookeeper



Zookeeper memungkinkan proses terdistribusi untuk berkoordinasi satu sama lain melalui ruang nama hierarkis bersama register data (kami menyebut register ini Znodes), seperti sistem file. Tidak seperti sistem file normal, Zookeepers memberikan kliennya dengan throughput tinggi, latensi rendah, sangat tersedia, akses yang dipesan secara ketat ke Znode.

Aspek kinerja Zookeeper memungkinkannya digunakan dalam sistem terdistribusi besar. Aspek keandalan mencegahnya menjadi titik kegagalan tunggal dalam sistem besar. Pemesanan ketatnya memungkinkan primitif sinkronisasi yang canggih diimplementasikan di klien.

Ruang nama yang disediakan oleh Zookeeper sama seperti sistem file standar. Nama adalah urutan elemen jalur yang dipisahkan oleh slash ("/"). Setiap zode dalam ruang nama Zookeeper diidentifikasi oleh jalan. Dan setiap znode memiliki induk yang jalurnya adalah awalan znode dengan satu elemen yang lebih sedikit; Pengecualian untuk aturan ini adalah root ("/") yang tidak memiliki induk. Juga, persis seperti sistem file standar, Znode tidak dapat dihapus jika ada anak.

Zookeeper dirancang untuk menyimpan data koordinasi: informasi status, konfigurasi, informasi lokasi, dll.

Arsitektur Zookeeper

Untuk layanan zookeeper yang dapat diandalkan, Anda harus menggunakan zookeeper di sebuah kluster yang dikenal sebagai ansambel. Selama sebagian besar ansambel sudah habis, layanan ini akan tersedia. Karena Zookeeper membutuhkan mayoritas, yang terbaik adalah menggunakan sejumlah mesin ganjil. Misalnya, dengan empat mesin zookeeper hanya dapat menangani kegagalan satu mesin; Jika dua mesin gagal, dua mesin yang tersisa bukan merupakan mayoritas. Namun, dengan lima mesin zookeeper dapat menangani kegagalan dua mesin.

Masing -masing komponen yang merupakan bagian dari arsitektur Zookeeper telah dijelaskan di bawah ini.

  • Klien - Klien, salah satu node di cluster aplikasi terdistribusi kami, akses informasi dari server. Untuk interval waktu tertentu, setiap klien mengirim pesan ke server untuk memberi tahu Seve bahwa klien masih hidup.Demikian pula, server mengirimkan pengakuan saat klien terhubung. Jika tidak ada respons dari server yang terhubung, klien secara otomatis mengarahkan pesan ke server lain.
  • Server - Server, salah satu node dalam ansambel Zookeeper kami, menyediakan semua layanan kepada klien. Memberikan pengakuan kepada klien untuk menginformasikan bahwa server masih hidup.
  • Pemimpin - Node server yang melakukan pemulihan otomatis jika salah satu dari node yang terhubung gagal. Pemimpin terpilih pada startup layanan.
  • Pengikut - Node server yang mengikuti instruksi pemimpin.

Konfigurasikan host Zookeeper dan tambahkan pengguna ZooKeeper

Sebelum menginstal paket zookeeper yang diperlukan untuk konfigurasi, kami akan mengonfigurasi file host di semua node ubuntu. Setelah itu kami akan membuat pengguna Zookeeper di ketiga node karena Daemon Zookeeper perlu dijalankan sebagai penjaga kebun binatang Pengguna itu sendiri.



Di sini kami telah menggunakan 3 Ubuntu 18.04 mesin.

Zookeeper Node1 - 192.168.1.102 (nama host - node1) zookeeper node2 - 192.168.1.103 (nama host - node2) zookeeper node3 - 192.168.1.105 (nama host - node3) 

Edit /etc/host file di ketiga node melalui gedit atau vim dan lakukan perubahan berikut:

192.168.1.102 Node1 192.168.1.103 Node2 192.168.1.105 Node3 
Menyalin

Setelah memodifikasi dengan detail di atas dalam file host, periksa konektivitas dengan ping di antara semua node.

Sekarang, buat yang baru penjaga kebun binatang Pengguna dan grup menggunakan perintah:

# Adduser ZooKeeper 

Instal dan Konfigurasikan Oracle JDK

Unduh dan ekstrak arsip Java di bawah /memilih direktori. Untuk informasi lebih lanjut, kunjungi cara menginstal Java di Ubuntu 18.04.

Untuk mengatur JDK 1.8 UPDATE 192 Sebagai JVM default kami akan menggunakan perintah berikut:

# UPDATE-ALTERNATIF--install/usr/bin/java java/opt/jdk1.8.0_192/bin/java 100 # pembaruan-alternatif --install/usr/bin/javac javac/opt/jdk1.8.0_192/bin/javac 100 

Setelah instalasi untuk memverifikasi Java telah berhasil dikonfigurasi, jalankan perintah berikut:

# UPDATE-ALTERNATIF--Display Java # UPDATE-ALTERNATIF-DISPLAY JAVAC 

Untuk memeriksa versi java, jalankan perintah berikut:

# java -version 

Setelah instalasi yang berhasil Anda akan mendapatkan informasi di bawah ini:

versi java "1.8.0_192 "Java (TM) SE Runtime Environment (Build 1.8.0_192-B12) Java Hotspot (TM) 64-bit Server VM (Build 25.192-B12, mode campuran) 


Mengkonfigurasi dan Siapkan ZooKeeper

Unduh dan unzip Paket Zookeeper dari Arsip Apache Resmi di ketiga mesin Ubuntu seperti yang ditunjukkan di bawah ini:

$ wget https: // www-us.Apache.org/dist/zooKeeper/stabil/zookeeper-3.4.12.ter.GZ 
$ tar -xzvf zookeeper -3.4.12.ter.GZ 

Edit Bashrc Untuk pengguna Zookeeper melalui pengaturan variabel lingkungan zookeeper berikut.

Ekspor zoo_log_dir =/var/log/zookeeperer 

Sumber .Bashrc di sesi login saat ini:

$ sumber ~/.Bashrc 

Sekarang, buat direktori penjaga kebun binatang di bawah /var/lib folder yang akan berfungsi sebagai direktori data zookeeper dan membuat yang lain penjaga kebun binatang direktori di bawah /var/log di mana semua log zookeeper akan ditangkap. Kedua kepemilikan direktori perlu diubah sebagai penjaga kebun binatang.

$ sudo mkdir/var/lib/zookeeper; CD /var /lib; Sudo Chown ZooKeeper: Zookeeper Zookeeper/$ sudo mkdir/var/log/zookeeper; CD /var /log; Sudo Chown Zookeeper: Zookeeper Zookeeper/ 

Buat ID Server untuk ansambel. Setiap server Zookeeper harus memiliki nomor unik di myid file dalam ansambel dan harus memiliki nilai antara 1 dan 255.

Di node1

$ sudo sh -c "echo '1'>/var/lib/zookeeper/myid" 

Di node2

$ sudo sh -c "echo '2'>/var/lib/zookeeper/myid" 

Di node3

$ sudo sh -c "echo '3'>/var/lib/zookeeper/myid" 

Sekarang, buka folder conf di bawah Direktori Homeperper Home (Lokasi Direktori Zookeeper setelah Arsip telah dibatalkan/diekstraksi).

$ CD/HOME/ZOEKEEPER/ZOEKEEPER-3.4.13/conf/ 


zooKeeper@node1: ~/zooKeeper-3.4.13/conf $ ls -lrth Total 16K -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 922 JUNI 29 21:04 ZOO_SAMPLE.CFG -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 535 JUNI 29 21:04 Konfigurasi.XSL -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 999 NOV 24 18:29 ZOO.CFG -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 2.2k 24 Nov 19:07 LOG4J.properti 
Menyalin

Secara default, contoh file conf dengan nama zoo_sample.CFG akan hadir di conf direktori. Anda perlu membuat salinannya dengan nama kebun binatang.CFG Seperti yang ditunjukkan di bawah ini, dan edit baru kebun binatang.CFG seperti yang dijelaskan di ketiga mesin Ubuntu.

$ cp zoo_sample.Kebun Binatang CFG.CFG 
$ ls -lrth/home/zookeeper/zookeeper -3.4.13/conf Total 16K -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 922 29 Jun 21:04 ZOO_SAMPLE.CFG -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 535 JUNI 29 21:04 Konfigurasi.XSL -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 999 NOV 24 18:29 ZOO.CFG -RW-R-R-- 1 ZOEKEEPER ZOEKEEPER 2.2k 24 Nov 19:07 LOG4J.properti 
Menyalin
$ vim/home/zooKeeper/zookeeper-3.4.13/conf/zoo.CFG 
datadir =/var/lib/zookeeperer server.1 = Node1: 2888: 3888 Server.2 = Node2: 2888: 3888 Server.3 = Node3: 2888: 3888 
Menyalin

Konfigurasi Konfigurasi ZooKeeper.



Sekarang, lakukan perubahan di bawah ini log4.properti file sebagai berikut.

$ vim/home/zooKeeper/zookeeper-3.4.13/conf/log4j.properti 
penjaga kebun binatang.catatan.dir =/var/log/zooKeeper zooKeeper.Tracelog.dir =/var/log/zooKeeper log4j.rootlogger = info, konsol, rollingfile 
Menyalin

Perubahan Konfigurasi Log4J ZooKeeper.

Setelah konfigurasi dilakukan kebun binatang.CFG File di ketiga node, mulailah ZooKeeper di ketiga node satu per satu, menggunakan perintah berikut:

$/home/zooKeeper/zookeeper-3.4.13/bin/zkserver.SH mulai 

Layanan Zookeeper Mulai dari ketiga node.

File log akan dibuat di /var/log/zookeeper dari Zookeeper bernama penjaga kebun binatang.catatan, Ekor file untuk melihat log atas kesalahan apa pun.

$ tail -f/var/log/zookeeper/zookeeperer.catatan 


Verifikasi kluster dan ansambel Zookeeper

Dalam ansambel zookeeper dari tiga server, satu akan berada dalam mode pemimpin dan dua lainnya akan berada dalam mode pengikut. Anda dapat memeriksa status dengan menjalankan perintah berikut.

$/home/zooKeeper/zookeeper-3.4.13/bin/zkserver.Status SH 

Pemeriksaan Status Layanan Kebun ZooKeeper.

$ echo stat | NC NODE1 2181 

Daftar detail singkat untuk server dan klien yang terhubung.

$ echo mntr | NC NODE1 2181 

Daftar variabel Zookeeper untuk pemantauan kesehatan cluster.



$ ECHO SRVR | NC Localhost 2181 

Daftar detail lengkap untuk server ZooKeeper.

Jika Anda perlu memeriksa dan melihat Znode, Anda dapat terhubung dengan menggunakan perintah di bawah ini pada salah satu node Zookeeper:

$/home/zooKeeper/zookeeper-3.4.13/bin/zkcli.SH -Server 'HostName -F': 2181 

Hubungkan ke Node Data Zookeeper dan daftar konten.

Kesimpulan

Ini telah menjadi salah satu pilihan yang paling disukai untuk menciptakan sistem terdistribusi yang sangat tersedia dalam skala. Proyek Zookeeper adalah salah satu proyek paling sukses dari Apache Foundation, telah mendapatkan adopsi yang luas oleh perusahaan -perusahaan top, memberikan banyak manfaat yang terkait dengan data besar.

Memberikan basis yang solid untuk mengimplementasikan alat data besar yang berbeda, Apache Zookeeper telah memungkinkan perusahaan untuk berfungsi dengan lancar di dunia data besar. Kemampuannya untuk memberikan banyak manfaat sekaligus menjadikannya salah satu aplikasi yang paling disukai untuk diimplementasikan dalam skala besar.

Tutorial Linux Terkait:

  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Cara membuat cluster kubernetes
  • Cara menginstal kubernet di ubuntu 20.04 FOSSA FOSSA Linux
  • Cara menginstal kubernet di ubuntu 22.04 Jammy Jellyfish…
  • Instalasi Oracle Java di Ubuntu 20.04 FOSSA FOSSA Linux
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Linux: Instal Java
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Oracle Linux vs Red Hat (RHEL)
  • Menguasai loop skrip bash