メンバーシップ・サーバーの起動

zkServer.shシェル・スクリプトを使用してメンバーシップ・サーバーを起動する前に、最大Javaヒープ・サイズを設定して、ZooKeeperをファイル・システムにスワップするかどうかを決定する必要があります。Java最大ヒープ・サイズは、使用可能な実メモリーの容量よりも大きくしないでください。zkEnv.shシェル・スクリプトを編集して、最大Javaヒープ・サイズを4GBに設定するJVMFLAGS環境変数を含む新しい行を追加します。起動時に、zkServer.shシェル・スクリプトはzkEnv.shシェル・スクリプトを取得して、この新しい環境変数を含めます。

ZooKeeperシェル・スクリプトは、ZooKeeperサーバーの/binディレクトリにあります。たとえば、各メンバーシップ・サーバー上の/grid/membershipディレクトリにapache-zookeeper-3.8.4-bin.tar.gzファイルを解凍した場合、zkEnv.shおよびzkServer.shシェル・スクリプトは/grid/membership/apache-zookeeper-3.8.4-bin/binディレクトリに配置されます。

次の例では、zkEnv.shシェル・スクリプトを編集し、zkEnv.shスクリプト内のZOOKEEPER_PREFIXの行の後にJVMFLAGS=Xmx4g構成を追加します。

ZOOBINDIR="${ZOOBINDIR:-/usr/bin}"
ZOOKEEPER_PREFIX="${ZOOBINDIR}/.."
JVMFLAGS=-Xmx4g

各サーバーでzkServer.sh startシェル・スクリプトを実行して、各メンバーシップ・サーバーを起動します。

% setenv ZOOCFGDIR /grid/membership/apache-zookeeper-3.8.4-bin/conf
% /grid/membership/apache-zookeeper-3.8.4-bin/bin/zkServer.sh start

各メンバーシップ・サーバー上でzkServer.sh statusコマンドを実行して、各メンバーシップ・サーバーのステータスを確認できます。

% /grid/membership/apache-zookeeper-3.8.4-bin/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /grid/membership/apache-zookeeper-3.8.4-bin/conf/zoo.cfg
Mode: { leader | follower }

メンバーシップ・サーバーが実行されていない場合、レプリケート・モードでない場合、または過半数が実行されていない場合は、次のエラーが表示されます。

ZooKeeper JMX enabled by default
Using config: /grid/membership/apache-zookeeper-3.8.4-bin/conf/zoo.cfg
Error contacting service. It is probably not running.

さらに、ruok ZooKeeperコマンドを使用して、メンバーシップ・サーバーが非エラー状態で実行されているかどうかを確認できます。サーバーが実行中の場合、このコマンドはimokを返します。それ以外の場合、レスポンスはありません。ネットワーク内のマシンから、次を実行します。

% echo ruok | nc ms_host1 2181
imok

パフォーマンスおよび接続されているクライアントに関する統計の場合は、stat ZooKeeperコマンドを使用します。ネットワーク内のマシンから、次を実行します。

% echo stat | nc ms_host1 2181

メンバーシップ・サーバーが起動された後、グリッドを作成できます。「メンバーシップ・サービス・クライアントとしてのグリッドの構成」を参照してください。