将 Apigee Edge 4.18.01 或 4.18.05 更新为 4.19.06

本部分介绍如何执行以下升级:

  • 1 月 4 日至 6 月 4 日 19 日
  • 从 5 月 4 日 18 日到 6 月 4 日 19 日

谁可以执行更新

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

安装 Edge RPM 后,任何用户都可以配置它们。

必须更新哪些组件

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

媒体资源设置自动传播

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

更新前提条件

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

  • 备份所有节点
    出于安全考虑,建议您先完整备份所有节点,然后再进行更新。请按照当前版本 Edge 中的步骤执行备份。

    这样,您就可以制定一个备份方案,以备在新版本更新无法正常运行时使用。如需详细了解备份,请参阅备份和恢复

  • 确保 Edge 正在运行
    使用以下命令确保在更新过程中 Edge 已启动并运行:
    /opt/apigee/apigee-service/bin/apigee-all status

全新 Edge 界面

本部分列出了有关新版 Edge 界面的注意事项。

安装 Edge 界面

完成初始安装后,Apigee 建议您安装 Edge 界面,这是为适用于私有云的 Apigee Edge 的开发者和管理员提供的增强界面。

如需了解详情,请参阅安装新版 Edge 界面

更新 Edge 界面

如果您在 4.18.0x 中安装了 Beta 版 Edge 界面(以前称为 New Edge 体验UE),则必须将其卸载并重新安装 4.19.01 或 4.19.06 版 Edge 界面。如需了解详情,请参阅适用于私有云的新 Edge 界面

请注意,Edge 4.18.01(但不包括 4.18.05)中的安装配置有所更改。 Edge 4.19.06 版本的 Edge 界面包含对 Edge 4.18.01 版本中配置文件的更改。Edge 4.18.01 中的安装配置更改中介绍了新属性。

处理失败的更新

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

如果失败操作需要您将更新回滚到先前版本,请参阅回滚 4.19.06 了解详情。

Logging 更新信息

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

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

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

如果用户无权访问 /tmp,则 update.sh 实用程序会失败。

零停机时间更新

借助零停机更新或滚动更新,您无需关闭 Edge 即可更新 Edge 安装。

只有具有 5 个节点及更大的节点配置才能实现零停机更新。

零停机升级的关键是从负载平衡器中一次移除一个路由器。然后,在与路由器相同的机器上更新路由器和任何其他组件,再将路由器重新添加到负载平衡器。

  1. 按照机器更新的顺序中的说明,按照正确的安装顺序更新机器。
  2. 在更新路由器时,选择任意一个路由器并使其无法访问,如启用/停用服务器(消息处理器/路由器)可达性中所述。
  3. 在与路由器相同的机器上,更新所选路由器和所有其他 Edge 组件。 所有边缘配置都在同一节点上显示路由器和消息处理器。
  4. 使该路由器可再次连接。
  5. 对其余路由器重复步骤 2 到 4。
  6. 继续更新安装中的所有其余计算机。

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

  • 在合并的路由器和消息处理器节点上:
    • 更新前,请执行以下操作:
      1. 使路由器无法访问。
      2. 使消息处理器无法访问。
    • 更新后,请执行以下操作:
      1. 使消息处理器可访问。
      2. 使路由器可访问。
  • 在单个路由器节点上:
    • 更新前,请先确保该路由器无法访问。
    • 更新后,使路由器可访问。
  • 在单个消息处理器节点上:
    • 更新前,请将消息处理器设为无法访问。
    • 更新后,使消息处理器可访问。

使用静默配置文件

您必须将静默配置文件传递给 update 命令。静默配置文件应该与您安装 Edge 4.18.0x 时所用的配置文件相同。

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

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

  1. 如果存在配置为在 Cassandra 上执行修复操作的 CRON 作业,则停用该作业,直到更新完成为止。
  2. 以根用户身份登录您的节点以安装 Edge RPM。
  3. 安装 yum-utilsyum-plugin-priorities
    sudo yum install yum-utils
    sudo yum install yum-plugin-priorities
  4. 按照安装 Edge apigee-setup 实用程序中的说明停用 SELinux。
  5. 如果您是在 Oracle 7.x 上进行安装,请运行以下命令:
    sudo yum-config-manager --enable ol7_optional_latest
  6. 如果您要在 AWS 上安装,请运行以下 yum-configure-manager 命令:
    yum update rh-amazon-rhui-client.noarch
    sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
  7. 将 Edge 4.19.06 bootstrap_4.19.06.sh 文件下载到 /tmp/bootstrap_4.19.06.sh
    curl https://software.apigee.com/bootstrap_4.19.06.sh -o /tmp/bootstrap_4.19.06.sh
  8. 安装 Edge 4.19.06 apigee-service 实用程序和依赖项:
    sudo bash /tmp/bootstrap_4.19.06.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. 按照机器更新的顺序中所述的顺序在您的节点上运行 update 实用程序:
    /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

    其中,component 是要更新的 Edge 组件。可能的值包括:

    • "cs":Cassandra
    • “edge”:所有边缘组件(边缘界面除外):管理服务器、消息处理器、路由器、QPID 服务器、Postgres Server
    • “ldap”:OpenLDAP
    • "ps":postgresql
    • "qpid": qpidd
    • “sso”:Apigee SSO(如果您安装了 SSO)
    • "ui":边缘界面
    • “zk”:Zookeeper

    configFile 与您在 4.18.0x 安装期间用于定义 Edge 组件的配置文件相同。

    您可以对所有组件运行 update.sh,只需将 component 设置为“all”,但前提是您拥有 Edge 一体式 (aio) 安装配置文件。例如:

    /opt/apigee/apigee-setup/bin/update.sh -c all -f ./sa_silent_config
  13. 在运行 Edge 界面组件的所有节点上重启它(如果您尚未执行此操作):
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
  14. 通过在管理服务器上运行 apigee-validate 实用程序来测试更新,如测试安装中所述。

如果您以后决定回滚更新,请按照回滚 4.19.06 中所述的过程进行操作。

从本地代码库更新到 4.19.06

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

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

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

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

  1. 按照安装 Edge apigee-setup 实用程序的“创建本地 Apigee 代码库”中的说明创建本地 4.19.06 代码库。
  2. 如需通过 .tar 文件安装 apigee-service,请执行以下操作:
    1. 在包含本地代码库的节点上,使用以下命令将本地代码库打包到名为 /opt/apigee/data/apigee-mirror/apigee-4.19.06.tar.gz 的单个 .tar 文件中:
      /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
    2. 将 .tar 文件复制到您要在其中更新 Edge 的节点。例如,将其复制到新节点上的 /tmp 目录。
    3. 在新节点上,将文件解压缩到 /tmp 目录:
      tar -xzf apigee-4.19.06.tar.gz

      此命令会在包含 .tar 文件的目录中创建一个名为 repos 的新目录。例如 /tmp/repos

    4. /tmp/repos 安装 Edge apigee-service 实用程序和依赖项:
      sudo bash /tmp/repos/bootstrap_4.19.06.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

      请注意,此命令中包含 repos 目录的路径。

  3. 如需使用 Nginx Web 服务器安装 apigee-service,请执行以下操作
    1. 按照安装 Edge apigee-setup 实用程序中的“使用 Nginx 网络服务器从代码库安装”中的说明配置 Nginx 网络服务器。
    2. 在远程节点上,将 Edge bootstrap_4.19.06.sh 文件下载到 /tmp/bootstrap_4.19.06.sh
      /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.19.06.sh -o /tmp/bootstrap_4.19.06.sh

      其中,uName:pWord 是您之前为代码库设置的用户名和密码,remoteRepo 是代码库节点的 IP 地址或 DNS 名称。

    3. 在远程节点上,安装 Edge apigee-setup 实用程序和依赖项:
      sudo bash /tmp/bootstrap_4.19.06.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 update
  6. 更新管理服务器上的 apigee-provision 实用程序,如以下示例所示:
    /opt/apigee/apigee-service/bin/apigee-service apigee-provision update
  7. 按照机器更新的顺序中所述的顺序在您的节点上运行 update 实用程序:
    /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

    其中:

    • component 是要更新的 Edge 组件。您通常需要更新以下组件:
      • "cs":Cassandra
      • “edge”:所有 Edge 组件(Edge 界面除外)。“edge”组件包括管理服务器、消息处理器、路由器、QPID 服务器和 Edge Postgres 服务器。
      • “ldap”:OpenLDAP
      • "ps":postgresql
      • "qpid": qpidd
      • “sso”:Apigee SSO(如果您安装了 SSO)
      • "ui":边缘界面
      • “zk”:Zookeeper
    • configFile 是在 4.18.0x 安装期间用于定义 Edge 组件的配置文件。

    您可以对所有组件运行 update.sh,只需将 component 设置为“all”,但前提是您拥有 Edge 一体式 (AIO) 安装配置文件。例如:

    /opt/apigee/apigee-setup/bin/update.sh -c all -f /tmp/sa_silent_config
  8. 在运行 Edge 界面组件的所有节点上重启它(如果您尚未执行此操作):
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
  9. 通过在管理服务器上运行 apigee-validate 实用程序来测试更新,如测试安装中所述。

如果您以后决定回滚更新,请按照回滚 4.19.06 中所述的过程进行操作。

机器更新顺序

在安装 Edge 时更新计算机的顺序非常重要:

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

单节点独立升级

如需将单节点独立配置升级到 4.19.06,请执行以下操作

  1. 更新所有组件:
    /opt/apigee/apigee-setup/bin/update.sh -c all -f configFile
  2. (如果您安装了 apigee-adminapi)更新了 apigee-adminapi 实用程序:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update

双节点独立升级

针对双节点独立安装更新以下组件:

如需查看边缘拓扑和节点数列表,请参阅安装拓扑

  1. 在机器 1 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. 在机器 2 上更新 Qpid 和 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
  3. 更新机器 1 上的 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  4. 更新机器 2 和机器 1 上的 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  5. 更新机器 1 上的界面:
    /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
  6. (如果您安装了 apigee-adminapi更新了机器 1 上的 apigee-adminapi 实用程序:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  7. (如果您安装了 Apigee SSO)在机器 1 上更新 Apigee SSO:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    其中 sso_config_file 是您在安装 SSO 时创建的配置文件。

  8. 在机器 1 上重启 Edge 界面组件:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

5 节点升级

针对 5 节点安装更新以下组件:

如需查看边缘拓扑和节点数列表,请参阅安装拓扑

  1. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. 在机器 4 上更新 Qpid 和 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid, ps -f configFile
  3. 在机器 5 上更新 Qpid 和 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid, ps -f configFile
  4. 更新机器 1 上的 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  5. 更新机器 4、5、1、2、3 上的 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  6. 更新机器 1 上的界面:
    /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
  7. (如果您安装了 apigee-adminapi更新了机器 1 上的 apigee-adminapi 实用程序:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  8. (如果您安装了 Apigee SSO)在机器 1 上更新 Apigee SSO:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    其中 sso_config_file 是您在安装 SSO 时创建的配置文件。

  9. 在机器 1 上重启 Edge 界面组件:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

9 节点集群升级

针对 9 节点集群安装更新以下组件:

如需查看边缘拓扑和节点数列表,请参阅安装拓扑

  1. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. 在机器 6 和 7 上更新 Qpid:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  3. 在机器 8 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  4. 在机器 9 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. 更新机器 1 上的 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  6. 按以下顺序更新机器 6、7、8、9、1、4 和 5 上的 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. 更新机器 1 上的界面:
    /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
  8. (如果您安装了 apigee-adminapi更新了机器 1 上的 apigee-adminapi 实用程序:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  9. (如果您安装了 Apigee SSO)在机器 1 上更新 Apigee SSO:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    其中 sso_config_file 是您在安装 SSO 时创建的配置文件。

  10. 在机器 1 上重启 Edge 界面组件:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

13 节点集群升级

针对 13 节点集群安装更新以下组件:

如需查看边缘拓扑和节点数列表,请参阅安装拓扑

  1. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. 在机器 12 和 13 上更新 Qpid:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  3. 在机器 8 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  4. 在机器 9 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. 更新机器 4 和 5 上的 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  6. 按以下顺序更新机器 12、13、8、9、6、7、10 和 11 上的 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. 更新机器 6 和 7 上的界面:
    /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
  8. (如果您安装了 apigee-adminapi更新了机器 6 和 7 上的 apigee-adminapi 实用程序:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  9. (如果您安装了 Apigee SSO)在机器 6 和 7 上更新 Apigee SSO:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

    其中 sso_config_file 是您在安装 SSO 时创建的配置文件。

  10. 在机器 6 和 7 上重启 Edge 界面组件:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

12 节点集群升级

针对 12 节点集群安装更新以下组件:

如需查看边缘拓扑和节点数列表,请参阅安装拓扑

  1. 更新 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
  2. 更新 qpidd:
    1. 数据中心 1 中的机器 4、5
      1. 更新机器 4 上的 qpidd
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
      2. 更新机器 5 上的 qpidd
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
    2. 数据中心 2 中的机器 10、11
      1. 在机器 10 上更新 qpidd
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
      2. 在机器 11 上更新 qpidd
        /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  3. 更新 Postgres:
    1. 数据中心 1 中的机器 6
      /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
    2. 数据中心 2 中的机器 12
      /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  4. 更新 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
  5. 更新 Edge 组件:
    1. 数据中心 1 中的机器 4、5、6、1、2、3
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
    2. 数据中心 2 中的机器 10、11、12、7、8、9
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  6. 更新界面:
    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
    3. 在机器 1 和 7 上重启 Edge 界面组件:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
  7. (如果您安装了 apigee-adminapi)更新了 apigee-adminapi 实用程序:
    1. 数据中心 1 中的机器 1:
      /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
    2. 数据中心 2 中的机器 7:
      /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  8. (如果您安装了 Apigee SSO)更新 Apigee SSO:
    1. 数据中心 1 中的机器 1:
      /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
    2. 数据中心 2 中的机器 7:
      /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
    3. 其中 sso_config_file 是您在安装 SSO 时创建的配置文件。

对于非标准配置

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

  1. ZooKeeper
  2. Cassandra
  3. qpidd、ps
  4. LDAP
  5. 边缘,表示所有节点上按以下顺序运行的“-c 边缘”配置文件:具有 Qpid 服务器、Edge Postgres 服务器、管理服务器、消息处理器和路由器的节点。
  6. Edge 界面
  7. apigee-adminapi
  8. Apigee 单点登录

完成更新后,请务必在所有运行 Edge 界面组件的计算机上重启该组件。