将 Apigee Edge 4.51.00、4.52.00 或 4.52.01 更新为 4.52.02

Apigee 支持将 Edge for Private Cloud 直接从版本 4.51.00、4.52.00 或 4.52.01 升级到版本 4.52.02。本页面介绍了如何执行此类升级。

谁可以执行更新

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

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

必须更新哪些组件

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

更新前提条件

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

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

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

  • 确保 Edge 正在运行
    在更新过程中,使用以下命令确保 Edge 正常运行:
    /opt/apigee/apigee-service/bin/apigee-all status
  • 确保 Cassandra 压缩策略为 LeveledCompactionStrategy
    根据您当前的 Cassandra 版本,对压缩策略进行必要的更改。请按以下步骤操作,然后返回到主升级流程:

升级时需要考虑哪些特殊步骤

如需升级到 Edge for Private Cloud 4.52.02,请考虑运行特定步骤来升级某些软件。所需步骤取决于您当前的版本。请参阅下表,了解需要执行补充步骤的各种软件,并按照每种软件的详细说明操作。完成必要任务后,返回到主升级流程以继续升级过程。

当前版本 需要特殊步骤才能升级到 4.52.02 的软件
4.52.01 Cassandra
4.52.00 ZookeeperCassandraQpid
4.51.00 ZookeeperPostgresCassandraQpid

根据您的版本执行必要的步骤后,返回到主升级流程以继续操作。

自动传播媒体资源设置

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

升级到 Zookeeper 3.8.3

Edge for Private Cloud 4.52.02 不包含 Zookeeper 升级。不过,如果您要从低于 4.52.01 的版本升级,则必须按照下文所述的 Zookeeper 升级步骤进行操作。

  • 如果您要从 Edge Private Cloud 版本 4.51.00 或 4.52.00 升级,请参阅必须升级到 Zookeeper 3.8.3 中的步骤来升级 Zookeeper。
  • 如果您是从 Edge for Private Cloud 版本 4.52.01 升级的,则应已在使用 Zookeeper 版本 3.8.3,无需遵循任何特殊步骤来升级 Zookeeper。

升级到 Postgres 14

  • 如果您要从 Edge for Private Cloud 4.51.00 升级到 4.52.02,则必须按照升级 Postgres 的步骤操作,即使 Edge for Private Cloud 4.52.02 不包含 Postgres 升级也是如此。从 Edge for Private Cloud 4.51.00 升级到 4.52.02 需要执行额外的 Postgres 升级步骤。请参阅必须升级到 Postgres 14 部分。
  • 如果您要从 Edge for Private Cloud 4.52.00 或 4.52.01 升级到 4.52.02,则无需执行额外的 Postgres 升级步骤。

升级到 Cassandra 3.11.16

Apigee Edge for Private Cloud 4.52.02 包含将 Cassandra 升级到 3.11.16 版。Cassandra 是 Apigee 的关键组件,此次升级还包括对各种运行时和管理组件中用于查询和写入 Cassandra 的驱动程序软件的更新。

由于这是一次重大升级,因此必须对 Cassandra 中 Apigee 的数据模型进行某些更改,以确保在新版本中获得最佳性能。虽然这些更改非常小,但升级过程会在启动升级时中断某些管理 API。下面相关部分列出了通常会中断的确切管理 API。

此外,升级过程还会中断正在升级的数据中心内的一组更大的运行时代理流和管理 API。您必须将运行时流量和管理流量与正在升级的数据中心隔离开,以尽可能减少此类中断。如需了解详情,请参阅下文中有关单个数据中心多个数据中心的部分。

开发者门户 - 提供 API 文档

Apigee Drupal 开发者门户提供了各种用于记录 API 的功能。虽然我们建议您停用基于 Drupal 7 的开发者门户,但如果您仍在使用该门户并利用其 SmartDocs 功能,则 使用 SmartDocs API 文档适用于您。如果您使用的是较新版本的开发者门户,则在升级期间,您的 API 文档不会受到任何影响。

将 Apigee 升级到版本 4.52.02 后,使用 Drupal 7 开发者门户的 SmartDocs 功能创建的任何 API 模型都不会自动迁移到新版本。您需要使用开发者门户手动导出每个模型,并在完成升级后重新导入。

下文使用的术语

运行时:运行时涵盖了运行时代理流量的处理。它包括路由器和消息处理器为有效处理现有代理的运行时 API 请求而执行的所有操作。不过,它不包括部署新代理或新修订版本的代理。

管理:管理包括 Apigee Edge 系统的管理。这包括但不限于部署、修改应用、产品、目标服务器、密钥库等。所有管理 API(及其客户端,例如 Apigee 界面和开发者门户)都包含在此范围内。

在此升级期间,正在执行更新的区域或数据中心 (DC) 中的运行时流量和管理流量会受到影响。无论更新哪个数据中心,所有数据中心中的某些管理 API 都会受到影响。每个步骤之后都会注明相应的影响。

在以下每个步骤中,我们都会介绍在升级过程的各个阶段中,运行时和管理的状态。

升级策略

多个数据中心

必须一次升级一个数据中心,以确保流量连续性并避免停机。在升级 DC 之前,应将流量重新路由到其他正常运行的 DC。

单个数据中心

对于单数据中心设置,升级过程会对运行时流量和某些管理 API 产生重大影响。以下选项适用于单数据中心设置。

  • 通过 添加数据中心(与现有数据中心并排)来扩展 Edge for 私有云 集群,以在升级期间处理流量,然后在升级过程完成后退役其中一个数据中心。
  • 如果您无法扩展到其他数据中心,请做好停机准备,并在流量较低的时段安排升级,以尽可能减少对管理 API 和运行时流量的影响。

建议扩展到其他数据中心,以免影响运行时流量和管理 API。升级期间,升级的数据中心会受到影响,包括但不限于以下方面:

  • 运行时 API 刷新 OAuth 令牌
  • 使用 AccessEntity 政策的运行时 API
  • 列出开发者应用的 Management API
  • 列出产品的管理 API

除了上述影响之外,在所有数据中心升级之前,特定管理 API 在所有数据中心都将保持无法正常运行的状态。后续部分中的步骤列出了此类管理 API。

回滚 - 概览

  • 回滚期间的影响

    从 Cassandra 3.11.x 回滚到 2.1.x 会影响执行回滚的数据中心 (DC) 内的运行时流量和管理流量。此外,无论当前回滚的是哪个数据中心,某些管理 API 都可能会在所有数据中心遇到中断问题。

  • 遵循 DC 逐个回滚方法

    必须一次回滚一个数据中心,以保持服务连续性并防止停机。在特定数据中心内启动回滚之前,请确保应用流量已重新路由到另一个完全正常运行的数据中心。

  • 回滚部分升级的集群

    如果至少有一个数据中心在旧版 Cassandra (2.1.22) 上保持完全正常运行,则可以通过从完全正常运行的 Cassandra 2.1.X 数据中心执行重建来回滚其他已升级的数据中心。

  • 集群范围的回滚

    如果整个 Cassandra 集群已升级,并且需要回滚,则必须使用备份或虚拟机快照执行回滚。这种方法很复杂,可能会导致暂时性停机或数据丢失。

  • 升级前注意事项

    在尝试升级之前,请务必先熟悉回滚程序。在升级时,请务必考虑回滚的细微差别,以确保可使用适当的回滚路径。

回滚具有单个数据中心的集群

将 Cassandra 从 2.1.x 版升级到 3.11.x 版可能会显著影响运行时流量和某些管理 API。这些影响也适用于回滚期间,可能会导致停机或数据丢失。

对于生产工作负载,强烈建议在升级之前预配新的数据中心。这样一来,回滚路径会更安全,不会造成数据丢失或 API 流量中断。升级成功完成后,可以停用该额外的数据中心。

如果无法添加新的数据中心,但仍需要回滚功能,请确保在升级之前进行可靠的备份。可以从备份中恢复 Cassandra 2.1.x,但这种方法可能会导致服务中断和潜在的数据丢失。

回滚具有多个数据中心的集群

回滚多个数据中心时,需要逐个数据中心 (DC) 进行。在此方法中,从回滚的数据中心发出的流量会重定向到其他正常运行的数据中心,从而确保 Cassandra管理服务器运行时节点的回滚过程受控且隔离,避免流量中断。

如需了解详情,请参阅回滚 Cassandra 3.11.16 更新部分。

第 0 步:初始状态

  • Zookeeper、Postgres 和 LDAP 组件已升级到 4.52.02 版本。您的 Edge 私有云集群稳定且正常运行。如果需要回滚,集群将回滚到此状态。
  • Apigee 中的 Cassandra 运行版本为 2.1.22。
  • 边缘组件:
    • 管理服务器通过较旧的 Thrift 协议与 Cassandra 通信。
    • 通过旧版 Thrift 协议与 Cassandra 通信的运行时服务器(消息处理器和路由器)。
此阶段的运行时状态 此阶段的管理状态
运行时完全正常运行 管理功能完全正常

第 1 步:准备升级

以下步骤是您通常创建的标准文件(例如用于启用组件升级的 Apigee 的标准配置文件)之外的步骤。

  1. 将 Cassandra 更改为使用 LeveledCompactionStrategy。
  2. 使用 Apigee 备份 Cassandra。
  3. 为 Cassandra 节点拍摄虚拟机快照(如果可行)。
  4. 在每个 Cassandra 节点上创建一个 Cassandra 升级配置文件,该文件位于 /opt/apigee/apigee-cassandra/cass_upgrade.conf,包含以下内容:
    # IP Address of node
    HOSTIP=10.0.0.1
    
    # Username for running Cassandra queries. Optional. Can be skipped if you have not enabled Cassandra authentication.
    CASS_USERNAME=<cassuser>
    
    # Password for running Cassandra queries. Optional. Can be skipped if you have not enabled Cassandra authentication.
    CASS_PASSWORD=<casspass>
    
    # Port for connecting to Cassandra via thrift. Optional. Defaults to 9160 if skipped.
    CASS_PORT=9160
    
    # Port for connecting to Cassandra via CQL. Optional. Defaults to 9042 if skipped.
    CASS_CQL_PORT=9042
    
    # Directory to be used by Cassandra upgrade scripts. Optional. Defaults to /tmp/cass_upgrade_scripts if skipped.
    # Note that if upgrade is successful, this directory is deleted via root user - so provide a directory accordingly.
    CASS_TMP_DIR=/tmp/cass_upgrade_scripts
        
    如果无法在 /opt/apigee/apigee-cassandra/cass_upgrade.conf 中创建文件,请在每个 Cassandra 节点上创建内容相同的 /opt/silent.conf 文件。
  5. 如果您使用 Apigee Drupal 7 开发者门户的 SmartDocs 功能,请导出每个模型,方法是从开发者门户界面以 JSON 格式下载这些模型。管理服务器更新后,需要将这些模型重新导入到 Apigee 中。
  6. 确保所有 Edge 组件都可以访问 Cassandra 节点上的端口 9160 和 9042(如果尚未存在)。如需了解详情,请参阅端口要求

第 2 步:将流量从第一个数据中心重定向

  1. 阻止来自第一个数据中心的入站运行时流量和管理流量。
  2. 将所有运行时流量和管理 API 重定向到其他正常运行的数据中心。
  3. 验证其他数据中心是否成功处理了运行时流量和管理流量。

第 3 步:升级第一个数据中心内的所有 Cassandra 节点

  1. 逐个升级数据中心 1 中的所有 Cassandra 节点。在每个节点上逐个运行以下命令:
    /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  2. 更新节点后,在节点上运行以下命令以执行一些验证,然后再继续:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra validate_upgrade -f configFile
    上述命令会输出类似以下内容:
    Cassandra version is verified - [cqlsh 5.0.1 | Cassandra 3.11.16 | CQL spec 3.4.4 | Native protocol v3] Metadata is verified
  3. 升级完成后,在每个 Cassandra 节点上逐一运行以下 post_upgrade 命令:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra post_upgrade
此阶段的运行时状态 此阶段的管理状态
  • 在升级数据中心时,运行时流量被阻止
  • 运行时在其他数据中心完全正常运行

第 4 步:升级第一个数据中心的所有管理节点

升级数据中心中的所有管理节点:

/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
此阶段的运行时状态 此阶段的管理状态
  • 在升级数据中心时,运行时流量被阻止
  • 运行时完全正常运行

第 5 步:升级第一个数据中心内的所有运行时节点

逐个升级数据中心内的所有路由器和消息处理器节点:

/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
此阶段的运行时状态 此阶段的管理状态
  • 在升级数据中心时,运行时流量被阻止
  • 运行时在其他数据中心完全正常运行

第 6 步:将流量重定向回第一个数据中心

  • 在第一个数据中心升级 Cassandra、运行时组件和管理服务器后,重新启用运行时流量和管理流量到第一个数据中心。
  • 确保运行时流量和管理流量在数据中心之间成功传输。

第 7 步:升级其他数据中心

对剩余的数据中心重复执行第 1 步第 6 步,每次一个数据中心,方法是先将流量从相应数据中心重定向,然后更新 Apigee 软件,最后重新启用相应数据中心上的流量。

第 8 步:在所有管理节点中重新运行升级步骤

在各数据中心的所有管理节点中重新运行以下升级命令:

/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile

第 9 步 - [可选] 导入之前导出的智能文档

所有管理服务器都升级完毕后,您可以导入在第 1 步中导出的智能文档模型。您可以稍后决定是否执行此操作。

只有在您使用基于 Drupal 7 的开发者门户并使用 SmartDocs 功能时,才需要执行此操作。

此阶段的运行时状态 此阶段的管理状态
运行时完全正常运行 管理功能完全正常

第 10 步 - 丢弃未使用的表

运行以下命令,从 Cassandra 集群中舍弃旧的未使用表。在运行此命令之前,您无法使用 Cassandra 的某些功能(例如设置新的身份验证 - 旧的身份验证机制将继续有效)。此命令只能在集群中的一个节点上执行

/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra drop_old_tables -f configFile

第 11 步 - 升级所有剩余的 Edge 和其他组件(适用于私有云 4.52.02)

逐个升级所有区域中的所有剩余 edge-qpid-serveredge-postgres-server 节点。

在此阶段,如果您要从低于 Edge for Private Cloud 4.52.01 的版本升级,请按照以下步骤分别升级 QpidPostgres,并按照这些步骤升级其余组件。

升级到 Qpid J-Broker

虽然 Edge Private Cloud 4.52.02 版不包含 Qpid 升级,但如果您是从 4.52.01 之前的版本升级,则需要按照相应步骤升级 QPID。

  • 如果您要从 Edge for Private Cloud 4.51.00 或 4.52.00 升级到 4.52.02,则必须遵循额外的 Qpid 升级步骤。如果您要从 4.51.00 版或 4.52.00 版升级到 4.52.02 版,请参阅升级 Qpid 部分。
  • 如果您要从 Edge for Private Cloud 4.52.01 升级到 4.52.02,则应已在使用最新版本的 Qpid Broker,无需执行额外的 Qpid 升级步骤。

新版 Edge 界面

本部分列出了有关 Edge 界面的注意事项。如需了解详情,请参阅 Private Cloud 的新 Edge 界面

安装 Edge 界面

完成初始安装后,Apigee 建议您安装 Edge 界面,这是面向 Apigee Edge for Private Cloud 开发者和管理员的增强型界面。

请注意,Edge 界面要求您停用基本身份验证,并使用 IDP(例如 SAML 或 LDAP)。

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

更新 Edge 界面

如需更新 Edge 界面组件,请考虑您要升级的 Edge for Private Cloud 的版本:

  • 从 4.51.00 升级到 4.52.00(已安装新的 Edge 界面):请按照edge-management-ui 组件的本部分中的升级说明进行操作。

使用 Apigee mTLS 进行更新

如需更新 Apigee mTLS,请执行以下步骤:

回滚更新

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

如果失败需要您将更新回滚到先前版本,请参阅回滚 4.52.00 以获取详细说明。

记录更新信息

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

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

如果运行 update.sh 实用程序的人员无权访问该目录,则该实用程序会将日志写入 /tmp 目录,并将其命名为 update_username.log

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

零停机时间更新

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

只有在 5 节点配置及更高级别的配置中,才能实现零停机时间更新。

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

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

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

使用静默配置文件

您必须向更新命令传递静默配置文件。静默配置文件应与您之前用于安装 Edge 4.50.00 或 4.51.00 的配置文件相同。

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

请按照以下步骤更新节点上的 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.51.00:

    1. 将 Edge bootstrap_4.52.02.sh 文件下载到 /tmp/bootstrap_4.52.02.sh
      curl https://software.apigee.com/bootstrap_4.52.02.sh -o /tmp/bootstrap_4.52.02.sh
    2. 通过执行以下命令,安装 Edge 4.52.02 apigee-service 实用程序和依赖项:
      sudo bash /tmp/bootstrap_4.52.02.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。
    3. 使用 apigee-service 更新 apigee-setup 实用程序,如以下示例所示:
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
    4. 更新管理服务器上的 apigee-validate 实用程序,如以下示例所示:
      /opt/apigee/apigee-service/bin/apigee-service apigee-validate update
    5. 更新管理服务器上的 apigee-provision 实用程序,如以下示例所示:
      /opt/apigee/apigee-service/bin/apigee-service apigee-provision update
    6. 通过执行以下命令,在节点上运行 update 实用程序:
      /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

      请按机器更新顺序中所述的顺序执行此操作。

      其中:

      • component 是要更新的 Edge 组件。可能的值包括:
        • cs:Cassandra
        • edge:所有 Edge 组件(Edge 界面除外):管理服务器、消息处理器、路由器、Qpid 服务器、Postgres 服务器
        • ldap:OpenLDAP
        • ps:postgresql
        • qpid:qpidd
        • sso:Apigee SSO(如果您已安装 SSO)
        • ue:新 Edge 界面
        • ui:经典版 Edge 界面
        • zk:ZooKeeper
      • configFile 是您在 4.50.00 或 4.51.00 安装期间用于定义 Edge 组件的同一配置文件。

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

      /opt/apigee/apigee-setup/bin/update.sh -c all -f ./sa_silent_config
    7. 如果尚未重启,请在运行 Edge 界面组件的所有节点上重启这些组件:
      /opt/apigee/apigee-service/bin/apigee-service [edge-management-ui|edge-ui] restart
    8. 按照测试安装中的说明,在管理服务器上运行 apigee-validate 实用程序来测试更新。

如果您之后决定回滚更新,请按照回滚 4.52.02 中所述的步骤操作。

从本地代码库更新到 4.52.02

如果您的 Edge 节点位于防火墙后面,或者无法通过互联网访问 Apigee 代码库,则可以从本地代码库或 Apigee 代码库的镜像执行更新。#heading

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

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

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

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

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

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

      请注意,您在此命令中添加了指向 repos 目录的路径。

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

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

    3. 在远程节点上,安装 Edge apigee-setup 实用程序和依赖项:
      sudo bash /tmp/bootstrap_4.52.02.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 组件:管理服务器、消息处理器、路由器、Qpid 服务器、Postgres 服务器
      • ldap:OpenLDAP
      • ps:postgresql
      • qpid:qpidd
      • sso:Apigee SSO(如果您已安装 SSO)
      • ue 新版 Edge 界面
      • ui:经典版 Edge 界面
      • zk:ZooKeeper
    • configFile 是您在 4.50.00 或 4.51.00 安装期间用于定义 Edge 组件的同一配置文件。

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

    /opt/apigee/apigee-setup/bin/update.sh -c all -f /tmp/sa_silent_config
  8. 如果尚未重启,请重启运行该组件的所有节点上的界面组件:
    /opt/apigee/apigee-service/bin/apigee-service [edge-management-ui|edge-ui] restart
  9. 按照测试安装中的说明,在管理服务器上运行 apigee-validate 实用程序来测试更新。

如果您日后决定回滚更新,请按照回滚 4.52.02 中所述的步骤操作。

机器更新顺序 - 从 4.51.00(或)4.52.00(或)4.52.01 升级

在 Edge 安装中更新机器的顺序非常重要:

  • 您必须先更新所有数据中心的所有 ZooKeeper 节点,然后才能升级所有其他组件。如果您要从 Edge Private Cloud 4.51.00(或)4.52.00 升级,还需要按照其他步骤升级 Zookeeper
  • 您必须在所有数据中心内更新 Postgresql。如果您要从 Edge Private Cloud 4.51.00 升级,还需要按照其他步骤升级 postgres
  • 您必须更新所有数据中心内的 LDAP 节点。
  • 您必须更新所有 Cassandra、Management Server、消息处理器和 Router 节点,一次更新一个数据中心,直到所有数据中心都升级完毕。
  • 您必须更新所有数据中心内的 edge-qpid-serveredge-postgres-server 组件。
  • 您必须升级所有数据中心中的 Qpid 节点。如果您要从 Edge Private Cloud 4.51.00(或)4.52.00 升级,还需要按照其他步骤升级 Qpid
  • 更新所有数据中心中的 Edge 界面和新 Edge 界面、SSO 节点。
  • 无需单独执行更新创收的步骤。当您指定 -c 边缘选项时,系统会更新此属性。

单节点独立升级

如需将单节点独立配置升级到 4.52.02,请执行以下操作
  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

2 节点独立升级

对于 2 节点独立安装,请更新以下组件:

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

  1. 在机器 1 上更新 Zookeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c zk -f configFile
  2. 在机器 2 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  3. 在机器 1 上更新 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  4. 在机器 1 上更新 Cassandra:
    /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  5. 更新机器 1 和 2 上的 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  6. 在机器 2 上更新 Qpid:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -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

5 节点升级

对于 5 节点安装,请更新以下组件:

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

  1. 在机器 1、2 和 3 上更新 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c zk -f configFile
  2. 在机器 4 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  3. 在机器 5 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  4. 在机器 1 上更新 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  5. 在机器 1、2 和 3 上更新 Cassandra:
    /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  6. 在机器 1、2、3、4、5 上更新 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. 在机器 4 上更新 Qpid:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  8. 在机器 5 上更新 Qpid:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  9. 更新 Edge 界面:
    • 经典版界面:如果您使用的是经典版界面,请更新机器 1 上的 ui 组件,如以下示例所示:
      /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
    • 新 Edge 界面:如果您安装了新 Edge 界面,请在相应的机器(可能不是机器 1)上更新 ue 组件:
      /opt/apigee/apigee-setup/bin/update.sh -c ue -f /opt/silent.conf
  10. (如果您安装了 apigee-adminapi更新了机器 1 上的 apigee-adminapi 实用程序:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  11. (如果您已安装 Apigee SSO)在机器 1 上更新 Apigee SSO:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file

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

  12. 重启界面组件:
    • 经典界面:如果您使用的是经典界面,请重启机器 1 上的 edge-ui 组件,如以下示例所示:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
    • 新版 Edge 界面:如果您安装了新版 Edge 界面,请在相应的机器(可能不是机器 1)上重启 edge-management-ui 组件:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart

9 节点集群升级

对于 9 节点集群安装,请更新以下组件:

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

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

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

  11. 重启界面组件:
    • 经典版界面:如果您使用的是经典版界面,请重启机器 1 上的 edge-ui 组件,如以下示例所示:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
    • 新 Edge 界面:如果您安装了新 Edge 界面,请在相应机器(可能不是机器 1)上重启 edge-management-ui 组件:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart

13 节点集群升级

对于 13 节点集群安装,请更新以下组件:

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

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

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

  11. 重启界面组件:
    • 经典版界面:如果您使用的是经典版界面,请重启机器 6 和 7 上的 edge-ui 组件,如以下示例所示:
      /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
    • 新 Edge 界面:如果您安装了新的 Edge 界面,请在机器 6 和 7 上重启 edge-management-ui 组件:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart

12 节点集群升级

对于 12 节点集群安装,请更新以下组件:

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

  1. 在两个数据中心内更新机器 1、2、3、7、8、9 上的 ZooKeeper:

    /opt/apigee/apigee-setup/bin/update.sh -c zk -f configFile
  2. 在两个数据中心的机器 6 和 12 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  3. 在两个 DC 中更新机器 1、7 上的 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  4. 阻止 DC-1 中的流量,并确保所有流量都重新路由到其他 DC-2

  5. 更新 DC-1 中机器 1、2、3 上的 Cassandra:
    /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  6. 更新 DC-1 中机器 1 上的管理服务器:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  7. 更新 DC-1 中机器 2、3 上的路由器、消息处理器:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  8. 在 DC-1 中取消阻止流量并验证 DC-1,然后继续处理 DC-2,具体方法是在 DC-2 中阻止流量并将流量重新路由到 DC-1
  9. 更新 DC-2 中机器 7、8、9 上的 Cassandra:
    /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  10. 在 DC-2 中的计算机 7 上更新管理服务器:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  11. 更新 DC-2 中机器 8、9 上的路由器、消息处理器:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  12. 在 DC-2 中解除对流量的屏蔽,现在,两个 DC 都将处理流量
  13. 在机器 1 和 7 上,重新运行所有管理服务器(跨数据中心)中的更新命令:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  14. 在两个 DC 中,更新机器 4、5、6、10、11、12 上的 edge-qpid-server 和 edge-postgres-server:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  15. 在两个数据中心的机器 4、5、10、11 上更新 Qpid:
    /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  16. 在两个 DC 中更新新界面 (ue) 或经典界面 (ui):
    /opt/apigee/apigee-setup/bin/update.sh -c  [ui|ue] -f configFile
  17. (如果您安装了 apigee-adminapi)在两个数据中心内更新 apigee-adminapi:
    /opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
  18. (如果您安装了 Apigee SSO)更新两个数据中心内的 Apigee SSO 节点:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f configFile
  19. 在两个 DC 中重启新版 Edge 界面 (edge-management-ui) 或经典版 Edge 界面 (edge-ui) 组件:
    /opt/apigee/apigee-service/bin/apigee-service [edge-ui|edge-management-ui] restart