ZooKeeper Eğitimi: Nedir, ArchiApache ZooKeeper'ın yapısı

Dağıtık Sistem Nedir?

Dağıtılmış bir uygulama, bir ağdaki birden fazla sistemde çalışabilen bir uygulamadır. Belirli bir görevi tamamlamak için kendilerini koordine ederek aynı anda çalışırlar. Bu görevlerin herhangi bir dağıtılmamış uygulama tarafından tamamlanması saatler alabilir.

Hayvanat Bahçesi Bekçisi nedir?

Apaçi Hayvanat Bahçesi Bekçisi geniş bir ana bilgisayar kümesinin yönetilmesine yardımcı olan açık kaynaklı, dağıtılmış bir koordinasyon hizmetidir. Dağıtılmış bir ortamda yönetim ve koordinasyon zordur. Zookeeper bu süreci otomatikleştirir ve geliştiricilerin, yazılımın dağıtılmış yapısı hakkında endişelenmek yerine yazılım özellikleri oluşturmaya odaklanmasına olanak tanır.

Zookeeper, dağıtılmış uygulamalar için yapılandırma bilgilerini, adlandırmayı ve grup hizmetlerini korumanıza yardımcı olur. Uygulamanın kendi başına uygulama yapmaması için küme üzerinde farklı protokoller uygular. Birden fazla makinenin tek ve tutarlı bir görünümünü sağlar.

Neden Apache Zookeeper?

Zookeeper'ın popülaritesinin ardındaki önemli nedenler şunlardır:

  • Sunucu süreçleri arasında karşılıklı dışlamaya ve işbirliğine izin verir
  • Uygulamanızın tutarlı bir şekilde çalışmasını sağlar.
  • İşlem süreci hiçbir zaman kısmen tamamlanmaz. Başarılı veya başarısızlık durumu verilir. Dağıtılmış durum desteklenebilir ancak bu asla yanlış değildir
  • Bağlandığı sunucuya bakılmaksızın istemci, hizmetin aynı görünümünü görebilecek
  • Verileri belirli kurallar dizisine göre kodlamanıza yardımcı olur
  • Dosyalar ve dizinlere benzer standart bir hiyerarşik ad alanının korunmasına yardımcı olur
  • Yerel veya coğrafi olarak birbirine bağlanabilen tek bir sistem olarak çalışan bilgisayarlar
  • Bir kümedeki düğüme katılmaya/ayrılmaya ve gerçek zamanlı olarak düğüm durumuna izin verir
  • Daha fazla makine konuşlandırarak performansı artırabilirsiniz
  • Daha iyi koordinasyon için bir düğümü lider olarak seçmenize olanak tanır
  • ZooKeeper, veri okumanın yazma işleminden daha yaygın olduğu iş yükleriyle hızlı çalışır

hayvan bakıcısı Architecture: Nasıl çalışıyor?

İşte hakkında kısa bir açıklama Apache Hayvanat bahçesinin mimarisi:

  • Zookeeper bir İstemci-Sunucuyu takip ediyor Archidoku
  • Tüm sistemler verilerin bir kopyasını saklar
  • Liderler başlangıçta seçilir
ArchiZooKeeper'ın yapısı
ArchiZooKeeper'ın yapısı

Sunucu: Herhangi bir istemci bağlandığında sunucu bir onay gönderir. Bağlı sunucudan yanıt gelmemesi durumunda istemci, mesajı otomatik olarak başka bir sunucuya yönlendirir.

Müşteri: İstemci, dağıtılmış uygulama kümesindeki düğümlerden biridir. Sunucudaki bilgilere erişmenize yardımcı olur. Her istemci sunucuya düzenli aralıklarla bir mesaj göndererek sunucunun istemcinin hayatta olduğunu bilmesine yardımcı olur.

Lider: Sunuculardan biri Lider olarak atanır. Sunucunun canlı olduğuna dair bir onayın yanı sıra istemcilere tüm bilgileri verir. Bağlı düğümlerden herhangi birinin arızalanması durumunda otomatik kurtarma gerçekleştirir.

Takipçi: Lider talimatlarını takip eden sunucu düğümüne takipçi denir.

  • İstemci okuma istekleri, karşılık gelen bağlı Zookeeper sunucusu tarafından işlenir
  • İstemcinin yazma istekleri Zookeeper lideri tarafından işlenir.

Topluluk/Cluster: Topluluk veya bir grup olarak adlandırılan Zookeeper sunucuları grubu ClusterApache'yi çalıştırdığınızda sistemin optimum değerde olmasını sağlamak için küme modunda ZooKeeper altyapısını kullanabilirsiniz.

ZooKeeper Web Kullanıcı Arayüzü: ZooKeeper kaynak yönetimi ile çalışmak istiyorsanız kullanmanız gerekir. Web Kullanıcı Arayüzü. ZooKeeper ile komut satırını kullanmak yerine web kullanıcı arayüzünü kullanarak çalışmaya olanak tanır. ZooKeeper uygulaması ile hızlı ve etkili iletişim imkanı sunar.

Zookeeper Veri Modeli (ZDM)

Şimdi bu ZooKeeper eğitiminde Zookeeper Veri Modeli hakkında bilgi edinelim. Aşağıdaki şekilde Apache Zookeeper Veri Modeli açıklanmaktadır:

Zookeeper Veri Modeli
Zookeeper Veri Modeli
  • Zookeeper veri modeli, her düğümün ZNode olarak adlandırıldığı Hiyerarşik bir ad alanını takip eder. Düğüm, kümenin çalıştığı bir sistemdir.
  • Her ZNode'un verileri vardır. Çocuk sahibi olabilir de olmayabilir de
  • ZNode yolları:
    • Kanonik, eğik çizgiyle ayrılmış ve mutlak
    • Herhangi bir göreceli referans kullanmayın
    • Adlarda Unicode karakterler bulunabilir
  • ZNode, veri değişiklikleri için istatistik yapısını ve sürüm numarasını korur.

Zookeeper Düğümlerinin Türleri

Üç tür Znode vardır:

Sebat znode: Bu tür znode, söz konusu znode'u oluşturan istemcinin bağlantısı kesildikten sonra bile hayatta kalır. Zookeeper'da varsayılan olarak, belirtilmediği sürece tüm düğümler kalıcıdır.

fani znode: Bu tür hayvanat bahçesi bekçisi znode, müşteri hayatta olana kadar hayatta kalır. Bu nedenle, istemcinin hayvanat bahçesi sorumlusuyla bağlantısı kesildiğinde bu da silinecektir. Üstelik geçici düğümlerin çocuk sahibi olmasına izin verilmiyor.

Ardışık znode: Sıralı znode'lar geçici veya kalıcı olabilir. Yani sıralı bir znode olarak yeni bir znode oluşturulduğunda. Orijinal isme 10 haneli bir sıra numarası ekleyerek znode'un yolunu atayabilirsiniz.

ZDM-saatler

Zookeeper, bir izleme olayı, izlemeyi ayarlayan istemciye gönderilen tek seferlik bir tetikleyicidir. Bu, izlemeden gelen veriler değiştiğinde gerçekleşir. ZDM izleme, istemcilerin znode değiştiğinde bildirim almasını sağlar. getData(), getChidleren() gibi ZDM okuma işlemlerinin bir izleme ayarlama seçeneği vardır.

Saatler sıralanır, izleme etkinliklerinin sırası güncellemelerin sırasına karşılık gelir. Bir müşteri, o znode'a karşılık gelen yeni verileri görmeden önce znode için bir izleme etkinliğini görebilecek.

ZDM- Erişim Kontrolü listesi

Zookeeper, znode'larına erişimi kontrol etmek için ACL'leri kullanır. ACL bir çiftten oluşur (Şema: kimlik, izin)

ACL şemalarını oluşturun:

dünya: tek bir kimliği olan herkes

auth: Herhangi bir kimlik kullanmayın, kimliği doğrulanmış herhangi bir kullanıcıyı temsil eder

özet: bir kullanıcı adı kullanın: şifre

ana bilgisayar: İstemcinin ana bilgisayar adını ACL kimliği kimliği olarak kullanmanıza olanak tanır

IP: istemci ana bilgisayar IP adresini ACL kimlik kimliği olarak kullanın

ACL İzinleri:

  • CREATE
  • OKU
  • YAZ
  • SİL
  • YÖNETİCİ

Örn (IP: 192.168.0.0/16, OKU)

ZKS – Oturum Durumları ve Yaşam Süresi

ZKS – Oturum Durumları
ZKS – Oturum Durumları
  • Herhangi bir isteği yürütmeden önce istemcinin hizmetle bir oturum oluşturması önemlidir.
  • İstemcilerin servise gönderdiği tüm işlemler otomatik olarak bir oturumla ilişkilendirilir
  • İstemci kümedeki herhangi bir sunucuya bağlanabilir. Ancak yalnızca tek bir sunucuya bağlanacak
  • Seans “sipariş garantileri” sağlar. Oturumdaki istekler FIFO sırasına göre yürütülür
  • Bir oturumun ana durumları şunlardır: 1) Bağlanıyor, 2) Bağlandı 3) Kapalı 4) Bağlı Değil.

ZooKeeper Nasıl Kurulur

) 1 Adım Abone Olmaya Devam Et'e tıklayın
Buna git Link ve 'Abone Olmaya Devam Et'i tıklayın

ZooKeeper'ı yükleyin

) 2 Adım Şartlar ve Koşulları kabul edin
Sonraki sayfada Lisans Sözleşmesini Kabul Edin

ZooKeeper'ı yükleyin

) 3 Adım Teşekkür Mesajı gösterildi
Aşağıdaki mesajı göreceksiniz

ZooKeeper'ı yükleyin

) 4 Adım Yapılandırmaya Devam Et'e tıklayın
5 dakika sonra sayfayı yenileyin ve Yapılandırmaya Devam Edin

ZooKeeper'ı yükleyin

) 5 Adım 'Başlatmaya Devam Et'i tıklayın
Bir sonraki ekranda ZooKeeper'ı başlatın

ZooKeeper'ı yükleyin

) 6 Adım Tebrikler!
Bitirdiniz!

Apache ZooKeeper Uygulamaları

Apache Zookeeper aşağıdaki amaçlar için kullanılır:

  • Yapılandırmayı yönetme
  • Adlandırma hizmetleri
  • Lideri seçmek
  • Mesajları sıraya koyma
  • Bildirim sistemini yönetmek
  • Synckronizasyon
  • Dağıtılmış Cluster Yönetim

Zookeeper kullanan şirketler

  • Yahoo
  • Facebook
  • eBay
  • Twitter
  • Netflix
  • Zynga
  • Nutanix

Zookeeper kullanmanın dezavantajları

  • Yeni Zookeeper Sunucuları ekliyorsanız veri kaybı meydana gelebilir
  • Kullanıcılar için Taşımaya izin verilmiyor
  • Raf yerleştirme ve farkındalık konusunda destek sunmamak
  • Zookeeper, kazara veri kaybını önlemek için bölme sayısını azaltmanıza izin vermiyor
  • Hizmet bir sanal ağ üzerinde dağıtıldığında, tam yeniden yükleme olmadan hizmeti ana bilgisayar ağına geçiremezsiniz
  • Hizmet, ilk dağıtım bittikten sonra birim gereksinimlerinin değiştirilmesini desteklemiyor
  • Çok sayıda düğüm söz konusu olduğundan birden fazla hata noktası olabilir
  • Mesajlar iletişim ağında kaybolabilir ve bu durum, mesajın tekrar kurtarılması için özel bir yazılım gerektirir.

ÖZET

  • Dağıtılmış uygulama, bir ağdaki birden fazla sistemde çalışabilen bir uygulamadır
  • Apache Zookeeper, geniş bir ana bilgisayar kümesini yönetmenize yardımcı olan açık kaynaklı bir dağıtılmış koordinasyon hizmetidir
  • Sunucu süreçleri arasında karşılıklı dışlamaya ve işbirliğine izin verir
  • Sunucu, İstemci, Lider, Takipçi, Topluluk/Cluster, ZooKeeper WebUI önemli zookeeper bileşenleridir
  • Üç tür Znode vardır: Kalıcı, Geçici ve sıralı
  • ZDM izleme, izlemeyi ayarlayan istemciye gönderilen tek seferlik bir tetikleyicidir. Bu saatin verileri değiştiğinde meydana geldi
  • Zookeeper Hadoop, znode'larına erişimi kontrol etmek için ACL'leri kullanıyor
  • Konfigürasyonun yönetilmesi, Servislerin adlandırılması, Liderin seçilmesi, Mesajların sıraya alınması, Bildirim sisteminin yönetilmesi, Synchronizasyon, Dağıtılmış Cluster Yönetim vb.
  • Yahoo, Facebook, eBay, Twitter, Netflix zookeeper kullanan bilinen bazı şirketler var mı
  • Aracın ana dezavantajı, yeni Zookeeper Sunucuları eklerseniz kaybın meydana gelebilmesidir.