Використання зоопарку в реальному світі [закрито]


122

Я недавно дивився на Zookeeper і цікавився, чи хтось його використовує в даний час і що вони спеціально використовують для зберігання.

Найпоширеніший випадок використання - це інформація про конфігурацію, але які дані та скільки даних ви зберігаєте?


3
Він підпадає під групу технологій Hadoop, тут є випадок використання від Yahoo, це дуже добре - developer.yahoo.net/blogs/hadoop/2009/05/…
Jon,

Я не знаю специфіки того, як він використовується, але я знаю, що в останній версії HBase (реалізація BigTable з відкритим кодом) використовується ZooKeeper.
Лев П

10
Це питання має більше результатів, ніж усі відповіді разом. Зоокерівник потребує кращого використання вікі.
mixdev

1
Перевірте, як Netflix використовує це. github.com/Netflix/curator/wiki/Recipes Куратор - це бібліотека Netflix для обгортки ZK.
eSniff

Перегляньте цю статтю: stackextend.com/zookeeper/…
Муад Е.Л. Факір

Відповіді:


13

Реалізація Apache CXF з DOSGi використовує його для Zookeeper реєстрації служби сховища. Окремі контейнери мають розподілене програмне забезпечення (dsw), яке прослуховує всі події сервісу та коли стан служби змінюється, має властивість, що вказує на розповсюдження. Dsw розмовляє з пакетом виявлення, який у випадку посилання на реалізацію використовує зоопарку для зберігання служби як ефемерних вузлів. Інші екземпляри шукатимуть зміни у структурі вузла та реєструватимуть проксі-сервіси у своїх локальних системах. Кінцевим результатом є те, що ви можете кодувати звичайний OSGi і забезпечити прозорий розподіл.


17

17

HBase використовує Zookeeper для координації діяльності, за яку "головний вузол" відповідав перед поточною версією. Перехід до використання Zookeeper означає, що центральне управління вже не є єдиною точкою відмови.

Зоопарк дуже універсальний; ось приклад його використання для побудови розподіленої паралельної черги:

http://blog.cloudera.com/blog/2009/05/building-a-distributed-concurrent-queue-with-apache-zookeeper/

Звичайно, ви також можете використовувати його для створення блокування ресурсів тощо у розподіленій системі.


14

Старе питання, але оскільки ця сторінка з’являється першою в пошуку Google щодо випадків використання зоокера, я подумав, що найкраще дати оновлений список

  1. Вікіпедія
  2. вікі зоопарку
  3. реальних користувачів

посилання "реальних користувачів" більше не існує :(
ginna

10

Норберт - хороший приклад з масштабованої системи виробництва. Я, як правило, інтегрує Netty, Buffers Protocol та Zookeeper у легку основу для роботи кластерних служб. Буфери протоколів використовуються для визначення API сервісу, Netty реалізує абстракції транспортного рівня, а Zookeeper - це по суті служба виявлення відмов.

Кожен раз, коли запускається екземпляр служби, Норберт реєструє його як доступний екземпляр певного типу послуги. З точки зору впровадження, він створює два дерева Zookeeper:

  • "/ ServiceName / members", в якому перераховані всі відомі екземпляри служби
  • "/ ServiceName / available", який перераховує наявні в даний час екземпляри послуги

Найважливішою властивістю кожного вузла є URL-адреса, яка використовується для підключення до відповідного екземпляра служби. Це дозволяє врівноважувати навантаження на стороні клієнта - клієнт Норберта знаходить список URL-адрес для заданої назви послуги та намагається підключитися до одного з них - це певний порядок (наприклад, круговий або випадковий).


6

Є хороша стаття ZooKeeper - Король координації про ZooKeeper в Еластичному Хмарі.

Наприклад, у програмі Found, ми широко використовуємо ZooKeeper для виявлення, розподілу ресурсів, виборів лідерів та сповіщень про високі пріоритети. У цій статті ми познайомимо вас із цим Королем координації та уважно подивимось, як ми використовуємо ZooKeeper в компанії Found



3
  • Шторм використовується багатьма компаніями (Twitter і Groupon є двома з найбільш відомих) і покладається на Zookeeper.
  • Кафка використовується Лінкедіном і покладається на Зоокетера.

Storm використовує Zookeeper для зберігання всіх станів, щоб він міг відновитися після відключення в будь-якому зі своїх (розподілених) компонентних послуг.

Це дозволяє службам компонентів бути без стану та просто завантажувати або синхронізувати з серверами Zookeeper, коли потрібні дані конфігурації. Якщо вам коли-небудь довелося відновити виробничий сервер, ви знатимете, що це може за головний біль!

Споживачі черги Kafka можуть використовувати Zookeeper для зберігання інформації (високий водний знак) про те, що було спожито з черги.


2

У моєму випадку ми зберігаємо файли конфігурації в ансамблі zookeeper для використання кластерів. Ми використовуємо схему лідера -> follower. Тож, коли одного зоопарку вниз ми переключаємо на іншого (реплікаційний режим)




1

Датомік використовує apache zookeeper для управління сховищем даних на базі даних.

Оскільки Riak підтримує лише можливу послідовність на даний момент, система Datomic, що працює на Riak, також використовує Apache ZooKeeper - високодоступну послугу координації. Datomic використовує ZooKeeper для координації аварійних відключень трансакторів та для декількох ключів у базі даних, які потребують оновлення CAS. джерело: http://blog.datomic.com/2012/11/riak-and-couchbase-support.html


0

Ось декілька деталей про те, як HBase використовує ZooKeeper , включаючи інформацію про те, як вони мають намір використовувати його в майбутньому. Зазвичай вони використовують його для усунення SPOF на серверах регіону через вибори Leader, реалізовані за допомогою ZooKeeper.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.