Cassandra ノードの追加

Edge for Private Cloud v4.19.01

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

既存の Edge 環境に 1 つまたは 2 つの Cassandra ノードを追加できる場合は、3 つ同時に追加することをおすすめします。

Cassandra ノードのシステム要件については、インストール要件をご覧ください。

既存の Edge 構成

本番環境システムでサポートされている Edge トポロジでは、3 つの Cassandra ノードを使用するように設定されています。この 3 つのノードは、次のように構成ファイルの CASS_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"
    # Must use IP addresses for CASS_HOSTS, not DNS names.
    CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" 
    SKIP_SMTP=n
    SMTPHOST=smtp.example.com
    SMTPUSER=smtp@example.com
    SMTPPASSWORD=smtppwd

上の REGION プロパティには、"dc-1" というリージョン名が指定されています。この情報は、新しい Cassandra ノードを追加する際に必要になります。

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

この例では、3 つの新しい Cassandra ノードには次の 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 CASS_HOSTS to add each new node after an existing nodes. 
    # Must use IP addresses for CASS_HOSTS, not DNS names.
    CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1"
    

これにより、既存ノードの初期トークンの設定が維持されます。新しいノードの初期トークンは、既存ノードのトークン値の間に挿入されます。

Edge を構成する

構成ファイルを編集したら、次の作業を行います。

  • 既存の Cassandra ノードを再構成する
  • 新しいノードに Cassandra をインストールする
  • Management Server を再構成する

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

既存の Cassandra ノードで次の操作を行います。

  1. "-p c" プロファイルと新しい構成ファイルを指定して setup.sh を実行します。
    /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile

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

新しい Cassandra ノードで次の操作を行います。

  1. 3 つのノードに Cassandra をインストールします。
    1. Edge apigee-setup ユーティリティをインストールするの説明に従って、最初のノードに apigee-setup をインストールします。
    2. 更新した構成ファイルを使用して、最初のノードに Cassandra をインストールします。
      /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
    3. 残りの新しい Cassandra ノードにも上の 2 つの手順を行います。
  2. 構成ファイルの REGION プロパティに設定されたリージョン名を指定して、3 つの新しい Cassandra ノードを再構築します。この例では、"dc-1" がリージョン名です。
    1. 最初のノードで、以下のコマンドを実行します。
      /opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1

      ここで、nodeIP は Cassandra ノードの IP アドレスです。

      ユーザー名とパスワードを渡す必要があるのは、Cassandra に対して JMX 認証を有効にした場合のみです。

    2. 残りの新しい Cassandra ノードで同じ手順を繰り返します。

Management Server を再構成する

Management-Server ノードで次の操作を行います。

  1. 新たに追加した Cassandra ノードが反映されるように、setup.sh を実行して Management Server を更新します。
    /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile

すべての Router と Message Processor を再起動する

  1. すべての Router で、以下のコマンドを実行します。
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  2. すべての Message Processor で、以下のコマンドを実行します。
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

既存の Cassandra ノードのディスク スペースを解放する

新しいノードを追加した後、既存ノードに対して nodetool cleanup コマンドを使用してディスク スペースを解放できます。このコマンドは、既存の Cassandra ノードによって所有されていない構成トークンをクリアします。

新しいノードを追加した後に既存の Cassandra ノードのディスク スペースを解放するには、次のコマンドを実行します。

/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup

ユーザー名とパスワードを渡す必要があるのは、Cassandra に対して JMX 認証を有効にした場合のみです。