将 Apigee Edge 4.50.00 或 4.51.00 更新为 4.52.00

Apigee 支持将 Edge for Private Cloud 从 4.50.00 版或 4.51.00 版直接升级到 4.52.00 版。本页面介绍了如何执行这两种升级。

谁可以执行更新

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

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

您必须更新哪些组件

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

更新前提条件

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

  • 备份所有节点
    在更新之前,出于安全考虑,我们建议您对所有节点执行完整备份。使用当前版本的 Edge 的过程来执行备份。

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

  • 确保 Edge 正在运行
    使用以下命令确保 Edge 在更新过程中正常运行:
    /opt/apigee/apigee-service/bin/apigee-all status
  • 确保 Cassandra 压缩策略为 LeveledCompactionStrategy
    确保 Cassandra 压缩策略设置为 LeveledCompactionStrategy,如更改 Cassandra 压缩策略中所述。

自动传播媒体资源设置

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

必须升级到 Zookeeper 3.8.0

此版本的 Edge for Private Cloud 包含对 Zookeeper 3.8.0 的升级。作为此次升级的一部分,所有 Zookeeper 数据都将迁移到 Zookeeper 3.8.0。

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

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

简而言之,升级过程涉及备份每个节点。然后升级所有观察者和跟随者,最后升级领导者节点。

备份

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

  /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.0-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 的 voter),具体取决于节点配置。注意:在具有单个 ZooKeeper 节点的 Edge 独立安装中,Mode 设置为独立。

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

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

在每个观察者节点和跟随者节点上升级 Zookeeper,如下所示:

  1. 下载并运行 Edge for Private Cloud 4.52 的引导程序,如 在具有外部互联网连接的节点上更新到 4.52.00 中所述。具体流程可能会因节点是否具有外部互联网连接或您是否在执行离线安装而有所不同。
  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 基础架构更改(例如添加或移除消息处理器等)。

验证是否选出了新的 Leader

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

升级领导者

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

旧主节点也升级后,请验证集群运行状况并确保存在主节点。

回滚

如果需要回滚:

  1. 首先对观察者和跟随者执行回滚步骤。
  2. 下载并执行要回滚到的版本(4.50 或 4.51)的引导程序。 具体流程可能会因节点是否具有外部互联网连接或您是否在进行离线安装而异。
  3. 如果 Zookeeper 正在节点上运行,请将其停止:
      /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop
  4. 卸载现有 zookeeper:
      /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper uninstall
  • 照常安装 Zookeeper:
      /opt/apigee/apigee-setup/bin/setup.sh -p zk -f <silent-config-file>
  • 回滚所有跟随者和观察者后,在主节点上执行第 2 步到第 5 步,回滚主节点。
  • 所有节点都回滚后,验证集群健康状况,并确保集群中有一个领导者节点。
  • 恢复备份

    请参阅使用备份进行恢复。 请注意,从 Edge for Private Cloud 早期版本(例如 4.50 和 4.51)中获取的 Zookeeper 备份应与 Edge for Private Cloud 4.52 中的 Zookeeper 版本兼容。

    必须升级到 Postgres 14

    此 Edge 版本包含对 Postgres 14 的升级。作为该升级的一部分,所有 Postgres 数据都会迁移到 Postgres 14。

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

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

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

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

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

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

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

    安装新的 Postgres 备用节点

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

    如需执行安装,请使用安装当前 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.51.00:

        1. 将 Edge bootstrap_4.51.00.sh 文件下载到 /tmp/bootstrap_4.51.00.sh :
          curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh
        2. 安装 Edge apigee-service 实用程序和依赖项:
          sudo bash /tmp/bootstrap_4.51.00.sh apigeeuser=uName apigeepassword=pWord

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

        1. 将 Edge bootstrap_4.50.00.sh 文件下载到 /tmp/bootstrap_4.50.00.sh :
          curl https://software.apigee.com/bootstrap_4.50.00.sh -o /tmp/bootstrap_4.50.00.sh
        2. 安装 Edge apigee-service 实用程序和依赖项:
          sudo bash /tmp/bootstrap_4.50.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 14,请执行以下步骤:

    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. 在主主机上运行 configure 命令:
      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 安装已升级到 14,则可以忽略该错误。

      /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。

    新版 Edge 界面

    本部分列出了有关 Edge 界面的注意事项。如需了解详情,请参阅适用于私有云的新 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 实用程序的人员无权访问该目录,则会将日志作为名为 update_username.log 的文件写入 /tmp 目录。

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

    零停机时间更新

    零停机时间更新或滚动更新可让您在不关闭 Edge 的情况下更新 Edge 安装。

    只有 5 节点及更大规模的配置才能实现零停机时间更新。

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

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

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

    使用静默配置文件

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

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

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

    1. 如果存在,请停用配置为在 Cassandra 上执行修复操作的所有 cron 作业,直到更新完成。
    2. 以 root 身份登录节点,以安装 Edge RPM。
    3. 安装 yum-utils 和 yum-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.00.sh 文件下载到 /tmp/bootstrap_4.52.00.sh:
        curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh
      2. 执行以下命令,安装 Edge 4.52.00 apigee-service 实用程序和依赖项:
        sudo bash /tmp/bootstrap_4.52.00.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 组件:Management Server、Message Processor、Router、QPID Server、Postgres Server
          • 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.00 中所述的过程。

      从本地代码库更新到 4.52.00

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

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

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

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

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

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

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

          请注意,您在此命令中添加了代码库目录的路径。

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

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

        3. 在远程节点上,安装 Edge apigee-setup 实用程序和依赖项:
          sudo bash /tmp/bootstrap_4.52.00.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 组件:Management Server、消息处理器、Router、QPID Server、Postgres Server
          • 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.00 中所述的过程。

      机器更新顺序

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

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

      1 节点独立升级

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

      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 上更新 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 节点安装更新以下组件:

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

      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. 更新 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
      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-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 上更新 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 上更新新界面 (ue) 或传统界面 (ui):
        /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -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-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 上更新 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 上更新新界面 (ue) 或传统版界面 (ui):
        /opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -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-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. 更新 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. 更新新界面 (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
      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 时创建的配置文件。

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

      对于非标准配置

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

      1. ZooKeeper
      2. Cassandra
      3. qpidd、ps
      4. LDAP
      5. Edge,即所有节点上的“-c edge”配置文件,顺序如下:具有 Qpid 服务器、Edge Postgres 服务器、管理服务器、消息处理器和路由器的节点。
      6. Edge 界面(传统版或新版)
      7. apigee-adminapi
      8. Apigee SSO

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