将 Apigee Edge 4.52.02 或 4.53.00 更新到 4.53.01

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

如需查看兼容的升级路径概览,请参阅 Edge 私有云版本升级兼容性矩阵

谁可以执行更新

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

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

哪些组件必须更新

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

更新前提条件

查看 Edge for Private Cloud 4.53.01 中的变更

此版本中解决了一些安全问题。虽然这些安全增强功能至关重要,但它们确实引入了一些不向后兼容的更改。这意味着,升级需要执行额外的步骤,以确保在升级期间或升级后不会出现中断。在从旧版私有云升级到 4.53.01 版时,请务必仔细查看此主题

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

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

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

  • 确保 Edge 正在运行
    在更新过程中,使用以下命令确保 Edge 正常运行:
    /opt/apigee/apigee-service/bin/apigee-all status
  • 验证 Cassandra 前提条件

    如果您之前从旧版 Edge for Private Cloud 升级到 4.52.02 版,现在计划升级到 4.53.01 版,请确保您已完成 Cassandra 所需的升级后步骤。版本 4.52.02 升级文档中概述了这些步骤,并且升级 Cassandra 的前提条件中也提到了这些步骤。如果您不确定在上次升级期间是否已完成这些步骤,请在继续升级到版本 4.53.01 之前再次完成这些步骤。

  • 在 Edge for Private Cloud 4.53.01 中配置 IDP 密钥和证书

    在 Edge for Private Cloud 4.53.01 中,apigee-sso 组件中使用的 IDP 密钥和证书现在通过密钥库进行配置。您需要将之前使用的密钥和证书导出到密钥库中。在更新 SSO 组件之前,请按照从旧版本更新 Apigee SSO 的步骤部分中的详细步骤操作。

  • Python 要求
    在尝试升级之前,请确保所有节点(包括 Cassandra 节点)都已安装 Python 3。

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

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

当前版本 需要特殊步骤才能升级到 4.53.01 的软件
4.52.02 LDAPCassandraZookeeperPostgres
4.53.00 LDAPZookeeperPostgres

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

自动传播媒体资源设置

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

必须升级到 OpenLDAP 2.6

以下是将 Apigee Edge 适用于私有云的底层 LDAP 服务从旧版 OpenLDAP 2.4 升级到 OpenLDAP 2.6 的分步过程。如果需要更新到 Apigee Edge for Private Cloud 版本 4.53.01 及更高版本,则必须进行此升级。此升级适用于所有 Apigee LDAP 部署拓扑:单服务器、主动/被动和主动/主动(多主)。

前提条件和注意事项

  • 请注意,在 LDAP 升级过程中,所有区域的管理 API 和 Apigee 界面将完全无法使用。所有管理任务(例如管理用户、角色、应用和组织)都会失败,并且应暂停。您的 API 代理流量的处理不会受到任何影响。请务必先关闭所有边缘管理服务器和边缘界面,然后再继续进行 LDAP 升级。

  • 备份至关重要:必须对现有 LDAP 数据进行完整且经过验证的备份。在没有有效备份的情况下继续操作会导致数据丢失,且无法恢复。必须在 LDAP 服务仍在运行时启动备份,以捕获 LDAP 数据在特定时间点的一致快照。必须进行备份才能执行实际的升级。如果没有备份,您将既无法执行升级,也无法回滚,因为升级步骤涉及清除 LDAP 数据。

准备和安装(所有 LDAP 服务器)

本部分中的步骤(第 2 步到第 5 步)对于所有 LDAP 部署拓扑都是相同的。无论 apigee-openldap 组件安装在哪个服务器上,都必须在该服务器上执行这些操作,而不管该服务器的角色是什么。

  1. 在继续进行 LDAP 升级之前,请务必关闭所有 edge-management-serveredge-ui
    apigee-service edge-management-server stop
    apigee-service edge-ui stop
  2. 备份现有 LDAP 数据

    在进行任何更改之前,请从所有 LDAP 服务器执行当前 LDAP 数据的完整备份。这样会创建一个安全的恢复点。

    • 执行备份命令。此操作会在 /opt/apigee/backup/openldap 目录中创建一个带有时间戳的备份归档文件。
      apigee-service apigee-openldap backup
    • 获取记录总数:捕获目录中的记录数,以进行升级后验证(所有 LDAP 服务器中的记录数应一致)。这是一项健全性检查。
      # Note: Replace 'YOUR_PASSWORD' with your current LDAP manager password.
      ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" \
      -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
  3. 停止 LDAP 并清理数据目录

    必须在所有 LDAP 服务器上执行此步骤。由于主要版本变更和底层结构差异,此项是强制性的。干净的目录可确保没有冲突。当所有 LDAP 服务器都停止时,管理 API 和界面将开始中断。

    • 停止 LDAP 服务。
      apigee-service apigee-openldap stop
    • 永久移除旧的 LDAP 数据和配置目录。
      rm -rf /opt/apigee/data/apigee-openldap/*
  4. 安装和配置新的 LDAP 版本

    在所有 LDAP 服务器上,使用标准 Apigee 脚本下载并安装新组件版本。

    • 安装新的 LDAP 组件:更新脚本会读取您的配置文件并安装新的 apigee-openldap 软件包。
      /opt/apigee/apigee-setup/bin/update.sh -c ldap -f /opt/silent.conf
    • 验证新的 LDAP 版本:安装完成后,重新加载配置文件,验证新的 LDAP 版本是否已正确安装。
      source ~/.bash_profile
      ldapsearch -VV
      Expected output:
      ldapsearch: @(#) $OpenLDAP: ldapsearch 2.6.7
  5. 在恢复数据之前,停止所有服务器上的 LDAP

    这是一个关键的同步步骤。在恢复备份之前,您必须确保新安装的 LDAP 服务已在所有服务器上停止。 在每个 LDAP 服务器上,执行以下命令:

    apigee-service apigee-openldap stop
    rm -rf /opt/apigee/data/apigee-openldap/ldap/*
  6. 恢复 LDAP 数据

    该策略是在第一个活跃服务器上恢复备份。然后,此服务器将充当可信来源,在多服务器设置中将数据复制到其对等服务器。

    1. 确定要恢复的第一个有效服务器

      • 对于单服务器设置:这是您的唯一 LDAP 服务器。您可以直接执行下一步。
      • 对于主被动和主主动设置:在每个 LDAP 服务器上运行以下诊断命令:
        grep -i '^olcSyncrepl:' /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase*\ldif
        Note:
        -If this command returns output, the server is a passive server.
        -If it returns no output, the server is the active server.
    2. 恢复备份数据

      在继续操作之前,请仔细检查是否已在所有 LDAP 服务器上成功完成第 5 步。

      • 在您上面确定的第一个有效服务器上,前往备份目录。
        cd /opt/apigee/backup/openldap
      • 执行 restore 命令:我们强烈建议您指定确切的备份时间戳(如第 2 步中所述),以防止恢复意外版本或旧版本。
        # To restore a specific backup (recommended):
        apigee-service apigee-openldap restore 2025.08.11,23.34.00
        
        # To restore the latest available backup by default:
        apigee-service apigee-openldap restore
      • 恢复进程成功完成后,在第一个活跃服务器上启动 LDAP 服务。
        apigee-service apigee-openldap start
  7. 启动其余 LDAP 服务器

    如果您设置了多服务器,请在每个 LDAP 服务器上启动该服务:

    apigee-service apigee-openldap start

  8. 最终验证

    最后一步是验证升级是否成功,以及整个 LDAP 集群中的数据是否一致。

    • 在所有 LDAP 服务器上运行验证命令。所有服务器上的记录数应完全相同,并且必须与您在第 2 步中捕获的记录数一致。
    • # Note: Replace 'YOUR_PASSWORD' with your LDAP manager password.
      ldapsearch -o ldif-wrap=no -b "dc=apigee,dc=com" \
      -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w 'YOUR_PASSWORD' | wc -l
    • 确认数据正确且一致后,LDAP 升级即完成。现在,您可以按照组织的标准升级程序,开始启动 edge-management-serveredge-ui 以及任何其他依赖组件。

必须升级到 Cassandra 4.0.18

Apigee Edge for Private Cloud 4.53.01 版包含将 Cassandra 升级到 4.0.18 版。

升级和回滚

  • 从 Cassandra 3.11.X 升级到 Cassandra 4.0.X 的过程非常顺畅。随 Edge for Private Cloud 4.53.00 一起发布的 Cassandra 4.0.X 与 Private Cloud 4.52.02 的运行时和管理组件兼容。
  • 无法直接从 Cassandra 4.0.X 就地回滚到 3.11.X。使用副本或备份进行回滚是一项复杂的过程,可能涉及停机和/或数据丢失。最好排查问题并升级到 Cassandra 4.0.X,而不是回滚。
  • 在尝试升级之前,请务必先熟悉回滚程序。考虑到升级期间回滚的细微差别对于确保可用的回滚路径至关重要。

单个数据中心

在单个数据中心内将 Cassandra 从 3.11.X 升级到 4.0.X 是无缝的,但回滚很复杂,可能会导致停机和数据丢失。对于生产工作负载,强烈建议您先添加一个新数据中心,并在新数据中心内至少提供 Cassandra 节点,然后再启动升级。这样一来,您就可以回滚 Cassandra,而不会丢失数据或中断 API 流量。升级完成后或达到检查点 2 后,即可停用此额外的数据中心。

如果无法添加新的数据中心,但仍希望具备回滚功能,则需要备份才能恢复 Cassandra 3.11.X。不过,此方法可能会导致停机和数据丢失。

多个数据中心

如果使用 Edge for Private Cloud 4.52.02 运行多个数据中心,在升级到 Edge for Private Cloud 4.53.00 期间,回滚操作会更加灵活。

  • 回滚取决于是否至少有一个数据中心运行旧版 Cassandra (3.11.X)。
  • 如果您的整个 Cassandra 集群都已升级到 4.0.X,则不得回滚到 Cassandra 3.11.X。您必须继续将较新的 Cassandra 版本与 Private Cloud 4.53.00 或 4.52.02 的其他组件搭配使用。
  1. 一次升级一个 Cassandra 数据中心:首先在单个数据中心内单独升级 Cassandra 节点。先完成一个数据中心内所有 Cassandra 节点的升级,然后再继续升级下一个数据中心。
  2. 暂停并验证:升级一个数据中心后,暂停以确保您的私有云集群(尤其是升级后的数据中心)正常运行。
  3. 请注意:只有在至少有一个数据中心仍在运行旧版 Cassandra 的情况下,您才能回滚到旧版 Cassandra。
  4. 时间敏感:虽然您可以暂停一小段时间(建议暂停几个小时)来验证功能,但不能无限期地保持混合版本状态。这是因为非统一的 Cassandra 集群(节点采用不同版本)在运行方面存在限制。
  5. 全面测试:Apigee 强烈建议您在升级下一个数据中心之前,先对性能和功能进行全面测试。所有数据中心升级完毕后,将无法回滚到之前的版本。
回滚过程分为两个检查点
  1. 检查点 1:初始状态,所有组件的版本均为 4.52.02。只要至少有一个 Cassandra 数据中心仍使用旧版本,就可以进行完全回滚。
  2. 检查点 2:所有数据中心中的所有 Cassandra 节点都更新完毕后。您可以回滚到此状态,但无法还原到检查点 1。
示例

假设有一个双数据中心 (DC) 集群:

  1. 初始状态:两个 DC 中的 Cassandra 节点都处于 3.11.X 版。所有其他节点都运行的是 Edge Private Cloud 版本 4.52.02。假设每个数据中心有 3 个 Cassandra 节点。
  2. 升级 DC-1:逐个升级 DC-1 中的三个 Cassandra 节点。
  3. 暂停并验证:暂停以确保集群(尤其是 DC-1)正常运行(检查性能、功能)。您可以使用 DC-2 中的 Cassandra 节点回滚到初始状态。请注意,由于混合版本 Cassandra 集群的限制,此暂停必须是暂时的。
  4. 升级 DC-2:升级 DC-2 中的其余三个 Cassandra 节点。这会成为您的新回滚检查点。
  5. 升级其他组件:像往常一样,一次升级一个节点和一个数据中心,在所有数据中心升级管理节点、运行时节点和分析节点。如果出现问题,您可以回滚到第 4 步的状态。

Cassandra 升级的前提条件

您应使用 Edge for Private Cloud 4.52.02 运行 Cassandra 3.11.16,并确保满足以下条件:
  1. 整个集群正常运行,并且功能完备,可使用 Cassandra 3.11.16。
  2. 压缩策略设置为 LeveledCompactionStrategy(升级到版本 4.52.02 的前提条件)。
  3. 确认以下每个步骤都已完成,作为 Edge for Private Cloud 4.52.02 中 Cassandra 3.11 的初始升级的一部分。

    • 在之前的升级过程中,已在每个 Cassandra 节点上执行 post_upgrade 命令
    • 在之前的升级过程中,已在整个 Cassandra 集群上执行了 drop_old_tables 命令。

如果您不确定在使用 Edge for Private Cloud 4.52.02 时是否在 Cassandra 3.11 上执行了 post_upgradedrop_old_tables 命令,可以在尝试升级到 4.53.01 之前安全地重新运行这些命令。

第 1 步:准备升级

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

  1. 使用 Apigee 备份 Cassandra。
  2. 为 Cassandra 节点拍摄虚拟机快照(如果可行)。
  3. 确保端口 9042 可从所有 Edge for Private Cloud 组件(包括管理服务器、消息处理器、路由器、Qpid 和 Postgres)访问 Cassandra 节点(如果尚未配置)。如需了解详情,请参阅端口要求

第 2 步:升级所有 Cassandra 节点

应在每个数据中心内逐个更新所有 Cassandra 节点,每次更新一个数据中心。在升级数据中心内的节点之间,请等待几分钟,以确保更新后的节点已完全启动并加入集群,然后再继续升级同一数据中心内的另一个节点。

升级数据中心内的所有 Cassandra 节点后,请等待一段时间(30 分钟到几小时),然后再继续升级下一个数据中心内的节点。在此期间,请仔细检查已更新的数据中心,确保 Apigee 集群的功能和性能指标完好无损。此步骤对于确保 Cassandra 已升级到 4.0.X 版的数据中心的稳定性至关重要,而其余 Apigee 组件仍为 4.52.02 版。

  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
  3. 上述命令将输出类似如下内容:
    Cassandra version is verified - [cqlsh 6.0.0 | Cassandra 4.0.18 | CQL spec 3.4.5 | Native protocol v5] 
    Metadata is verified
  4. 在 Cassandra 节点上运行以下 post_upgrade 命令:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra post_upgrade
  5. 运行以下 nodetool 命令,以在 Cassandra 节点上重建索引
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms api_products api_products_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_credentials app_credentials_api_products_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_credentials app_credentials_organization_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_credentials app_credentials_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms app_end_user app_end_user_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_app_family_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_app_type_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_parent_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_parent_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms apps apps_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms maps maps_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_consumer_key_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_access_tokens oauth_10_access_tokens_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_request_tokens oauth_10_request_tokens_consumer_key_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_request_tokens oauth_10_request_tokens_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_verifiers oauth_10_verifiers_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_10_verifiers oauth_10_verifiers_request_token_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_access_tokens oauth_20_access_tokens_app_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_access_tokens oauth_20_access_tokens_client_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_access_tokens oauth_20_access_tokens_refresh_token_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_authorization_codes oauth_20_authorization_codes_client_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index kms oauth_20_authorization_codes oauth_20_authorization_codes_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect companies companies_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect companies companies_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect companies companies_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect company_developers company_developers_company_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect company_developers company_developers_developer_email_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect company_developers company_developers_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect developers developers_email_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect developers developers_organization_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index devconnect developers developers_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index cache cache_entries cache_entries_cache_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_operation_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_requesturi_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_responsecode_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_timestamp_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index audit audits audits_user_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis a_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_active_rev
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_def_index_template
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_def_method_template
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_latest_rev
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_a_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_base_url
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_is_active
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_is_latest
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_rel_ver
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 apis_revision ar_rev_num
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_base_url
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_r_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_r_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_res_path
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 method m_rev_num
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_base_url
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_res_path
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 resource r_rev_num
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 schemas s_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 schemas s_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 security sa_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 security sa_ar_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_a_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_a_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_entity
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template t_org_name
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index apimodel_v2 template_auth au_api_uuid
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index dek keys usecase_index
    如果您使用的是创收,还需运行以下与创收键空间相关的重建索引命令:
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_created_date_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint limits limits_updated_date_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_created_date_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_currency_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_dev_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_limit_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_prod_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_reason_code_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint suspended_developer_products suspended_developer_products_sub_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_company_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_created_at_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_developer_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_lastmodified_at_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index mint invitations invitations_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers triggers_env_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers triggers_job_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers triggers_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus job_details job_details_job_class_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus job_details job_details_job_group_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus job_details job_details_job_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus org_triggers org_triggers_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers_suite triggers_suite_group_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers_suite triggers_suite_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index taurus triggers_suite triggers_suite_suite_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_item notification_service_item_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_item notification_service_item_status_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_black_list_item notification_service_black_list_item_org_id_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_service_black_list_item notification_service_black_list_item_to_email_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_email_template_item notification_email_template_item_name_idx
    /opt/apigee/apigee-cassandra/bin/nodetool rebuild_index notification notification_email_template_item notification_email_template_item_org_id_idx

第 3 步:升级所有管理节点

逐个升级所有区域中的所有管理节点:

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

第 4 步:升级所有运行时节点

逐个升级所有区域中的所有路由器和消息处理器节点:

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

第 5 步:升级所有剩余的 Edge Private Cloud 4.53.01 组件

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

必须升级到 Zookeeper 3.8.4

此版本的 Edge for Private Cloud 包含对 Zookeeper 3.8.4 的升级。升级过程中,所有 Zookeeper 数据都将迁移到 Zookeeper 3.8.4。

在升级 Zookeeper 之前,请先通读 Zookeeper 维护指南。大多数 Edge 生产系统都使用分布在多个数据中心的 Zookeeper 节点集群。其中一些节点配置为参与 ZooKeeper 主要副本选举的投票者,其余节点配置为观察者。如需了解详情,请参阅 关于领导者、跟随者、投票者和观察者。投票者节点会选举一个领导者,然后投票者节点本身会成为跟随者。

在更新过程中,当领导者节点关闭时,可能会出现短暂的延迟或写入 Zookeeper 失败。这可能会影响写入 Zookeeper 的管理操作,例如代理的部署操作,以及 Apigee 基础架构更改,例如添加或移除消息处理器等。在按照以下步骤升级 Zookeeper 期间,Apigee 的运行时 API 不应受到影响(除非这些运行时 API 调用管理 API)。

从总体上讲,升级过程涉及备份每个节点。接下来,升级所有观察者和跟随者,最后升级领导者节点。

备份

备份所有 Zookeeper 节点,以备需要回滚时使用。请注意,回滚会将 Zookeeper 恢复到备份时的状态。注意: 自备份创建以来(其信息存储在 Zookeeper 中),Apigee 中的任何部署或基础设施更改都会在恢复期间丢失。

  /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper backup

如果您使用的是虚拟机,并且具备相应功能,还可以拍摄虚拟机快照或进行备份,以便在必要时进行恢复或回滚。

确定领导者、跟随者和观察者

注意:以下示例命令使用 nc 实用程序将数据发送到 Zookeeper。您也可以使用其他实用程序将数据发送到 Zookeeper。

  1. 如果 ZooKeeper 节点上未安装 nc,请安装 nc:
      sudo yum install nc
  2. 在节点上运行以下 nc 命令,其中 2181 是 ZooKeeper 端口:
      echo stat | nc localhost 2181

    您应该会看到如下所示的输出:

      Zookeeper version: 3.8.4-5a02a05eddb59aee6ac762f7ea82e92a68eb9c0f, built on 2022-02-25 08:49 UTC
      Clients:
       /0:0:0:0:0:0:0:1:41246[0](queued=0,recved=1,sent=0)
      
      Latency min/avg/max: 0/0.2518/41
      Received: 647228
      Sent: 647339
      Connections: 4
      Outstanding: 0
      Zxid: 0x400018b15
      Mode: follower
      Node count: 100597

    在节点的输出的 Mode 行中,您应该会看到 observer、leader 或 follower(表示不是 leader 的投票者),具体取决于节点配置。注意:在具有单个 ZooKeeper 节点的 Edge 独立安装中,Mode 设置为 standalone。

  3. 在每个 ZooKeeper 节点上重复执行第 1 步和第 2 步。

升级观察者节点和跟随者节点上的 Zookeeper

按如下方式升级每个观察者节点和跟随者节点上的 Zookeeper:

  1. 按照 在具有外部互联网连接的节点上更新到 4.53.01 中的说明,下载并运行 Edge for Private Cloud 4.53.01 的引导加载程序。该流程可能会因节点是否具有外部互联网连接或您是否在执行离线安装而异。
  2. 升级 ZooKeeper 组件:
      /opt/apigee/apigee-setup/bin/update.sh -c zk -f <silent-config-file>
    注意:如果这些节点安装了其他组件(例如 Cassandra),您也可以立即升级这些组件(例如使用 cs,zk 配置文件),也可以稍后升级其他组件。Apigee 建议您先仅升级 Zookeeper,并确保集群正常运行,然后再升级其他组件。
  3. 在每个 Zookeeper 观察者节点和跟随者节点上重复上述步骤。

关闭领导者

所有观察者节点和跟随者节点都升级完毕后,关闭领导者节点。在被标识为领导者的节点上,运行以下命令:

  /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop

请注意,在此事件期间,在新领导者被选出之前,Zookeeper 中可能会出现短暂的延迟或写入失败。这可能会影响写入 Zookeeper 的操作,例如代理的部署操作或 Apigee 基础设施更改(例如添加或移除消息处理器等)。

验证是否已选出新的领导者

按照上文确定领导者、跟随者和观察者部分中的步骤,验证在停止现有领导者后,是否已从跟随者中选出新的领导者。请注意,领导者可能是在与当前领导者不同的数据中心中选出的。

升级领导者

按照上文 在观察者节点和跟随者节点上升级 Zookeeper 中的相同步骤操作。

旧主节点也升级完毕后,验证集群健康状况并确保存在主节点。

Edge 路由器中的 Nginx 1.26 升级

从旧版本升级到 Edge for Private Cloud 4.53.01 不会自动将 Nginx 软件升级到最新版本 (1.26.x)。这是为了防止因 Apigee Edge 4.53.01 中的 Nginx 1.26 更改中所述的更改而导致任何意外的运行时副作用。在较低的环境中完成验证后,您可以手动将 Nginx 从 1.20.x 升级到 1.26.x。如需手动升级,请执行以下操作:

  1. 确保边缘路由器节点具有最新的 4.53.01 软件

    /opt/apigee/apigee-service/bin/apigee-service edge-router version
  2. 检查并验证您当前运行的 Nginx 版本

    /opt/nginx/sbin/nginx -V

    如果您运行的是旧版 Nginx,可以按照以下步骤将路由器节点上的 Nginx 升级到 1.26.X 版。

  3. 停止路由器节点上的边缘路由器进程

    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  4. 升级路由器节点上的 nginx 软件

    dnf update apigee-nginx
  5. 验证 Nginx 版本是否已更新

    /opt/nginx/sbin/nginx -V
  6. 在节点上启动路由器进程

    /opt/apigee/apigee-service/bin/apigee-service edge-router start
  7. 在每个路由器节点上重复执行此过程,一次一个节点

必须升级到 Postgres 17

此版本的 Edge 包含对 Postgres 17 的升级。在升级过程中,所有 Postgres 数据都会迁移到 Postgres 17。

大多数 Edge 生产系统使用配置为主备复制的两个 Postgres 节点。在更新过程中,当 Postgres 节点因更新而停机时,分析数据仍会写入 Qpid 节点。在 Postgres 节点更新并重新上线后,分析数据随后会被推送到 Postgres 节点。

执行 Postgres 更新的方式取决于您为 Postgres 节点配置数据存储的方式:

  • 如果您为 Postgres 节点使用本地数据存储,则必须在升级期间安装新的 Postgres 备用节点。升级完成后,您可以停用新的 Postgres 备用节点。

    如果您因任何原因需要回滚更新,则必须使用额外的 Postgres 备用节点。如果您必须回滚更新,则在回滚后,新的 Postgres 备用节点会成为主 Postgres 节点。因此,在安装新的 Postgres 备用节点时,该节点应满足 Edge 安装要求中定义的 Postgres 服务器的所有硬件要求。

    在 Edge 的单节点和双节点配置中(用于原型设计和测试的拓扑),您只有一个 Postgres 节点。您可以直接更新这些 Postgres 节点,而无需创建新的 Postgres 节点。

  • 如果您按照 Apigee 的建议为 Postgres 节点使用网络存储,则无需安装新的 Postgres 节点。在以下过程中,您可以跳过指定安装和稍后停用新 Postgres 备用节点的步骤。

    在开始更新过程之前,请对 Postgres 使用的数据存储区进行网络快照。然后,如果在更新期间发生任何错误,并且您被迫执行回滚,则可以从该快照恢复 Postgres 节点。

安装新的 Postgres 备用节点

此过程会在新节点上创建 Postgres 备用服务器。请确保您为现有 Edge 版本(4.52.02 或 4.53.00)安装新的 Postgres 备用服务器,而不是为版本 4.53.01 安装。

如需执行安装,请使用您之前用于安装当前 Edge 版本的同一配置文件。

如需创建新的 Postgres 备用节点,请执行以下操作:

  1. 在当前的 Postgres 主服务器上,修改 /opt/apigee/customer/application/postgresql.properties 文件以设置以下令牌。如果该文件不存在,请创建它:
    conf_pg_hba_replication.connection=host replication apigee existing_standby_ip/32 trust\ \nhost replication apigee new_standby_ip/32 trust

    其中,existing_standby_ip 是当前 Postgres 备用服务器的 IP 地址,new_standby_ip 是新备用节点的 IP 地址。

  2. 在 Postgres 主节点上重启 apigee-postgresql
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
  3. 通过查看主节点上的 /opt/apigee/apigee-postgresql/conf/pg_hba.conf 文件,验证是否已添加新的备用节点。您应该会在该文件中看到以下行:
    host replication apigee existing_standby_ip/32 trust
    host replication apigee new_standby_ip/32 trust
  4. 安装新的 Postgres 备用服务器:
    1. 修改用于安装当前 Edge 版本的配置文件,以指定以下内容:
      # IP address of the current master:
      PG_MASTER=192.168.56.103
      # IP address of the new standby node
      PG_STANDBY=192.168.56.102
    2. 按照安装 Edge apigee-setup 实用程序中的说明停用 SELinux。
    3. 如果您目前使用的是 Edge 4.52.02:

      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.51.00.sh
      2. 安装 Edge apigee-service 实用程序和依赖项:
        sudo bash /tmp/bootstrap_4.52.02.sh apigeeuser=uName apigeepassword=pWord

      如果您目前使用的是 Edge 4.53.00:

      1. 将 Edge bootstrap_4.53.00.sh 文件下载到 /tmp/bootstrap_4.53.00.sh
        curl https://software.apigee.com/bootstrap_4.53.00.sh -o /tmp/bootstrap_4.53.00.sh
      2. 安装 Edge apigee-service 实用程序和依赖项:
        sudo bash /tmp/bootstrap_4.53.00.sh apigeeuser=uName apigeepassword=pWord
    4. 使用 apigee-service 安装 apigee-setup 实用程序:
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    5. 安装 Postgres:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. 在新备用节点上,运行以下命令:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

      验证它是否处于待机状态。

执行 Postgres 的就地升级

注意:在执行 Postgres 就地升级之前,您必须先完成以下初步步骤。

初步步骤

在执行到 Postgres 的就地升级之前,请在主宿主和备用宿主上执行以下步骤,以更新 apigee-postgresql 上的 max_locks_per_transaction 属性:

  1. 如果不存在,请创建文件 /opt/apigee/customer/application/postgresql.properties
  2. 将此文件的所有权更改为 apigee
    sudo chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
  3. 将以下属性添加到文件中:
    conf/postgresql.conf+max_locks_per_transaction=30000
  4. 配置 apigee-postgresql
    apigee-service apigee-postgresql configure
  5. 重启 apigee-postgresql
    apigee-service apigee-postgresql restart

执行就地升级

如需就地升级到 Postgres 17,请执行以下步骤:

  1. 升级主宿主上的 postgres
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f /opt/silent.conf
  2. 在主宿主机上运行设置命令:
    apigee-service apigee-postgresql setup -f /opt/silent.conf
  3. 在主宿主机上运行配置命令:
    apigee-service apigee-postgresql configure
  4. 重启主宿主机:
    apigee-service apigee-postgresql restart
  5. 将其配置为主实例:
    apigee-service apigee-postgresql setup-replication-on-master -f /opt/silent.conf
  6. 确保主宿主机已启动:
    apigee-service apigee-postgresql wait_for_ready
  7. 停止待机:
    apigee-service apigee-postgresql stop
  8. 升级待机状态。

    注意:如果此步骤出错/失败,可以忽略。update.sh 将尝试使用错误的配置启动备用服务器。如果 Postgres 安装已升级到 17,则可以忽略此错误。

    /opt/apigee/apigee-setup/bin/update.sh -c ps -f /opt/silent.conf
  9. 确保待机已停止:
    apigee-service apigee-postgresql stop
  10. 移除旧的备用配置:
    rm -rf /opt/apigee/data/apigee-postgresql/
  11. 在备用服务器上设置复制:
    apigee-service apigee-postgresql setup-replication-on-standby -f /opt/silent.conf
  12. 从主宿主和备用宿主上的文件 /opt/apigee/customer/application/postgresql.properties 中移除 conf/postgresql.conf+max_locks_per_transaction=30000 行。此行是在初步步骤中添加的。

完成此过程后,备用设备将成功启动。

停用 Postgres 节点

更新完成后,停用新的备用节点:

  1. 确保 Postgres 正在运行:
    /opt/apigee/apigee-service/bin/apigee-all status

    如果 Postgres 未运行,请启动它:

    /opt/apigee/apigee-service/bin/apigee-all start
  2. 在新备用节点上运行以下 curl 命令,获取新备用节点的 UUID:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    您应该会在输出末尾看到节点的 UUID,格式如下:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  3. 在新备用节点上运行以下命令,停止新备用节点:
    /opt/apigee/apigee-service/bin/apigee-all stop
  4. 在 Postgres 主节点上,修改 /opt/apigee/customer/application/postgresql.properties 以从 conf_pg_hba_replication.connection 中移除新的备用节点:
    conf_pg_hba_replication.connection=host replication apigee existing_standby_ip/32 trust
  5. 在 Postgres 主节点上重启 apigee-postgresql:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
  6. 通过查看主节点上的 /opt/apigee/apigee-postgresql/conf/pg_hba.conf 文件,验证是否已移除新的备用节点。您应该会在该文件中看到以下一行:
    host replication apigee existing_standby_ip/32 trust
  7. 通过在管理服务器节点上发出以下 Edge 管理 API 调用,从 ZooKeeper 中删除备用节点的 UUID:
    curl -u sysAdminEmail:password -X DELETE http://ms_IP:8080/v1/servers/new_standby_uuid

Postgres 的升级后步骤

在进行 Postgres 主要升级后,Postgres 的内部统计信息会被清除。这些统计信息有助于 Postgres 查询规划器利用最合适的索引和路径来执行查询。

随着查询的执行和 autovacuum 精灵的运行,Postgres 可以逐渐重建其统计信息。不过,在统计信息重建完成之前,查询速度可能会较慢。

如需解决此问题,请在主 Postgres 节点上对数据库中的所有表执行 ANALYZE。或者,您也可以一次针对几个表执行 ANALYZE

从旧版本更新 Apigee SSO 的步骤

在 Edge for Private Cloud 4.53.01 中,apigee-sso 组件中使用的 IDP 密钥和证书现在通过密钥库进行配置。您需要将之前使用的密钥和证书导出到密钥库中,对其进行配置,然后像往常一样继续进行 SSO 更新。

  1. 确定用于配置 IDP 的现有密钥和证书:
    1. 通过在 SSO 安装配置文件中查找 SSO_SAML_SERVICE_PROVIDER_CERTIFICATE 的值或通过查询 apigee-sso 组件来检索 conf_login_service_provider_certificate 的证书。

      在 SSO 节点上使用以下命令查询 apigee-sso 的 IDP 证书路径。在输出中,查找最后一行的值。

      apigee-service apigee-sso configure -search conf_login_service_provider_certificate
    2. 通过在 SSO 安装配置文件中查找 SSO_SAML_SERVICE_PROVIDER_KEY 的值或查询 apigee-sso 组件的 conf_login_service_provider_key 来检索密钥。

      在 SSO 节点上使用以下命令查询 apigee-sso 的 IDP 密钥路径。在输出中,查找最后一行的值。

      apigee-service apigee-sso configure -search conf_login_service_provider_key
  2. 将密钥和证书导出到密钥库:
    1. 将密钥和证书导出到 PKCS12 密钥库:
      sudo openssl pkcs12 -export -clcerts -in <certificate_path> -inkey <key_path> -out <keystore_path> -name <alias>

      参数:

      • certificate_path:在第 1.a 步中检索到的证书文件的路径。
      • key_path:在第 1 步第 2 部分中检索到的私钥文件的路径。
      • keystore_path:包含证书和私钥的新创建的密钥库的路径。
      • alias:密钥库中用于密钥和证书对的别名。

      如需了解详情,请参阅 OpenSSL 文档

    2. (可选)将密钥和证书从 PKCS12 导出到 JKS 密钥库:
      sudo keytool -importkeystore -srckeystore <PKCS12_keystore_path> -srcstoretype PKCS12 -destkeystore <destination_keystore_path> -deststoretype JKS -alias <alias>

      参数:

      • PKCS12_keystore_path:在第 2.a 步中创建的 PKCS12 密钥库的路径,其中包含证书和密钥。
      • destination_keystore_path:新 JKS 密钥库的路径,证书和密钥将导出到该密钥库。
      • alias:JKS 密钥库中用于密钥和证书对的别名。
    3. 如需了解详情,请参阅 keytool 文档

  3. 将输出密钥库文件的所有者更改为“apigee”用户:
    sudo chown apigee:apigee <keystore_file>
  4. Apigee SSO 配置文件 中添加以下属性,并使用密钥库文件路径、密码、密钥库类型和别名更新这些属性:
    # Path to the keystore file
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_PATH=${APIGEE_ROOT}/apigee-sso/source/conf/keystore.jks
    
    # Keystore password
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_PASSWORD=Secret123  # Password for accessing the keystore
    
    # Keystore type
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_TYPE=JKS  # Type of keystore, e.g., JKS, PKCS12
    
    # Alias within keystore that stores the key and certificate
    SSO_SAML_SERVICE_PROVIDER_KEYSTORE_ALIAS=service-provider-cert 
  5. 使用以下命令,像往常一样更新 SSO 节点上的 Apigee SSO 软件:
    /opt/apigee/apigee-setup/bin/update.sh -c sso -f /opt/silent.conf

新版 Edge 界面

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

安装 Edge 界面

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

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

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

使用 Apigee mTLS 进行更新

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

回滚更新

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

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

记录更新信息

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

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

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

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

零停机时间更新

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

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

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

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

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

使用静默配置文件

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

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

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

  1. 如果有,请停用配置为在 Cassandra 上执行修复操作的所有 cron 作业,直到更新完成。
  2. 以根用户身份登录节点,以安装 Edge RPM。
  3. 按照安装 Edge apigee-setup 实用程序中的说明停用 SELinux。
  4. 如果您要在 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
  5. 如果您目前使用的是 Edge 4.52.02 或 4.53.00:

    1. 将 Edge bootstrap_4.53.01.sh 文件下载到 /tmp/bootstrap_4.53.01.sh
      curl https://software.apigee.com/bootstrap_4.53.01.sh -o /tmp/bootstrap_4.53.01.sh
    2. 通过执行以下命令安装 Edge 4.53.01 apigee-service 实用程序和依赖项:
      sudo bash /tmp/bootstrap_4.53.01.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.52.02 或 4.53.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.53.01 中所述的步骤操作。

从本地代码库更新到 4.53.01

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

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

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

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

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

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

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

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

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

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

    3. 在远程节点上,安装 Edge apigee-setup 实用程序和依赖项:
      sudo bash /tmp/bootstrap_4.53.01.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.52.02 或 4.53.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.53.01 中所述的步骤操作。

机器更新顺序

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

  • 您必须先更新所有 LDAP 节点,然后才能更新任何其他组件。您需要按照特殊步骤升级 LDAP
  • 您必须更新所有 Cassandra 和 ZooKeeper 节点。如果您要从 4.52.02 版升级,请按照特殊步骤升级 Cassandra。您需要按照特殊步骤升级 Zookeeper,才能使用 4.52.02 或 4.53.00。
  • 您必须使用 -c edge 选项升级所有管理服务器以及路由器和消息处理器,才能更新它们。
  • 您必须按照升级 Postgres 的特殊步骤升级所有 Postgres 节点。
  • 您必须更新所有数据中心内的 edge-qpid-server 和 edge-postgres-server 组件。
  • 您必须升级所有 Qpid 节点。
  • 您必须升级 Edge 界面节点,还必须升级新 Edge 界面和 SSO 节点(如果适用)。
  • 无需单独执行更新创收的步骤。当您指定 -c edge 选项时,系统会更新此文件。

单节点独立升级

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

  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 上更新 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. 在机器 1 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 在机器 1 上更新 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. 在机器 2 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. 在机器 1 上更新 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 上更新 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 在机器 1、2、3 上更新 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. 在机器 4 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. 在机器 5 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  6. 更新机器 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 上更新 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 按以下顺序更新机器 1、4 和 5 上的 Edge 组件(管理服务器、消息处理器、路由器):
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. 在机器 8 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. 在机器 9 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  6. 按顺序更新机器 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. 在机器 4 和 5 上更新 LDAP:
    /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  2. 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
    /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  3. 按以下顺序更新机器 6、7、10 和 11 上的 Edge 组件:
    /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. 在机器 8 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  5. 在机器 9 上更新 Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  6. 按以下顺序更新机器 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. 更新 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
  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. 更新 Edge 组件:
    1. 在数据中心 1 中的机器 1、2 和 3 上:
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
    2. 在数据中心 2 中的机器 7、8 和 9 上
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  4. 更新 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
  5. 更新 Edge 组件:
    1. 数据中心 1 中的机器 4、5、6
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
    2. 数据中心 2 中的机器 10、11、12
      /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  6. 更新 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
  7. 更新新界面 (ue) 或经典界面 (ui):
    1. 数据中心 1 中的机器 1:
      /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
    2. 数据中心 2 中的机器 7:
      /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
  8. (如果您安装了 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
  9. (如果您已安装 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 时创建的配置文件。

  10. 在机器 1 和 7 上重启新的 Edge 界面 (edge-management-ui) 或经典 Edge 界面 (edge-ui) 组件:
    /opt/apigee/apigee-service/bin/apigee-service [edge-ui|edge-management-ui] restart

对于非标准配置

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

  1. LDAP
  2. Cassandra
  3. ZooKeeper
  4. 管理服务器
  5. 消息处理器
  6. 路由器
  7. Postgres
  8. Edge,表示所有节点上的“-c edge”配置文件,顺序为:具有 Qpid 服务器的节点、Edge Postgres 服务器。
  9. qpidd
  10. Edge 界面(经典版或新版)
  11. apigee-adminapi
  12. Apigee SSO

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