Apache ZooKeeper(アパッチズーキーパー)。分散環境運用サポートサービスを提供するコーディネーションエンジンです。各ノード(システム全体)を集中保守管理するための機能を提供します。

オープンソースの運用管理・運用自動化/Apache ZooKeeperとは

Apache ZooKeeper(アパッチズーキーパー)。分散環境運用サポートサービスを提供するコーディネーションエンジンです。各ノード(システム全体)を集中保守管理するための機能を提供します。

基本情報

概要

Apache ZooKeeper(アパッチズーキーパー)とは、分散環境運用サポートサービスを提供するコーディネーションエンジンです。各ノード(システム全体)を集中保守管理するための機能を提供します。

基本説明

分散アプリケーションを実装する場合、各分散ノードの設定などに大量の作業が発生してしまいます。ZooKeeperは設定作業などの本質的な部分を取り出し、集中型コーディネーションサービスとしてシンプルなインタフェースを提供します。

ZooKeeperには「設定管理」「名前解決」「同期」「グループサービス」などの利用頻度の高いさまざまなサービスが用意されています。

標準機能として「合意プロトコル」「グループ管理プロトコル」「リーダー選挙プロトコル」「プレゼンスプロトコル」などを利用できます。独自のニーズに対応したサービスの構築も可能です。

Apacheソフトウェア財団のオープンソースプロジェクトで、Hadoopのサブプロジェクトの1つです。Java実装でJVMで動作します。Java/C言語用のAPIが用意されています。

TOPに戻る

主な特徴

高スループット/低レイテンシー

ZooKeeperが管理する各種データは、ストレージではなくメモリ内に保持されるため、高いスループットと低遅延を実現しています。

高いパフォーマンスを出せるため、大規模分散システムに対応できます。クライアントからのアクセスが読み込み主体の場合には、特に高速で動作できます。

高可用性(マスタ冗長化)

ZooKeeperを複数のサーバにインストールして利用できます。可用性を高め、性能向上も期待できます。ZooKeeperを複数立ち上げると、マスタが自動で選択され各種統括管理を行います。

ZooKeeperマスタノードが何らかの理由で停止した場合には、各ノード間で選挙が行われ、新たなマスタノードが選出されます。

アトミック性

ZooKeeperが管理するデータはアトミックに読み書きが行われます。クライアントからの更新を順番に1つずつ適用します。各ノードごとにアクセス制限を設けることも可能です。

階層的名前空間

ZooKeeperはデータを階層的な名前空間で保存します。複数のサーバに分散している各プロセスは、この名前空間を共有することにより、互いに協調しつつ分散処理を進めます。

ノード間矛盾排除

データ更新はマスタノードのみが行うため、ノード間でデータが矛盾した内容になることがない仕組みになっています。

TOPに戻る

主な機能

共有設定機能

設定ファイルをZooKeeperサーバに保存し、各インスタンスがZooKeeperに保存されている設定ファイルを取得することで、各インスタンスの設定ファイルが同一であることを保証できます。

分散ロック機能

複数のインスタンスが同時に共有リソースを書き換えないようにするためのロック機能があります。

メンバー取得機能

分散システムの各インスタンスがZooKeeperのエフェメラルノードを登録しておくことにより、分散システム内で利用可能なインスタンスの一覧を取得できます。各クライアントはアクティブ状態のサーバに接続できます。

ウォッチ機能

あるプロセスが、特定のZooKeeperノードをウォッチ対象とすると、そのZooKeeperノードに変更があった場合に、プロセスに対して変更が通知されます。設定ファイルの再ロードトリガーなどに利用できます。

TOPに戻る

導入事例

分散キーバリューデータベース「HBase」、検索エンジン「SolrCloud」、分散リアルタイムストリーミング処理エンジン「Jubatus」などに採用されています。

主な適用分野として「ディレクトリサービス」「構成管理サービス」「同期サービス」「リーダー選出サービス」「メッセージキューサービス」「エンタープライズサーチシステム」などがあります。

TOPに戻る

ライセンス情報

Apache ZooKeeperのライセンスは「Apache License 2.0」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

TOPに戻る

ダウンロード

ダウンロードページ

TOPに戻る

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

Apache ZooKeeper最新TOPICS

最新情報はありません。

Apache ZooKeeper最新CLOSEUPコラム

  • オープソース書籍(サイド)

OSS×Cloud ACCESS RANKING

  • OSSNEWSに広告を掲載しませんか?

facebook

twitter