hayvan bekçisi grup hizmetlerini izlemeyi ve yönetmeyi basitleştirmek için tasarlanmış bir Apache Software Foundation projesidir. Konfigürasyon, bilgi, adlandırma, dağıtılmış senkronizasyon ve provizyonu yöneten merkezi koordinasyon hizmeti için basit bir arayüz kullanır.
Bu eğitimde, Ubuntu 18.04 veya 20.04’te Apache ZooKeeper’ı nasıl kuracağınızı ve kuracağınızı öğrenin.
Önkoşullar
- Ubuntu 20.04 veya 18.04 çalıştıran bir Linux sistemi
- Bir terminal penceresine/komut satırına erişim (Aramak > terminal)
- olan bir kullanıcı hesabı sudo veya kök ayrıcalıklar
Apache ZooKeeper’ı Ubuntu’ya Kurmak
1. Adım: Java’yı Yükleme
ZooKeeper, Java ile yazılmıştır ve çalışması için bu programlama dilini gerektirir. Java’nın kurulu olup olmadığını kontrol etmek için şu komutu çalıştırın:
java --version
Çıktı çalışan bir Java sürümünü gösteriyorsa sonraki adıma geçebilirsiniz. Sistem var diyorsa no such file or directory
ZooKeeper’a geçmeden önce Java’yı yüklemeniz gerekir.
Ubuntu için farklı açık kaynaklı Java paketleri mevcuttur. Hangisinin sizin için en iyisi olduğunu ve Ubuntu’da Java Nasıl Yüklenir bölümündeki kurulum kılavuzunu bulun. Talimatlar Ubuntu 18.04 ve Ubuntu 20.04 için geçerlidir.
2. Adım: ZooKeeper için Kullanıcı Oluşturma
1. Aşağıdakini yazarak ZooKeeper hizmeti için ayrı bir kullanıcı oluşturun:
useradd zookeeper -m
bu -m
flag, kullanıcı için bir giriş dizini oluşturur. Bu durumda, olacak /home/zookeeper
. Kullanıcıyı farklı bir şekilde adlandırmak için değiştirin zookeeper
Seçtiğiniz isim ile.
2. Ardından, ayarlayın bash
şu komutla yeni kullanıcı için varsayılan kabuk olarak:
usermod --shell /bin/bash zookeeper
3. Kullanıcı için bir şifre belirleyin:
passwd zookeeper
ZooKeeper kullanıcısı için güçlü bir parola yazın ve yeniden yazın.
4. Ardından, sudo ayrıcalıklarına sahip olması için kullanıcıyı sudoers grubuna ekleyin:
usermod -aG sudo zookeeper
5. Sudoers grubundaki hesapları listeleyerek kullanıcının artık bir süper kullanıcı olduğunu doğrulamak için kontrol edin:
sudo getent group sudo
Çıktı, oluşturduğunuz kullanıcıyı göstermelidir.
3. Adım: Bir ZooKeeper Veri Dizini Oluşturma
ZooKeeper’ı kurmadan önce, yapılandırma ve durum verilerini (yerel bir diskte veya uzak depolamada) depolayabileceği bir dizin yapısı oluşturun.
Verileri yerel makinede depolamak için önce aşağıdakileri çalıştırarak yeni bir ZooKeeper dizini oluşturun:
sudo mkdir -p /data/zookeeper
Ardından, ZooKeeper kullanıcı sahipliğini bu dizine verin:
chown -R zookeeper:zookeeper /data/zookeeper
4. Adım: ZooKeeper’ı İndirme ve Yükleme
1. İstediğiniz bir web tarayıcısını açın ve şuraya gidin: Apache ZooKeeper İndirme Sayfası. En son kararlı sürüm, sayfanın üst kısmında görünür. Apache indirme yansılarını açmak için yüklemek istediğiniz sürüme tıklayın.
2. Önerilen yansıtma sitesi için HTTP adresini kopyalayın.
3. Komut satırına geri dönün ve /opt
dizin:
cd /opt
4. wget
indirmek için komut.katran dosya. Resmi Apache web sayfasından kopyalanan bağlantıyı yapıştırın:
sudo wget https://downloads.apache.org/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz
5. Çalıştırarak dosyayı çıkarın:
sudo tar -xvf apache-zookeeper-3.6.1-bin.tar.gz
Not: Dosyayı ayıklarken, ZooKeeper ikili paketinin adı değişecektir. İndirdiğiniz dosyayla eşleştiğinden emin olun.
6. Ayıklanan dosyayı şu şekilde yeniden adlandırın: zookeeper
komutla:
mv apache-zookeeper-3.6.1-bin zookeeper
7. Zookeeper kullanıcısına aşağıdakileri çalıştırarak bu dosyanın sahipliğini verin:
chown -R zookeeper:zookeeper /opt/zookeeper
Adım 5: ZooKeeper’ı Bağımsız Modda Yapılandırma
Sonraki adım, ZooKeeper için bir yapılandırma dosyası oluşturmaktır. Aşağıdaki yapılandırma, ZooKeeper’ı bağımsız modda kurar (geliştirme ve test için kullanılır). Üretim ortamları için ZooKeeper’ı çoğaltma modunda çalıştırmanız gerekir.
ZooKeeper’ı bağımsız modda yapılandırmak için yeni bir hayvanat bahçesi.cfg dosya hayvan bekçisi dizin:
sudo nano /opt/zookeeper/conf/zoo.cfg
Aşağıdaki satırları ekleyin:
tickTime = 2000
dataDir = /data/zookeeper
clientPort = 2181
initLimit = 5
syncLimit = 2
Kaydetmek Ve çıkış metin editörü.
Bunun, tek bir düğüm kümesi için temel bir yapılandırma ayarı olduğunu unutmayın. Dosya ihtiyaçlarınıza göre farklılık gösterebilir. Yukarıdaki satırlar aşağıdakilerden oluşur:
tickTime
: Her tıklamanın milisaniye sayısı.dataDir
: Bellek içi veritabanı anlık görüntülerinin ve güncellemeler için işlem günlüğünün saklandığı dizin.clientPort
: İstemci bağlantılarını dinleyen bağlantı noktası.initLimit
: İlk senkronizasyon aşamasının alabileceği tıklama sayısı.syncLimit
: İstek gönderme ile onay alma arasında geçebilecek tik sayısı.
6. Adım: ZooKeeper Hizmetini Başlatma
Artık ZooKeeper hizmetini başlatabilirsiniz. İçinde aşağıdaki komutu çalıştırın / tercih dizin. Dizinden çıktıysanız, ile gezinin cd /opt
.
ZooKeeper hizmetini başlatmak için şu komutu kullanın:
sudo bin/zkServer.sh start
Çıktı, ZooKeeper’ın sahip olduğunu göstermelidir. BAŞLADI.
7. Adım: ZooKeeper Sunucusuna Bağlanma
Hizmeti başlattıktan sonra ZooKeeper sunucusuna bağlanabilirsiniz. Bu kılavuzda yerel sunucudur.
ZooKeeper’a şu komutla bağlanın:
bin/zkCli.sh -server 127.0.0.1:2181
Çıktının yeni bir tane açmasını bekleyin zk
olduğunuzu onaylaması gereken komut istemi BAĞLANTI.
Kullanılabilir komutların listesini görmek için yeni komut isteminde aşağıdaki komutu çalıştırın:
help
İle oturumu kapattip:
quit
İle ZooKeeper hizmetini durdurunkomutu çalıştırın:
bin/zkServer.sh stop
8. Adım: Sistem Hizmeti Dosyası Oluşturma
Son olarak, ZooKeeper’ı yönetmek için bir hizmet dosyası oluşturmanız gerekir.
1. Yeni bir tane oluşturun zookeeper.hizmet istediğiniz bir metin düzenleyicide dosyalayın:
sudo nano /etc/systemd/system/zookeeper.service
2. Aşağıdaki içeriği dosyaya yapıştırın:
[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
3. Dosyayı kaydedin ve çıkın.
4. systemd hizmetini çalıştırarak yeniden yükleyin:
systemctl daemon-reload
5. Ardından, ZooKeeper hizmetini başlatın ve açılışta başlamasını sağlayın:
systemctl start zookeeper
systemctl enable zookeeper
6. Hizmetin çalışır durumda olduğunu şu komutla doğrulayın:
systemctl status zookeeper
ZooKeeper’ı görmelisiniz aktif (çalışıyor).
Çoğaltılmış ZooKeeper’ı Yapılandırma
Bir üretim ortamı, çoğaltılmış bir ZooKeeper düğümleri kümesi kurmayı gerektirir.
Java’yı yükledikten, bir ZooKeeper kullanıcısı oluşturduktan ve ikili paketi indirdikten sonra, bir yapılandırma dosyası oluşturmanız gerekir. Bağımsız mod için temel yapılandırmanın aksine, çoğaltılmış mod birkaç satır daha içerir.
Aynı uygulamadaki tüm sunucuların yapılandırma dosyasının kopyalarına sahip olması gerekir.
Her dosyayı şu komutla oluşturun:
sudo nano /opt/zookeeper/conf/zoo.cfg
Ardından, aşağıdaki içeriği dosyaya yapıştırın:
tickTime=2000
dataDir=/var/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=[server_ip]:2888:3888
server.2=[server_ip]:2888:3888
server.3=[server_ip]:2888:3888
Dosyayı kaydedin ve çıkın. Gruptaki her sunucuda işlemi tekrarlayın.
Çözüm
Bununla, Apache ZooKeeper’ı Ubuntu’ya başarıyla kurdunuz! Yukarıda bahsedildiği gibi, bu kurulum Ubuntu 18.04 ve en son 20.04 sürümünde çalışır.