移动 Apigee 服务器

适用于私有云的 Edge v4.18.05

Apigee 组件使用 IP 地址相互通信。移动组件 可能会导致配置不匹配。要解决配置不匹配问题,请按照 请参阅下方相关说明。

更改 Cassandra 节点的 IP 地址

如需更改 Cassandra 节点的 IP 地址,请执行以下步骤:

对于 具有单个 Cassandra 节点的配置

  1. 修改“/opt/apigee/customer/application/cassandra.properties” 更改。如果该文件不存在,请创建该文件。
  2. 更改以下参数: <ph type="x-smartling-placeholder">
      </ph>
    • 设置 conf_cassandra_seedsconf_cassandra_listen_address 用于指定系统的新 IP 地址的参数。
    • 更改要使用的 conf_cassandra_rpc_address 新 IP 地址或 0.0.0.0(可让 Cassandra Thrift 监听所有 接口)。
  3. 打开“/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties” 。您应该会以如下形式看到旧 IP 地址和默认设置:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    保存这些信息。

  4. 修改“/opt/apigee/customer/application/cassandra.properties” 将指定的旧 IP 地址更改为新 IP 地址:
    conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n

    请务必插入“\n”指定与上述 IP 地址相同的默认设置, 如上面第 3 步中所示。

  5. 重启 Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. 如有必要,还要修复 ZooKeeper(见下文),否则,请重启每个 Apigee 平台 组件。

对于 具有多个 Cassandra 节点(环)的配置

  1. 如果要更改的节点是种子节点,请修改 /opt/apigee/customer/application/cassandra.properties 文件,并将 conf_cassandra_seeds 参数更改为包含 更改后的系统的新 IP。如果 cassandra.properties 文件不存在,请创建 。
  2. 修改“/opt/apigee/customer/application/cassandra.properties” 然后更改以下参数: <ph type="x-smartling-placeholder">
      </ph>
    • conf_cassandra_listen_address 设置为使用新的 IP 地址。
    • conf_cassandra_rpc_address 设置为使用新的 IP 地址或“0.0.0.0” (可让 Cassandra Thrift 监听所有接口)。
  3. 打开“/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties” 。您应该会在 表单:
    192.168.56.101=dc-1:ra-1
    192.168.56.102=dc-1:ra-1
    192.168.56.103=dc-1:ra-1
    default=dc-1:ra-1

    保存这些信息。

  4. 修改“/opt/apigee/customer/application/cassandra.properties” 将指定的旧 IP 地址更改为新 IP 地址:
    conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n

    请务必插入“\n”并使用相同的默认设置 在上文第 3 步中记录。

  5. 在修改后的系统上重启 Cassandra。如果修改后的系统是种子节点, 重新启动每一个使用了修改的种子节点的系统。
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. 运行 nodetool ring 命令,以确保环已完成。此实用程序可在以下位置找到: /opt/apigee/apigee-cassandra/bin
    nodetool -h localhost ring
  7. nodetool repair 已修改的节点。请注意,此过程可能需要一些时间,因此强烈建议您 切勿在 API 流量高峰时段执行此操作。
    nodetool -h localhost repair
  8. 如有必要,请修复 ZooKeeper(见下文),然后重启每个 Apigee 平台组件 首先是管理服务器

更新数据存储区 注册

  1. 使用 命令。记录“type”和“UUID”参数: <ph type="x-smartling-placeholder">
      </ph>
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics&region=DC" | egrep -i '[type|internalip|uuid|region]'

      其中,DC 是数据中心名称。在单个数据中心安装中, 值通常为“dc-1”。

  2. 使用以下命令之一注册新的 IP 地址。所需的命令将 取决于已更改节点的类型。
    • 对于 type="application-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP&region=REGION&pod=central" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST
    • 对于 type="kms-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \
        &InternalIP=NEWIP&region=REGION&pod=GATEWAY_POD" -H 'content-type: \
        application/x-www-form-urlencoded' -X POST
    • 对于 type="reportcrud-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \
        "Type=reportcrud-datastore&InternalIP=NEW_IP&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. 删除 IP 地址所在系统的 UUID 的旧注册 已更改。对于上述每个 UUID 问题:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

更改 ZooKeeper 节点的 IP 地址

请按照以下步骤更改 ZooKeeper 节点的 IP 地址:

更改 IP 地址并重启 ZooKeeper 集成学习(适用于多节点集成学习配置) )

  1. 在编辑器中打开 /opt/apigee/apigee-zookeeper/conf/zoo.cfg。您应该会看到 形式如下:
    server.1=192.168.56.101:2888:3888
    server.2=192.168.56.102:2888:3888
    server.3=192.168.56.103:2888:3888

    保存这些信息。

  2. 在每个 ZooKeeper 节点上,修改 /opt/apigee/customer/application/zookeeper.properties 文件 将 conf_zoo_quorum 属性设置为正确的 IP 地址。如果文件 不存在,请创建。
    conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n

    请务必插入“\n”并且条目会按照相同的顺序 每个节点。

  3. 使用以下命令查找 ZooKeeper 集成学习的领导者(将 将 node 替换为 ZooKeeper 机器的 IP 地址:
    echo srvr | nc node 2181

    输出中的 Mode 行应显示“leader”。

  4. 逐个重启 ZooKeeper,从主要节点开始,并以节点所在的节点结束 更改的 IP 地址如果有多个 zookeeper 节点更改了 IP 地址,它也可能 必须重启所有节点
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. 使用上述 echo 命令验证每个 ZooKeeper 节点。

将更改后的配置告知 Apigee 节点

  1. 在每个路由器节点上,修改文件 /opt/apigee/customer/application/router.properties ,如下所示。如果该文件不存在,请创建该文件。
    • 更改 conf_zookeeper_connection.string 参数以包含新 IP 地址
    • 更改 conf_zookeeper_zk1.host 参数以包含新 IP 地址
  2. 在每个消息处理器节点上,修改文件 /opt/apigee/customer/application/message-processor.properties ,如下所示。如果该文件不存在,请创建该文件。
    • 更改 conf_zookeeper_connection.string 参数以包含新参数 IP 地址
    • 更改 conf_zookeeper_zk1.host 参数以包含新 IP 地址
  3. 在管理服务器节点上,修改文件 /opt/apigee/customer/application/management-server.properties ,如下所示。如果该文件不存在,请创建该文件。
    • 更改 conf_zookeeper_connection.string 参数以包含新参数 IP 地址
    • 更改 conf_zookeeper_zk1.host 参数以包含新 IP 地址
  4. 通过在每个节点上运行以下命令来重启所有 Apigee 平台组件:
    /opt/apigee/apigee-service/bin/apigee-all restart

更改 LDAP 服务器的 IP 地址 (OpenLDAP)

如需更改 OpenLDAP 节点的 IP 地址,请执行以下操作:

  1. 在管理服务器节点上,修改文件 /opt/apigee/customer/application/management-server.properties 文件。如果该文件不存在,请创建该文件。
  2. management-server.properties 文件中,设置 将 conf_security_ldap.server.host 参数设置为新的 IP 地址。
  3. 重启管理服务器:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

更改其他 Apigee 节点的 IP 地址 类型

更改任意节点类型(路由器、消息处理器、Postgres)的 IP 地址 服务器(非 postgresql)和 Qpid 服务器(非 qpidd):

  1. 使用以下 curl 命令注册新的内部和外部 IP 地址:
    curl -u ADMINEMAIL:PW -X PUT \
      http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
    curl -u ADMINEMAIL:PW -X PUT \
      http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip

    其中,uuid 是节点的 UUID。

如果您不知道节点的 UUID,则可以使用以下命令显示该 UUID:

  • 路由器
    curl http://router_IP:8081/v1/servers/self
  • 消息处理器
    curl http://mp_IP:8082/v1/servers/self
  • Qpid
    curl http://qp_IP:8083/v1/servers/self
  • Postgres
    curl http://pg_IP:8084/v1/servers/self