사육사의 실제 사용 [닫힘]


122

최근 에 Zookeeper를 살펴 보았는데 현재 사용중인 사람이 있는지, 저장을 위해 특별히 사용하고있는 것이 무엇인지 궁금했습니다.

가장 일반적인 사용 사례는 구성 정보입니다.하지만 어떤 종류의 데이터를 저장하고 있습니까?


3
그것은 Hadoop 기술 그룹에 속합니다. 여기에 Yahoo의 사용 사례가 있습니다. 꽤 좋습니다.- developer.yahoo.net
Jon

사용 방법에 대한 구체적인 내용은 모르지만 최신 버전의 HBase (오픈 소스 BigTable 구현)가 ZooKeeper를 사용 한다는 것을 알고 있습니다.
Leo P

10
이 질문에는 모든 답변을 합친 것보다 더 많은 찬성표가 있습니다. 사육사는 더 나은 유스 케이스 위키가 필요합니다.
mixdev

1
Netflix에서 어떻게 사용하는지 확인하십시오. github.com/Netflix/curator/wiki/Recipes Curator는 Netflix의 ZK 용 래퍼 라이브러리 입니다.
eSniff 2013 년

이 기사를 확인하십시오 : stackextend.com/zookeeper/…
Mouad EL Fakir

답변:


13

DOSGi 의 Apache CXF 구현 은 서비스 등록 저장소로 zookeeper를 사용합니다. 개별 컨테이너에는 모든 서비스 이벤트를 수신하고 서비스 상태가 변경 될 때 배포를 나타내는 속성이있는 분산 소프트웨어 (dsw) 번들이 있습니다. dsw는 참조 구현 사례에서 zookeeper를 사용하여 서비스를 임시 노드로 저장하는 검색 번들과 통신합니다. 다른 인스턴스는 노드 구조의 변경 사항을 찾고 로컬 시스템에 프록시를 등록합니다. 최종 결과는 일반 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

Norbert 는 확장 가능한 프로덕션 시스템의 좋은 예입니다. 저는 일반적으로 Netty, Protocol Buffers 및 Zookeeper를 클러스터 된 서비스를 실행하기위한 경량 프레임 워크로 통합합니다. 프로토콜 버퍼는 서비스 API를 지정하는 데 사용되며 Netty는 전송 계층 추상화를 구현하며 Zookeeper는 본질적으로 내결함성 검색 서비스입니다.

서비스 인스턴스가 시작될 때마다 Norbert는이를 특정 서비스 유형의 사용 가능한 인스턴스로 등록합니다. 구현 관점에서 두 개의 Zookeeper 트리를 만듭니다.

  • 서비스의 알려진 모든 인스턴스를 나열하는 "/ ServiceName / members"
  • 현재 사용 가능한 서비스 인스턴스를 나열하는 "/ ServiceName / available"

각 노드의 가장 중요한 속성은 해당 서비스 인스턴스에 연결하는 데 사용할 URL입니다. 이는 클라이언트 측로드 밸런싱을 가능하게합니다. Norbert 클라이언트는 주어진 서비스 이름에 대한 URL 목록을 찾고 그중 하나에 연결을 시도하는 것은 순서입니다 (예 : 라운드 로빈 또는 무작위).


6

Elastic Cloud의 ZooKeeper에 대한 좋은 기사 ZooKeeper-The King of Coordination이 있습니다.

예를 들어 Found에서는 검색, 리소스 할당, 리더 선택 및 우선 순위가 높은 알림을 위해 ZooKeeper를 광범위하게 사용합니다. 이 기사에서는 조정의 왕을 소개하고 Found에서 ZooKeeper를 사용하는 방법을 자세히 살펴 봅니다.



3
  • 폭풍여러 회사에서 사용되며 (Twitter와 Groupon이 더 잘 알려져 있음) Zookeeper에 의존합니다.
  • Kafka 는 Linkedin에서 사용되며 Zookeeper에 의존합니다.

Storm 은 Zookeeper를 사용하여 모든 상태를 저장하므로 (분산) 구성 요소 서비스의 중단에서 복구 할 수 있습니다.

이렇게하면 구성 데이터가 필요할 때 구성 요소 서비스가 상태 비 저장 상태가되고 Zookeeper 서버와 간단히 다운로드하거나 동기화 할 수 있습니다. 프로덕션 서버를 복구해야했다면 이것이 얼마나 골치 아픈 일인지 알게 될 것입니다!

Kafka 대기열 소비자는 Zookeeper를 사용하여 대기열에서 소비 된 항목에 대한 정보 (최고 수위 표시)를 저장할 수 있습니다.


2

제 경우에는 클러스터 사용을 위해 zookeeper 앙상블에 구성 파일을 저장하고 있습니다. 우리는 리더-> 팔로어 스키마를 사용하고 있습니다. 따라서 사육사 한 명이 다운되면 다른 사육사로 전환됩니다 (복제 모드).




1

datomic 은 apache zookeeper를 사용하여 riak 기반 데이터 저장소를 관리합니다.

Riak은 현재 최종 일관성 만 지원하므로 Riak에서 실행되는 Datomic 시스템은 고 가용성 조정 서비스 인 Apache ZooKeeper도 사용합니다. Datomic은 트랜스 액터 장애 조치 조정과 CAS로 업데이트해야하는 데이터베이스 당 몇 개의 키에 ZooKeeper를 사용합니다. 출처 : http://blog.datomic.com/2012/11/riak-and-couchbase-support.html


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.