添加 Cassandra 节点

适用于私有云的 Edge v4.18.01

本文档介绍了如何将三个新的 Cassandra 节点添加到用于私有云安装的现有 Edge 中。

虽然您可以向现有 Edge 安装添加一个或两个 Cassandra 节点,但 Apigee 建议您一次添加三个节点。

如需查看 Cassandra 节点的系统要求列表,请参阅安装要求

现有 Edge 配置

适用于生产系统的所有受支持的 Edge 拓扑都指定使用三个 Cassandra 节点。将这三个节点指定为配置文件中的 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 节点时需要用到这些信息。

修改配置文件以添加三个新的 Cassandra 节点

在此示例中,三个新的 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" 

重要提示:将每个新的 Cassandra 节点添加到 CASS_HOSTS 现有节点之后

这样可以确保现有节点保留其初始令牌设置,并且每个新节点的初始令牌都介于现有节点的令牌值之间。

配置 Edge

修改配置文件后,您必须执行以下操作:

  • 重新配置现有的 Cassandra 节点
  • 在新节点上安装 Cassandra
  • 重新配置管理服务器

重新配置现有的 Cassandra 节点

在现有 Cassandra 节点上:

  1. 使用“-p c”配置文件和新的配置文件重新运行 setup.sh 文件:
    > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile

在新节点上安装 Cassandra

在每个新的 Cassandra 节点上:

  1. 在三个节点上安装 Cassandra:
    1. 按照安装 Edge apigee-setup 实用程序中的说明,在第一个节点上安装 apigee-setup
    2. 使用更新后的配置文件在第一个节点上安装 Cassandra:
      > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
    3. 对剩余的新 Cassandra 节点重复执行这两个步骤。
  2. 重新构建三个新的 Cassandra 节点,并通过 REGION 属性指定配置文件中设置的区域名称。在此示例中,该值为“dc-1”:
    1. 在第一个节点上,运行:
      > /opt/apigee/apigee-cassandra/bin/nodetool -h nodeIP rebuild dc-1
      其中 nodeIP 是 Cassandra 节点的 IP 地址。
    2. 在剩余的新 Cassandra 节点上重复此步骤。

重新配置管理服务器

在管理服务器节点上

  1. 重新运行 setup.sh 以更新新添加的 Cassandra 节点的管理服务器:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile

重启所有路由器和消息处理器

  1. 在所有路由器上:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  2. 在所有消息处理器上:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

释放现有 Cassandra 节点上的内存

在现有 Cassandra 节点上,运行 nodetool cleanup 命令以释放内存:

> /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP cleanup