ZooKeeper ノードの追加

Edge for Private Cloud v4.19.01

このドキュメントでは、3 つの新しい ZooKeeper ノードを既存の Edge for Private Cloud インストールに追加する方法を説明します。

1 つまたは 2 つの ZooKeeper ノードを既存の Edge インストールに追加できますが、以下で説明するように、常に奇数の ZooKeeper ボーターノードがあることを確認する必要があります。

既存の Edge 構成

本番環境システムでサポートされているすべての Edge トポロジでは、3 つの ZooKeeper ノードを使用するように指定しています。3 つのノードは、以下に示すように、構成ファイル内の ZK_HOSTS および ZK_CLIENT_HOSTS プロパティに指定されています。

IP1=10.10.0.1
    IP2=10.10.0.2
    IP3=10.10.0.3
    HOSTIP=$(hostname -i)
    ADMIN_EMAIL=opdk@google.com
    APIGEE_ADMINPW=Secret123
    LICENSE_FILE=/tmp/license.txt
    MSIP=$IP1
    USE_LDAP_REMOTE_HOST=n
    LDAP_TYPE=1
    APIGEE_LDAPPW=secret
    MP_POD=gateway
    REGION=dc-1
    ZK_HOSTS="$IP1 $IP2 $IP3"
    ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3"
    CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1"
    SKIP_SMTP=n
    SMTPHOST=smtp.example.com
    SMTPUSER=smtp@example.com
    SMTPPASSWORD=smtppwd
    

各パラメータの説明は次のとおりです。

  • ZK_HOSTS では、ZooKeeper ノードの IP アドレスまたは DNS 名を指定します。すべての ZooKeeper ノード上で同じ順序で IP アドレスまたは DNS 名をリストアップする必要があります。複数のデータセンターからなる環境では、すべてのデータセンターのすべての ZooKeeper ノードをリストアップします。
  • ZK_CLIENT_HOSTS では、このデータセンターでのみ使用する ZooKeeper ノードの IP アドレスまたは DNS 名を指定します。すべての ZooKeeper ノード上で同じ順序で IP アドレスまたは DNS 名をリストアップする必要があります。

    単一のデータセンター インストールでは、ZK_HOSTS で指定するノードと同じノードを指定します。複数のデータセンターからなる環境では、このデータセンターの ZooKeeper ノードだけをリストしてください。

3 つの新しい ZooKeeper ノードを追加するための構成ファイルの変更

この例では、3 つの新しい ZooKeeper ノードが以下の IP アドレスにあります。

  • 10.10.0.14
  • 10.10.0.15
  • 10.10.0.16

最初に Edge 構成ファイルを更新して、新しいノードを追加する必要があります。

IP1=10.10.0.1
    IP2=10.10.0.2
    IP3=10.10.0.3
    # Add the new node IP addresses.
    IP14=10.10.0.14
    IP15=10.10.0.15
    IP16=10.10.0.16
    HOSTIP=$(hostname -i)
    ADMIN_EMAIL=opdk@google.com
    ...
    # Update ZK_HOSTS to add each new node after an existing nodes.
    ZK_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16:observer"
    # Update ZK_Client_HOSTS to add each new node after an existing nodes.
    ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16"

ZK_HOSTS の最後のノードを :observer 修飾子でマークします。:observer 修飾子が付いていないノードは「ボーター」と呼ばれます。構成内の「ボーター」の数は奇数である必要があります。したがって、この構成では、5 つの ZooKeeper ボーターと 1 つのオブザーバがあります。

ZK_HOSTSZK_CLIENT_HOSTS の両方にノードを同じ順序で追加してください。ただし、ZK_CLIENT_HOSTS を設定するときは :observer 修飾子を省略します。

Edge の構成

構成ファイルを編集したら、以下のタスクをすべて実行する必要があります。

新しいノードに ZooKeeper をインストールする

  1. Edge apigee-setup ユーティリティをインストールするの説明に従って、最初のノードに apigee-setup をインストールします。
  2. 次のコマンドを使用して、最初のノードに ZooKeeper をインストールします。
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
        /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
  3. 残りの新しい ZooKeeper ノードに対して手順 1 と 2 を繰り返します。

既存の ZooKeeper ノードを再構成する

既存の ZooKeeper ノードの場合:

  1. 新しい構成ファイルで setup コマンドを再実行します。
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile

すべての ZooKeeper ノードを再起動する

すべての ZooKeeper ノードの場合:

  1. ノードを再起動します。
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart

    すべての ZooKeeper ノードを再起動する必要がありますが、再起動の順序に指定はありません。

Management Server ノードを再構成する

Management Server ノードの場合:

  1. setup コマンドを実行します。
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server setup -f updatedConfigFile
  2. Management Server を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

すべての Router を再構成する

すべての Router ノードの場合:

  1. setup コマンドを実行します。
    /opt/apigee/apigee-service/bin/apigee-service edge-router setup -f updatedConfigFile
  2. Router を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart

Message Processor を再構成する

すべての Message Processor ノードの場合:

  1. setup コマンドを実行します。
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
  2. Message Processor を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

すべての Qpid ノードを再構成する

すべての Qpid ノードの場合:

  1. setup コマンドを実行します。
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server setup -f updatedConfigFile
  2. Qpid を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart

すべての Postgres ノードを再構成する

すべての Postgres ノードの場合:

  1. setup コマンドを実行します。
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server setup -f updatedConfigFile
  2. Postgres を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

インストールの検証

新しい ZooKeeper ノードのインストールを検証するには、netcat(nc)または telnet を使用してポート 2181 にコマンドを送信します。ZooKeeper コマンドの詳細については、http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands をご覧ください。

検証するには:

  1. nc が ZooKeeper ノードにインストールされていない場合は、次のコマンドを使用してインストールします。
    sudo yum install nc
  2. 次の nc コマンドを実行します。
    echo stat | nc localhost 2181
  3. 各 ZooKeeper ノードで手順 1 と 2 を繰り返します。各ノードの出力の Mode 行で、1 つのノードがオブザーバ、1 つのノードがリーダー、残りのノードがフォロワーとして指定されている必要があります。