将 Apigee Edge 4.16.09 更新为 4.17.09

适用于私有云的 Edge v. 4.17.09

哪些 Edge 版本可以更新到 4.17.09

您可以使用此过程将 Apigee Edge 版本 4.16.09.0x 更新为 4.17.09。

如果您使用的是低于 4.16.01 的 Edge 版本,则必须先迁移到 4.16.01.x 版,然后再更新到 4.17.09 版。

谁可以执行更新

运行更新的用户应与最初安装 Edge 的用户相同,或者是运行以 root 身份运行的用户。

安装 Edge RPM 后,任何用户都可以对其进行配置。

您必须更新哪些组件

您必须更新所有 Edge 组件。Edge 不支持包含多个版本的组件的设置。

必须升级到 Qpid 1.35

此版本包含对 Qpid 1.35 的必要更新。在更新 Qpid 节点的过程中,您必须执行以下操作:

  • 通过屏蔽 Qpid 节点上的端口 5672,暂时阻止路由器和消息处理程序向 Qpid 节点写入数据。您可以使用以下命令在 Qpid 节点上屏蔽此端口:
    > sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP
  • 等待 Qpid 队列中没有消息,以确保 Qpid 节点在更新之前已处理完所有消息。使用以下命令确保 Qpid 消息队列为空:
    > qpid-stat -q
  • 更新 Qpid 节点。
  • 解除 Qpid 节点上的端口 5672 的屏蔽,以允许路由器和消息处理程序访问。 您可以使用以下命令取消屏蔽此端口:
    > sudo iptables -F

    请注意,如果您要将 iptables 用于其他规则,可以使用 -D 选项来撤消具体更改:
    > sudo iptables -D INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP

下面为每个边缘拓扑详细介绍此过程。

必须启用才能启用 EPEL 代码库

您必须启用 Extra Packages for Enterprise Linux (or EPEL),才能安装或更新 Edge。您使用的命令取决于您的 RedHat/CentOS 版本:

  • 对于 RedHat/CentOS/Oracle 7.x:
    > wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm; rpm -ivh epel-release-latest-7.noarch.rpm
  • 对于 RedHat/CentOS/Oracle 6.x:
    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm; rpm -ivh epel-release-latest-6.noarch.rpm

必须添加 SMTPMAILFROM 配置参数

Edge 4.17.05 在启用 SMTP 服务器时使用的配置文件中添加了一个新的必需参数。如果您是从 4.17.01 进行更新,则必须在启用 SMTP 服务器时在配置文件中设置 SMTPMAILFROM

API BaaS 4.17.09 版还添加了对 SMTPMAILFROM 属性的支持。 更新 API BaaS 时,您必须在配置文件中设置 SMTPMAILFROM

此参数的格式为:

SMTPMAILFROM="My Company <myco@company.com>"

如果使用外部身份验证进行更新,则为必需项

您可以将外部目录服务集成到现有的 Apigee Edge 私有云安装中。此功能可与支持 LDAP 的任何目录服务(例如 Active Directory、OpenLDAP 等)搭配使用。借助外部 LDAP 解决方案,系统管理员可以通过集中式目录管理服务管理用户凭据,该服务位于使用这些凭据的 Apigee Edge 等系统之外。

如需了解详情,请参阅外部身份验证配置

启用外部身份验证后,大多数客户会使用 Active Directory SAM 账号名称字段作为身份验证的用户名,而不是 Edge OpenLDAP 服务器使用的电子邮件地址。

如果您已与外部目录服务集成,请在将 Edge 更新到 4.17.09 时将以下行添加到配置文件中:

IS_EXTERNAL_AUTH="true"

此行将 Edge 配置为支持使用账号名称(而不是电子邮件地址)作为用户名。

自动传播媒体资源设置

如果您通过修改 /opt/apigee/customer/application 中的 .properties 文件设置了任何属性,则这些值会在更新后保留。

更新前提条件

在升级 Apigee Edge 之前,请先满足以下前提条件:

  • 备份所有节点
    出于安全考虑,建议您在更新之前对所有节点执行完整备份。请使用适用于您当前 Edge 版本的步骤进行备份。

    这样,您就可以制定备用方案,以防更新到新版本时出现问题。如需详细了解备份,请参阅备份和恢复
  • 确保 Edge 正在运行
    使用以下命令确保 Edge 在更新过程中已启动并运行:

    > /opt/apigee/apigee-service/bin/apigee-all status

处理失败的更新

如果更新失败,您可以尝试更正问题,然后再次运行 update.sh。您可以多次运行此更新,系统会从上次中断的位置继续更新。

如果失败导致您需要将更新回滚到之前的版本,请参阅 4.17.09 回滚流程了解详情。

日志记录更新信息

默认情况下,update.sh 实用程序会将日志信息写入以下位置:

/opt/apigee/var/log/apigee-setup/update.log

如果运行 update.sh 实用程序的用户无权访问该目录,它会将日志作为名为 update_username.log 的文件写入 /tmp 目录。

如果用户无权访问 /tmpupdate.sh 实用程序将会失败。

零停机时间更新

零停机更新(也称为滚动更新)可让您在不停用 Edge 的情况下更新 Edge 安装。

只有配置为 5 个节点或更多节点时,才能实现零停机更新。

实现零停机升级的关键是从负载均衡器中逐个移除每个路由器。然后,更新与路由器位于同一计算机上的路由器和任何其他组件,然后将路由器重新添加到负载均衡器。

  1. 按照“机器更新顺序”部分中所述的正确顺序更新机器。
  2. 当需要更新路由器时,请选择任意一个路由器并使其不可访问,如启用/停用服务器(消息处理器/路由器)可访问性中所述。
  3. 在与路由器位于同一台机器上更新所选路由器和所有其他 Edge 组件。 所有 Edge 配置都会在同一节点上显示路由器和消息处理器。
  4. 使路由器再次可访问。
  5. 对其余路由器重复第 2 步到第 4 步。
  6. 为安装中的所有剩余机器继续更新。

在更新前/后,请注意以下事项:

  • 在合并了路由器和消息处理器的节点上:
    • 更新前 - 执行以下操作:
      1. 使路由器不可访问。
      2. 使消息处理器不可访问。
    • 更新后,请执行以下操作:
      1. 使消息处理器可访问。
      2. 使路由器可访问。
  • 在单个路由器节点上:
    • 在更新之前,请使路由器不可访问。
    • 更新后,使路由器可访问。
  • 在单个消息处理器节点上:
    • 在更新之前,使消息处理器不可访问。
    • 更新后,使消息处理器可访问。

使用静默配置文件

您必须将静默配置文件传递给更新命令。静默配置文件应该与您用于安装 Edge 4.16.09 的配置文件相同。

在具有外部互联网连接的节点上更新到 4.17.09 的步骤

按照以下步骤更新节点上的 Edge 组件:

  1. 在更新完成之前,停用配置为对 Cassandra 执行修复操作的所有 CRON 作业(如果有)。
  2. 以 root 用户身份登录节点,以安装 Edge RPM。
    注意:虽然 RPM 安装需要 root 访问权限,但您无需 root 访问权限即可执行 Edge 配置。
  3. 安装 yum-utilsyum-plugin-priorities
    > sudo yum install yum-utils
    > sudo yum install yum-plugin-priorities
  4. 按照安装 Edge apigee-setup 实用程序中的说明,停用 SELinux。
  5. 如上所述,启用 EPEL 代码库。
  6. 如果您是在 AWS 上安装,请运行以下 yum-configure-manager 命令:
    > sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
  7. 将 Edge 4.17.09 的 bootstrap_4.17.09.sh 文件下载到 /tmp/bootstrap_4.17.09.sh
    > curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
  8. 安装 Edge 4.17.09 apigee-service 实用程序及其依赖项:
    > sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName apigeepassword=pWord

    其中 uName:pWord 是您从 Apigee 收到的用户名和密码。如果您省略 pWord,系统会提示您输入。

    默认情况下,安装程序会检查您是否已安装 Java 1.8。如果没有,它会自动为您安装。使用 JAVA_FIX 选项指定如何处理 Java 安装。JAVA_FIX 采用以下值:

    I = 安装 OpenJDK 1.8(默认)
    C = 继续,不安装 Java
    Q = 退出。对于此选项,您必须自行安装 Java。
  9. 使用 apigee-service 更新 apigee-setup 实用程序:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  10. 更新管理服务器上的 apigee-validate 实用程序:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-validate update
  11. 更新 apigee-provision 实用程序:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-provision update
  12. 按照下文“计算机更新顺序”中所述的顺序,在节点上运行更新实用程序:
    > /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

    配置文件的唯一要求是“apigee”用户必须能够访问或读取该配置文件。

    使用“-c”选项指定要更新的组件。可能的组件列表包括:
    ldap = OpenLDAP
    cs = Cassandra
    zk = Zookeeper
    qpid = qpidd
    ps = postgresql
    edge =除 Edge 界面之外的所有 Edge 组件:管理服务器、消息处理器、路由器、QPID 服务器、Postgres 服务器
    ui = Edge 界面
    all = 更新机器上的所有组件(仅适用于 Edge aio 安装配置文件或 API BaaS asa 安装配置文件)
    e = ElasticSearch
    b = API BaaS 堆栈
    p = API BaaS 门户
    ebp = 同一节点上的 ElasticSearch、API BaaS 堆栈和 API BaaS 门户
  13. 在管理服务器上运行 apigee-validate 实用程序,以测试更新,如测试安装中所述。

如需日后回滚更新,请使用4.17.09 回滚过程中所述的步骤。

从本地代码库更新到 4.17.09 的步骤

如果您的 Edge 节点位于防火墙后面,或者以其他方式被禁止通过互联网访问 Apigee 代码库,则可以通过 Apigee 代码库的本地代码库或镜像执行更新。

创建本地 Edge 代码库后,您可以通过以下两种方式从本地代码库更新 Edge:

  • 创建代码库的 .tar 文件,将 .tar 文件复制到节点,然后通过 .tar 文件更新 Edge。
  • 在包含本地代码库的节点上安装 Web 服务器,以便其他节点可以访问该代码库。 Apigee 提供了 Nginx Web 服务器供您使用,您也可以使用自己的 Web 服务器。

如需从本地 4.17.09 代码库更新,请执行以下操作:

  1. 按照安装 Edge apigee-setup 实用程序中的“创建本地 Apigee 代码库”中的说明,创建一个本地 4.17.09 代码库。
    注意:如果您已有现有的 4.16.09 代码库,则可以按照安装 Edge apigee-setup 实用程序中的“更新本地 Apigee 代码库”部分所述,将 4.17.09 代码库添加到该代码库。
  2. 如需从 .tar 文件安装 apigee-service,请执行以下操作
    1. 在具有本地代码库的节点上,使用以下命令将本地代码库打包到名为 /opt/apigee/data/apigee-mirror/apigee-4.17.09.tar.gz 的单个.tar 文件中:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
    2. 将 .tar 文件复制到您要更新 Edge 的节点。例如,将其复制到新节点上的 /tmp 目录。
    3. 在新节点上,将文件解压缩到 /tmp 目录:
      > tar -xzf apigee-4.17.09.tar.gz

      此命令会在包含 .tar 文件的目录中创建一个名为 repos 的新目录。例如 /tmp/repos。
    4. 从 /tmp/repos 安装 Edge apigee-service 实用程序和依赖项:
      > sudo bash /tmp/repos/bootstrap_4.17.09.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

      请注意,您需要在此命令中添加 repos 目录的路径。
  3. 如需使用 Nginx Web 服务器安装 apigee-service,请执行以下操作
    1. 按照安装 Edge apigee-setup 实用程序中的“使用 Nginx Web 服务器从代码库安装”部分中的说明配置 Nginx Web 服务器。
    2. 在远程节点上,将 Edge bootstrap_4.17.09.sh 文件下载到 /tmp/bootstrap_4.17.09.sh:
      > /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh

      其中 uName:pWord 是您为代码库设置的用户名和密码,remoteRepo 是代码库节点的 IP 地址或 DNS 名称。
    3. 在远程节点上,安装 Edge apigee-service 实用程序和依赖项:
      > sudo bash /tmp/bootstrap_4.17.09.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

      其中 uName:pWord 是代码库用户名和密码。
  4. 使用 apigee-service 更新 apigee-setup 实用程序:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  5. 更新管理服务器上的 apigee-validate 实用程序。
    > /opt/apigee/apigee-service/bin/apigee-service apigee-validate 更新
  6. 更新 apigee-provision 实用程序:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-provision update
  7. 按照下文“计算机更新顺序”中所述的顺序,在节点上运行更新实用程序:
    > /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

    配置文件的唯一要求是“apigee”用户必须能够访问或读取该配置文件。

    使用“-c”选项指定要更新的组件。可能的组件列表包括:
    ldap = OpenLDAP
    cs = Cassandra
    zk = Zookeeper
    qpid = qpidd
    ps = postgresql
    edge =除 Edge 界面之外的所有 Edge 组件:管理服务器、消息处理器、路由器、QPID 服务器、Postgres 服务器
    ui = Edge 界面
    all = 更新机器上的所有组件(仅适用于 Edge aio 安装配置文件或 API BaaS asa 安装配置文件)
    e = ElasticSearch
    b = API BaaS 堆栈
    p = API BaaS 门户
    ebp = 同一节点上的 ElasticSearch、API BaaS 堆栈和 API BaaS 门户
  8. 在管理服务器上运行 apigee-validate 实用程序,以测试更新,如测试安装中所述。

如需日后回滚更新,请使用4.17.09 回滚过程中所述的步骤。

机器更新顺序

更新 Edge 安装中的计算机的顺序非常重要。更新时最重要的注意事项包括:

  • 您必须先更新 所有 Cassandra 和 ZooKeeper 节点,然后才能更新任何其他节点。
  • 对于具有多个 Edge 组件(管理服务器、消息处理器、路由器、QPID 服务器,但不包括 Postgres 服务器)的任何机器,请使用“-c edge”选项同时更新所有这些组件。
  • 如果某个步骤指定应在多台机器上执行,请按指定的机器顺序执行该步骤。
  • 更新创收功能没有单独的步骤。当您指定“-c 边缘”选项时,它会更新。

对于 1 主机独立安装

  1. 如果您在 Edge 上启用了 SMTP,请在配置文件中设置 SMTPMAILFROM。此参数的格式为:
    SMTPMAILFROM="My Company <myco@company.com>"
  2. 更新 Cassandra 和 ZooKeeper:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 设置以下 iptables 规则:
    > sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP
  4. 检查 Qpid 消息队列:
    > qpid-stat -q

    继续检查队列,直到“msg”列中的计数为 0。在 Qpid 处理完所有消息之前,您无法升级 Qpid。
  5. 更新 qpidd
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  6. 刷新 iptables:
    > sudo iptables -F
  7. 更新 postgresql:
    > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  8. 启动 postgresql:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  9. 更新 LDAP:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  10. 更新其余 Edge 组件:
    > /opt/apigee/apigee-setup/bin/update.sh -cedge -f configFile
  11. 更新 Edge 界面:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

对于 2 主机独立安装

如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑

  1. 如果您已在 Edge 上启用 SMTP,请在配置文件中设置 SMTPMAILFROM。此参数的格式为:
    SMTPMAILFROM="My Company <myco@company.com>"
  2. 在机器 1 上更新 Cassandra 和 ZooKeeper:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 在机器 2 上设置以下 iptables 规则:
    > sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP
  4. 检查机器 2 上的 Qpid 消息队列:
    > qpid-stat -q

    继续检查队列,直到“msg”列中的计数为 0。在 Qpid 处理完所有消息之前,您无法升级 Qpid。
  5. 在机器 2 上更新 qpidd
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  6. 在机器 2 上清空 iptables:
    > sudo iptables -F
  7. 在机器 2 上更新 postgresql:
    > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  8. 在机器 2 上启动 postgresql:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  9. 在机器 1 上更新 LDAP:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  10. 更新机器 2 和 1 上的 Edge 组件:
    > /opt/apigee/apigee-setup/bin/update.sh -cedge -f configFile
  11. 在机器 1 上更新界面:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

适用于包含 5 个主机的集群安装

如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑

  1. 如果您已在 Edge 上启用 SMTP,请在配置文件中设置 SMTPMAILFROM。此参数的格式为:
    SMTPMAILFROM="My Company <myco@company.com>"
  2. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 在机器 4 上设置以下 iptables 规则:
    > sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP
  4. 检查机器 4 上的 Qpid 消息队列:
    > qpid-stat -q

    继续检查队列,直到“msg”列中的计数为 0。在 Qpid 处理完所有消息之前,您无法升级 Qpid。
  5. 在机器 4 上更新 qpidd
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  6. 在机器 4 上清空 iptables:
    > sudo iptables -F
  7. 在计算机 5 上重复第 3 步到第 6 步。
  8. 在机器 4 上更新 postgresql:
    > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  9. 在机器 4 上启动 postgresql:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  10. 在计算机 5 上重复第 8 步和第 9 步。
  11. 在机器 1 上更新 LDAP:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  12. 更新机器 4、5、1、2、3 上的 Edge 组件:
    > /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  13. 在机器 1 上更新界面:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

适用于包含 9 个主机的集群安装

如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑

  1. 如果您已在 Edge 上启用 SMTP,请在配置文件中设置 SMTPMAILFROM。此参数的格式为:
    SMTPMAILFROM="My Company <myco@company.com>"
  2. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 在机器 6 上设置以下 iptables 规则:
    > sudo iptables -A INPUT -p tcp --destination-port 5672 !-s `hostname` -i eth0 -j DROP
  4. 检查机器 6 上的 Qpid 消息队列:
    > qpid-stat -q

    继续检查队列,直到“msg”列中的计数为 0。在 Qpid 处理完所有消息之前,您无法升级 Qpid。
  5. 在机器 6 上更新 qpidd
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  6. 在机器 6 上刷新 iptables:
    > sudo iptables -F
  7. 在计算机 7 上重复第 3 步到第 6 步。
  8. 更新机器 6 上的 postgresql:
    > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  9. 在机器 6 上启动 postgresql:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  10. 在计算机 7 上重复第 8 步和第 9 步。
  11. 在机器 1 上更新 LDAP:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  12. 依次更新机器 6、7、8、9、1、4 和 5 上的 Edge 组件:
    > /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  13. 在机器 1 上更新界面:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

对于 13 台主机的集群安装

如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑

  1. 如果您在 Edge 上启用了 SMTP,请在配置文件中设置 SMTPMAILFROM。此参数的格式为:
    SMTPMAILFROM="My Company <myco@company.com>"
  2. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 在机器 12 上设置以下 iptables 规则:
    > sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP
  4. 检查机器 12 上的 Qpid 消息队列:
    > qpid-stat -q

    继续检查队列,直到“msg”列中的计数为 0。在 Qpid 处理完所有消息之前,您无法升级 Qpid。
  5. 在机器 12 上更新 qpidd
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  6. 在机器 12 上刷新 iptables:
    > sudo iptables -F
  7. 在计算机 13 上重复第 3 步到第 6 步。
  8. 在机器 12 上更新 postgresql:
    > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  9. 在机器 12 上启动 postgresql:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  10. 在计算机 13 上重复第 8 步和第 9 步。
  11. 更新机器 4 和 5 上的 LDAP:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  12. 依次更新机器 12、13、8、9、6、7、10 和 11 上的 Edge 组件:
    > /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  13. 更新机器 6 和 7 上的界面:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

对于 12 主机集群安装

如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑

  1. 如果您已在 Edge 上启用 SMTP,请在配置文件中设置 SMTPMAILFROM。此参数的格式为:
    SMTPMAILFROM="My Company <myco@company.com>"
  2. 更新 Cassandra 和 ZooKeeper:
    1. 在数据中心 1 中的机器 1、2 和 3 上:
      > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
    2. 在数据中心 2 中的机器 7、8 和 9 上
      > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 更新了 qpidd:
    1. 数据中心 1 中的机器 4、5
      1. 在机器 4 上设置以下 iptables 规则:
        > sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP
      2. 检查机器 4 上的 Qpid 消息队列:
        > qpid-stat -q

        继续检查队列,直到“msg”列中的计数为 0。在 Qpid 处理完所有消息之前,您无法升级 Qpid。
      3. 在机器 4 上更新 qpidd
        > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
      4. 在机器 4 上刷新 iptables:
        > sudo iptables -F
      5. 在计算机 5 上重复第 1 步到第 4 步。
    2. 数据中心 2 中的机器 10、11
      1. 在机器 10 上设置以下 iptables 规则:
        > sudo iptables -A INPUT -p tcp --destination-port 5672 ! -s `hostname` -i eth0 -j DROP
      2. 检查机器 10 上的 Qpid 消息队列:
        > qpid-stat -q

        继续检查队列,直到“msg”列中的计数为 0。在 Qpid 处理完所有消息之前,您无法升级 Qpid。
      3. 在机器 10 上更新 qpidd
        > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
      4. 在机器 10 上刷新 iptables:
        > sudo iptables -F
      5. 在计算机 11 上重复第 1 步到第 4 步。
  4. 更新 postgresql:
    1. 数据中心 1 中的机器 6
      > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
    2. 数据中心 2 中的机器 12
      > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  5. 更新 LDAP:
    1. 数据中心 1 中的机器 1
      > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
    2. 数据中心 2 中的机器 7
      > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  6. 更新 Edge 组件:
    1. 数据中心 1 中的机器 4、5、6、1、2、3
      > /opt/apigee/apigee-setup/bin/update.sh -cedge -f configFile
    2. 数据中心 2 中的机器 10、11、12、7、8、9
      > /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. 更新了界面:
    1. 数据中心 1 中的机器 1:
      > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
    2. 数据中心 2 中的机器 7:
      > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

对于 7 主机 API BaaS 安装

# For a single data center, specify the same value as BAAS_CASS_LOCALDC.
BAAS_CASS_DC_LIST="dc-1"

# Defines the initial contact points for members of the BaaS cluster. 
# Specify the IP address of no more than two Stack nodes. 
BAAS_CLUSTER_SEEDS="dc-1:$IP4,dc-1:$IP5"

# Specify the from address of generated emails.
SMTPMAILFROM="My Company <myco@company.com>"

如需查看完整的配置文件示例,请参阅 API BaaS 安装

您还必须确保端口 2551 在所有堆栈节点上开放,以便从所有其他堆栈节点进行访问。

如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑

  1. 在机器 5、6 和 7 上更新 Cassandra:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  2. 在机器 1、2 和 3 上更新 ElasticSearch 和 API BaaS 堆栈:
    > /opt/apigee/apigee-setup/bin/update.sh -c e,b -f configFile

  3. 在机器 4 上更新 API BaaS 门户:
    > /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile

对于包含 10 个主机的 API BaaS 安装

# For a single data center, specify the same value as BAAS_CASS_LOCALDC.
BAAS_CASS_DC_LIST="dc-1"

# Defines the initial contact points for members of the BaaS cluster. 
# Specify the IP address of no more than two Stack nodes. 
BAAS_CLUSTER_SEEDS="dc-1:$IP4,dc-1:$IP5"

# Specify the from address of generated emails.
SMTPMAILFROM="My Company <myco@company.com>"

如需查看完整的配置文件示例,请参阅 API BaaS 安装

您还必须确保端口 2551 在所有堆栈节点上开放,以便从所有其他堆栈节点进行访问。

如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑

  1. 在机器 8、9 和 10 上更新 Cassandra:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  2. 在机器 1、2 和 3 上更新 ElasticSearch:
    > /opt/apigee/apigee-setup/bin/update.sh -c e -f configFile
  3. 在机器 4、5 和 6 上更新 API BaaS 堆栈:
    > /opt/apigee/apigee-setup/bin/update.sh -c b -f configFile
  4. 更新机器 7 上的 API BaaS 门户:
    > /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile

对于非标准安装

如果您使用的是非标准安装,请按以下顺序更新 Edge 组件:

  1. ZooKeeper
  2. Cassandra
  3. qpidd、ps
  4. LDAP
  5. 边缘,表示所有节点上的“-c edge”配置文件,按以下顺序:包含 Qpid 服务器的节点、Postgres 服务器、管理服务器、消息处理器和路由器。
    注意:如果节点同时安装了 Qpid 服务器和 Postgres 服务器,请运行“-c edge”配置文件步骤。
  6. Edge 界面