适用于私有云的 Edge v. 4.16.09
哪些 Edge 版本可以更新到 4.16.09
您可以将 Apigee Edge 4.16.01.0x 版和 4.16.05.x 版更新为 4.16.09 版。
如果您使用的是低于 4.16.01 的 Edge 版本,则必须先迁移到 4.16.01.x 版,然后再更新到 4.16.09 版。
谁可以执行更新
运行更新的用户应与最初安装 Edge 的用户相同,或者是运行以 root 身份运行的用户。
安装 Edge RPM 后,任何用户都可以对其进行配置。
必须升级到 Java JDK 版本 8
此版本的 Edge 要求您在所有 Edge 处理节点上安装 Java JDK 8 版。您可以安装 Oracle JDK 8 或 OpenJDK 8。如果尚未安装 Java JDK 8,更新脚本可以为您安装 Java JDK 8。
在更新到 Java 8 的过程中,Oracle JDK 8 中不再提供某些 TLS 加密。如需完整列表,请参阅“默认停用的加密套件”部分(网址为 http://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html)。
如果从 4.16.01 更新,请降级 Zookeeper
Edge for Private Cloud 4.16.01 中的 ZooKeeper RPM 为 apigee-zookeeper-3.4.5-1.0.905.noarch.rpm。在后续的 Edge 版本中,Zookeeper 版本更改回 apigee-zookeeper-3.4.5-0.0.94x。这样可以防止 yum 将 ZooKeeper 从 4.16.01 升级到更高版本。若要解决此问题,请先运行 yum downgrade apigee-zookeeper,然后再更新 Zookeeper。
您可以使用以下命令检查 Zookeeper 版本:
> rpm -qa |grep apigee-zookeeper
如果此命令返回 Zookeeper 版本:
apigee-zookeeper-3.4.5-1.0.905
然后,您必须执行降级。
自动传播媒体资源设置
如果您通过修改 /opt/apigee/customer/application 中的 .properties 文件设置了任何属性,则这些值会在更新后保留。
更新前提条件
在升级 Apigee Edge 之前,请先满足以下前提条件:
- 备份所有节点
出于安全考虑,建议您在更新之前对所有节点执行完整备份。请使用适用于您当前 Edge 版本的步骤进行备份。
这样,您就可以制定备用方案,以防更新到新版本时出现问题。如需详细了解备份,请参阅备份和恢复。 - 确保 Edge 正在运行
使用以下命令确保 Edge 在更新过程中处于启动和运行状态:
> /<inst_root>/apigee/apigee-service/bin/apigee-all status
处理更新失败的情况
如果更新失败,您可以尝试解决问题,然后再次运行 update.sh。您可以多次运行此更新,系统会从上次中断的位置继续更新。
如果失败导致您需要将更新回滚到之前的版本,请参阅 4.16.09 回滚流程了解详情。
日志记录更新信息
默认情况下,update.sh 实用程序会将日志信息写入以下位置:
/opt/apigee/var/log/apigee-setup/update.log
如果运行 update.sh 实用程序的用户无权访问该目录,它会将日志作为名为 update_username.log 的文件写入 /tmp 目录。
如果用户无权访问 /tmp,update.sh 实用程序将会失败。
必须升级到 Postgres 9.4
此版本的 Edge 包含对 Postgres 9.4 的升级。在升级过程中,所有 Postgres 数据都会迁移到 Postgres 9.4。
在更新过程中,虽然 Postgres 节点已关闭以进行更新,但分析数据仍会写入 Qpid 节点。在 Postgres 节点更新并恢复在线状态后,系统会将分析数据推送到 Postgres 节点。
如果您因任何原因必须回滚更新,则必须使用额外的 Postgres 备用节点。如果必须回滚更新,则新的 Postgres 备用节点会在回滚后成为主 Postgres 节点。因此,在安装新的 Postgres 备用节点时,应将其安装在符合 Edge 安装要求中定义的 Postgres 服务器的所有硬件要求的节点上。
安装新的 Postgres 备用节点
此过程会在新节点上创建一个 Postgres 备用服务器。请确保为现有 Edge 版本(4.16.01 或 4.16.05)安装新的 Postgres 备用服务器,而不是为 4.16.09 版安装。
如需执行安装,请使用您用于安装当前版本 Edge 的同一配置文件。
如需创建新的 Postgres 备用节点,请执行以下操作:
- 在当前的 Postgres 主服务器上,修改 /opt/apigee/customer/application/postgresql.properties 文件以设置以下令牌。如果该文件不存在,请创建该文件:
conf_pg_hba_replication.connection=host replication apigee existing_slave_ip/32 trust\ \nhost replication apigee new_slave_ip/32 trust
其中 existing_slave_ip 是当前 Postgres 备用服务器的 IP 地址,new_slave_ip 是新的备用节点的 IP 地址。 - 在 Postgres 主服务器上重启 apigee-postgresql:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart - 通过查看主实例上的 /opt/apigee/apigee-postgresql/conf/pg_hba.conf 文件,验证是否添加了新的备用节点。您应该会在该文件中看到以下几行:
host Replication apigee existing_slave_ip/32 trust
host Replication apigee new_slave_ip/32 trust - 安装新的 Postgres 备用服务器:
- 修改您用于安装当前版本 Edge 的配置文件,以指定以下内容:
# 当前主服务器的 IP 地址:
PG_MASTER=192.168.56.103
# 新备用节点的 IP 地址
PG_STANDBY=192.168.56.102 - 按照安装 Edge apigee-setup 实用程序中的说明,停用 SELinux。
- 将 Edge bootstrap_4.16.05.sh 文件下载到 /tmp/bootstrap_4.16.05.sh:
> curl https://software.apigee.com/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh
注意: - 安装 Edge apigee-service 实用程序和依赖项:
> sudo bash /tmp/bootstrap_4.16.05.sh apigeeuser=uName apigeepassword=pWord - 使用 apigee-service 安装 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - 安装 Postgres:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 在新的主副节点上,运行以下命令:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
验证它是否显示为主副节点。
- 修改您用于安装当前版本 Edge 的配置文件,以指定以下内容:
停用 Postgres 节点
更新完成后,停用新的备用节点:
- 确保 Postgres 正在运行:
> /opt/apigee/apigee-service/bin/apigee-all status
如果 Postgres 未运行,请启动它:
> /opt/apigee/apigee-service/bin/apigee-all start - 在新的备用节点上运行以下命令,停止新的备用节点:
> /opt/apigee/apigee-service/bin/apigee-all stop - 在 Postgres 主节点上,修改 /opt/apigee/customer/application/postgresql.properties,从 conf_pg_hba_replication.connection 中移除新的备用节点:
conf_pg_hba_replication.connection=host replication apigee existing_slave_ip/32 trust - 在 Postgres 主服务器上重启 apigee-postgresql:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart - 通过查看主服务器上的 /opt/apigee/apigee-postgresql/conf/pg_hba.conf 文件,验证是否已移除新的备用节点。您应该只会在该文件中看到以下行:
host replication apigee existing_slave_ip/32 trust - 对管理服务器节点进行以下 Edge Management API 调用,从 ZooKeeper 中删除备用节点的 UUID:
> curl -u sysAdminEmail:password -X DELETE http://<ms_IP>:8080/v1/servers/<new_slave_uuid>
零停机时间更新
零停机更新(也称为滚动更新)可让您在不停用 Edge 的情况下更新 Edge 安装。
只有配置为 5 个节点或更多节点时,才能实现零停机更新。
实现零停机升级的关键是从负载均衡器中逐个移除每个路由器。然后,您可以在该路由器所在的同一机器上更新该路由器和任何其他组件,然后再将该路由器添加回负载平衡器。
- 按照“机器更新顺序”部分中所述的正确顺序更新机器。
- 当需要更新路由器时,请选择任意一个路由器并使其不可访问,如启用/停用服务器(消息处理器/路由器)可访问性中所述。
- 在与路由器位于同一台机器上更新所选路由器和所有其他 Edge 组件。 所有 Edge 配置都会在同一节点上显示路由器和消息处理器。
- 使路由器再次可访问。
- 对其余路由器重复第 2 步到第 4 步。
- 继续为安装中的所有剩余计算机更新。
在更新前/后,请注意以下事项:
- 在路由器和消息处理器组合节点上:
- 更新前 - 执行以下操作:
- 使路由器不可访问。
- 使消息处理器不可访问。
- 更新后 - 执行以下操作:
- 使消息处理器可访问。
- 使路由器可以访问。
- 更新前 - 执行以下操作:
- 在单个路由器节点上:
- 在更新之前,请使路由器不可访问。
- 更新后,使路由器可以访问。
- 在单个消息处理器节点上:
- 在更新之前,使消息处理器不可访问。
- 更新后,使消息处理器可访问。
使用静默配置文件
您必须将静默配置文件传递给更新命令。静默配置文件应与您用于安装 Edge 4.16.01 或 4.16.05 的配置文件相同。
在具有外部互联网连接的节点上更新到 4.16.09 的过程
请按照以下步骤更新节点上的 Edge 组件:
- 如果您当前正在使用 Postgres 主备用复制,请按照安装新的 Postgres 备用节点中的说明安装新的 Postgres 备用节点。
- 在更新完成之前,停用配置为对 Cassandra 执行修复操作的所有 CRON 作业(如果有)。
- 以 root 身份登录您的节点以安装 Edge RPM。
注意:虽然 RPM 安装需要 root 访问权限,但您无需 root 访问权限即可执行 Edge 配置。 - 按照安装 Edge apigee-setup 实用程序中的说明,停用 SELinux。
- 将 Edge 4.16.09 的 bootstrap_4.16.09.sh 文件下载到 /tmp/bootstrap_4.16.09.sh:
> curl https://software.apigee.com/bootstrap_4.16.09.sh -o /tmp/bootstrap_4.16.09.sh - 安装 Edge 4.16.09 apigee-service 实用程序及其依赖项:
> sudo bash /tmp/bootstrap_4.16.09.sh apigeeuser=uName apigeepassword=pWord
其中 uName:pWord 是您从 Apigee 收到的用户名和密码。如果您省略了 pWord,系统会提示您输入该字段。
默认情况下,安装程序会检查您是否已安装 Java 1.8。如果没有,它会自动为您安装。使用 JAVA_FIX 选项指定如何处理 Java 安装。JAVA_FIX 采用以下值:
I = 安装 OpenJDK 1.8(默认)
C = 继续,不安装 Java
Q = 退出。对于此选项,您必须自行安装 Java。 - 使用 apigee-service 更新 apigee-setup 实用程序:
- 如果您通过升级 Edge 版本 4.15.07.0x 安装了 4.16.01,则必须安装 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
此命令会在 <inst_dir>/apigee/apigee-setup/bin 中安装 update.sh 实用程序。
如果您已安装 apigee-setup 实用程序,请对其进行更新:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update - 如果您直接安装了 4.16.01,即未从 4.15.07.0x 执行升级,则必须更新 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
对 apigee-service 进行此更新会在 <inst_dir>/apigee/apigee-setup/bin 中安装 update.sh 实用程序。 - 如果您直接安装了 4.16.05 版本或通过更新安装了 4.16.05,则必须更新 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
对 apigee-service 进行了这一更新会在 <inst_dir>/apigee/apigee-setup/bin 安装了 update.sh 实用程序。
- 如果您通过升级 Edge 版本 4.15.07.0x 安装了 4.16.01,则必须安装 apigee-setup 实用程序:
- 根据您当前的 Edge 版本,您必须在管理服务器上安装或更新 apigee-validate 实用程序。
- 如果您目前使用的是 Edge 4.16.05:请在管理服务器上更新 apigee-validate 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate update - 如果您目前使用的是 Edge 4.16.01:请在管理服务器上安装 apigee-validate 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate install
注意:如果您在安装 4.16.01 时已在消息处理器节点上安装 apigee-validate 实用程序,则可以通过在该节点上使用以下命令来更新该实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate update
不过,从 4.16.05 及更高版本开始,Apigee 建议您在管理服务器上安装并运行 apigee-validate 实用程序。 - 如果要从 4.16.01 升级:修改传递给 apigee-validate 实用程序的配置文件。在 4.16.01 Edge 版本中,apigee-validate 使用的配置文件需要以下属性:
APIGEE_ADMINPW=sysAdminPword
MP_POD=gateway
REGION=dc-1
在此版本中,配置文件仅需要 APIGEE_ADMINPW 属性。您可以从文件中移除其他两个属性。
- 如果您目前使用的是 Edge 4.16.05:请在管理服务器上更新 apigee-validate 实用程序:
- 更新 apigee-provision 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision update - 按照下文“机器更新顺序”中所述的顺序在您的节点上运行更新实用程序:
> /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
配置文件的唯一要求是“apigee”用户必须能够访问或读取配置文件。
使用“-c”选项指定要更新的组件。可能的组件列表包括:
ldap = OpenLDAP
cs = Cassandra
zk = Zookeeper
qpid = qpidd
ps = postgresql
edge =除 Edge 界面之外的所有 Edge 组件:管理服务器、消息处理器、路由器、QPID 服务器、Postgres 服务器
ui = Edge 界面
all = 更新机器上的所有组件(仅适用于 Edge aio 安装配置文件或 API BaaS asa 安装配置文件)
e = ElasticSearch
b = API BaaS 堆栈
p = API BaaS 门户
ebp = 同一节点上的 ElasticSearch、API BaaS 堆栈和 API BaaS 门户 - 在管理服务器上运行 apigee-validate 实用程序,以测试更新,如测试安装中所述。
- 如果您安装了新的 Postgres 备用节点,请按照停用 Postgres 节点中的说明停用该节点。
如需稍后回滚更新,请使用4.16.09 回滚过程中所述的步骤。
从本地代码库更新到 4.16.09 的步骤
如果您的 Edge 节点位于防火墙后面,或者以其他方式被禁止通过互联网访问 Apigee 代码库,则可以通过 Apigee 代码库的本地代码库或镜像执行更新。
创建本地 Edge 代码库后,您可以通过以下两种方式从本地代码库更新 Edge:
- 创建代码库的 .tar 文件,将 .tar 文件复制到节点,然后通过 .tar 文件更新 Edge。
- 在包含本地代码库的节点上安装 Web 服务器,以便其他节点可以访问该代码库。 Apigee 提供了 Nginx Web 服务器供您使用,您也可以使用自己的 Web 服务器。
如需从本地 4.16.09 代码库更新,请执行以下操作:
- 如果您目前使用的是 Postgres 主-从站复制,请按照上文中的安装新的 Postgres 从站节点部分所述,安装新的 Postgres 从站节点。
- 按照安装 Edge apigee-setup 实用程序中的“创建本地 Apigee 代码库”部分中的说明创建本地 4.16.09 代码库。
注意:如果您已有现有的 4.16.01 或 4.16.05 代码库,则可以按照安装 Edge apigee-setup 实用程序中的“更新本地 Apigee 代码库”部分所述,将 4.16.09 代码库添加到该代码库。 -
如需从 .tar 文件安装 apigee-service,请执行以下操作:
- 在包含本地代码库的节点上,使用以下命令将本地代码库打包到名为 /opt/apigee/data/apigee-mirror/apigee-4.16.09.tar.gz 的单个.tar 文件中:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package - 将 .tar 文件复制到您要更新 Edge 的节点。例如,将其复制到新节点上的 /tmp 目录。
- 在新节点上,将文件解压缩到 /tmp 目录:
> tar -xzf apigee-4.16.09.tar.gz
此命令会在包含 .tar 文件的目录中创建一个名为 repos 的新目录。例如 /tmp/repos。 - 从 /tmp/repos 安装 Edge apigee-service 实用程序和依赖项:
> sudo bash /tmp/repos/bootstrap_4.16.09.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
请注意,您需要在此命令中添加 repos 目录的路径。
- 在包含本地代码库的节点上,使用以下命令将本地代码库打包到名为 /opt/apigee/data/apigee-mirror/apigee-4.16.09.tar.gz 的单个.tar 文件中:
-
如需使用 Nginx Web 服务器安装 apigee-service,请执行以下操作:
- 按照安装 Edge apigee-setup 实用程序中的“使用 Nginx Web 服务器从代码库安装”部分中的说明配置 Nginx Web 服务器。
- 在远程节点上,将 Edge bootstrap_4.16.09.sh 文件下载到 /tmp/bootstrap_4.16.09.sh:
> /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.16.09.sh -o /tmp/bootstrap_4.16.09.sh
其中 uName:pWord 是您为代码库设置的用户名和密码,remoteRepo 是代码库节点的 IP 地址或 DNS 名称。 - 在远程节点上,安装 Edge apigee-service 实用程序和依赖项:
> sudo bash /tmp/bootstrap_4.16.09.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
p repo 为 username.uName。
- 使用 apigee-service 更新 apigee-setup 实用程序:
- 如果您通过升级 Edge 版本 4.15.07.0x 安装了 4.16.01,则必须安装 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
此命令会在 <inst_dir>/apigee/apigee-setup/bin 中安装 update.sh 实用程序。
如果您已安装 apigee-setup 实用程序,请对其进行更新:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update - 如果您直接安装了 4.16.01,即未从 4.15.07.0x 执行升级,则必须更新 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
对 apigee-service 进行的这项更新会在 <in/apigee-dir> 中安装 update.shst 实用程序 - 如果您直接或通过更新安装了 4.16.05,则必须更新 apigee-setup 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
对 apigee-service 进行此更新会在 <inst_dir>/apigee/apigee-setup/bin 中安装 update.sh 实用程序。
- 如果您通过升级 Edge 版本 4.15.07.0x 安装了 4.16.01,则必须安装 apigee-setup 实用程序:
- 根据您当前使用的 Edge 版本,您必须在管理服务器上安装或更新 apigee-validate 实用程序。
- 如果您目前使用的是 Edge 4.16.05:请在管理服务器上更新 apigee-validate 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-validate update - 如果您要从 4.16.01 升级:修改传递给 apigee-validate 实用程序的配置文件。在 4.16.01 Edge 版本中,apigee-validate 使用的配置文件需要以下属性:
APIGEE_ADMINPW=sysAdminPword
MP_POD=gateway
REGION=dc-1
在此版本中,配置文件仅需要 APIGEE_ADMINPW 属性。您可以从文件中移除其他两个属性。
- 如果您目前使用的是 Edge 4.16.05:请在管理服务器上更新 apigee-validate 实用程序:
- 更新 apigee-provision 实用程序:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision update - 按照下文“计算机更新顺序”中所述的顺序,在节点上运行更新实用程序:
> /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
配置文件的唯一要求是“apigee”用户必须能够访问或读取该配置文件。
使用“-c”选项指定要更新的组件。可能的组件列表包括:
ldap = OpenLDAP
cs = Cassandra
zk = Zookeeper
qpid = qpidd
ps = postgresql
edge =除 Edge 界面之外的所有 Edge 组件:管理服务器、消息处理器、路由器、QPID 服务器、Postgres 服务器
ui = Edge 界面
all = 更新机器上的所有组件(仅适用于 Edge aio 安装配置文件或 API BaaS asa 安装配置文件)
e = ElasticSearch
b = API BaaS 堆栈
p = API BaaS 门户
ebp = 同一节点上的 ElasticSearch、API BaaS 堆栈和 API BaaS 门户 - 如测试安装中所述,通过在管理服务器上运行 apigee-validate 实用程序来测试更新。
- 如果您安装了新的 Postgres 备用节点,请按照上文中的停用 Postgres 节点部分所述的方式停用该节点。
如需稍后回滚更新,请使用4.16.09 回滚过程中所述的步骤。
机器更新顺序
在 Edge 安装中更新机器的顺序很重要。更新时最重要的注意事项包括:
- 您必须先更新 所有 Cassandra 和 ZooKeeper 节点,然后才能更新任何其他节点。
- 对于具有多个边缘组件(管理服务器、消息处理器、路由器、QPID 服务器但不包括 Postgres 服务器)的任何机器,请使用“-c Edge”选项同时更新所有组件。
- 如果某个步骤指定应在多台机器上执行,请按指定的机器顺序执行该步骤。
- 您无需单独执行任何步骤即可更新创收设置。当您指定“-c 边缘”选项时,它会更新。
对于单主机独立安装
- 如果您是从 4.16.01 开始更新,请将 ZooKeeper 降级:
> yum checkout apigee-zookeeper - 更新 Cassandra 和 ZooKeeper:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 更新 qpidd:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - 更新 LDAP:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - 停止 Postgres 服务器、Qpid 服务器和 PostgreSQL:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 更新 Postgres 数据库:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - 更新其余 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - 更新 Edge 界面:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
对于 2 主机独立安装
如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑。
- 如果您要从 4.16.01 进行更新,请在机器 1 上降级 Zookeeper:
> yum downgrade apigee-zookeeper - 在机器 1 上更新 Cassandra 和 ZooKeeper:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 在机器 2 上更新 qpidd:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - 在机器 1 上更新 LDAP:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - 更新机器 1 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - 在机器 1 上更新界面:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - 更新机器 2 上的 postgresql:
- 停止 Postgres 服务器、Qpid 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 更新 Postgres 数据库:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - 更新机器 2 和机器 1 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 停止 Postgres 服务器、Qpid 服务器和 postgresql:
- 更新机器 2 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
对于 5 主机集群安装
如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑。
- 确保您已按照安装新的 Postgres 备用节点中的说明安装了新的 Postgres 备用节点。
- 如果要从 4.16.01 开始更新,请在机器 1、2 和 3 上降级 ZooKeeper:
> yum 降级 apigee-zookeeper - 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 在机器 4 和 5 上更新 qpidd:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - 在机器 1 上更新 LDAP:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - 在机器 1、2、3 上更新 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - 在机器 1 上更新界面:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - 更新机器 4 和 5:
- 在机器 4 上停止 Postgres 服务器和 Qpid 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop - 在机器 5 上停止 Postgres 服务器、Qpid 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 在您为回滚添加的新备用节点上停止 Postgres 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-serviceEdge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 在机器 4 上更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 更新机器 4 上的 Postgres 数据库(仅限 Postgres 主实例):
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - 在机器 5 上更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 在机器 4 和 5 上启动 Postgres 服务器和 Qpid 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start - 在机器 5 上运行以下命令,将 Postgres 配置为备用节点:
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 在两个服务器上发出以下脚本,验证复制状态。系统应在这两台服务器上显示相同的结果,以确保成功复制:
在主节点机器 4 上,运行以下命令:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
验证它是否显示为主节点。
在机器 5(即备用节点)上:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
验证它是否显示为备用节点。
- 在机器 4 上停止 Postgres 服务器和 Qpid 服务器:
- 更新机器 4、5 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -cedge -f configFile - 确保按照上述停用 Postgres 节点中的步骤停用新的备用节点。
对于 9 主机集群安装
如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑。
- 确保您已按照安装新的 Postgres 备用节点中的说明安装了新的 Postgres 备用节点。
- 如果要从 4.16.01 开始更新,请在机器 1、2 和 3 上降级 Zookeeper:
> yum 降级 apigee-zookeeper - 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 在机器 6 和 7 上更新 qpidd:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - 更新机器 1 上的 LDAP:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - 依次在机器 6、7、1、4 和 5 上更新 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - 在机器 1 上更新界面:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - 更新机器 8 和 9:
- 在机器 8 上停止 Postgres 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop - 在机器 9 上停止 Postgres 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 在机器 6 和 7 上停止 Qpid 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop - 在您为回滚添加的新备用节点上停止 Postgres 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-serviceEdge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 在机器 8 上更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 更新机器 8 上的 Postgres 数据库(仅限 Postgres 主服务器):
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - 在机器 9 上更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 在机器 8 和 9 上启动 Postgres 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start - 在机器 6 和 7 上启动 Qpid 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start - 在机器 9 上运行以下命令,将 Postgres 配置为备用节点:
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 通过在两台服务器上发出以下脚本来验证复制状态。系统应在两台服务器上显示相同的结果,以确保成功复制:
在机器 8(即主节点)上,运行:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
验证其是否为主实例。
在机器 9 上,即备用节点:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
验证它是否显示为备用。
- 在机器 8 上停止 Postgres 服务器:
- 更新机器 8 和 9 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - 请务必按照停用 Postgres 节点中上述步骤停用新的备用节点。
对于 13 台主机的集群安装
如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑。
- 确保您已按照上文中的安装新的 Postgres 备用节点部分所述的方式安装了新的 Postgres 备用节点。
- 如果要从 4.16.01 开始更新,请在机器 1、2 和 3 上降级 Zookeeper:
> yum 降级 apigee-zookeeper - 在机器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 在机器 12 和 13 上更新 qpidd:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - 在机器 4 和 5 上更新 LDAP:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - 按以下顺序更新机器 12、13、6、7、10 和 11 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -cedge -f configFile - 更新机器 6 和 7 上的界面:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - 更新机器 8 和 9:
- 在机器 8 上停止 Postgres 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop - 在机器 9 上停止 Postgres 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 在机器 12 和 13 上停止 Qpid 服务器:
> /opt/apigee/apigee-service/bin/apigee-serviceedge-qpid-server stop - 在您为回滚而添加的新备用节点上停止 Postgres 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 在机器 8 上更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 更新机器 8 上的 Postgres 数据库(仅限 Postgres 主服务器):
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - 在机器 9 上更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 在机器 8 和 9 上启动 Postgres 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start - 在机器 12 和 13 上启动 Qpid 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start - 在机器 9 上运行以下命令,将 Postgres 配置为备用节点:
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 通过在两台服务器上发出以下脚本来验证复制状态。系统应在两台服务器上显示相同的结果,以确保成功复制:
在机器 8(即主节点)上,运行:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
验证其是否为主实例。
在机器 9 上,即备用节点:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
验证它是否显示为备用。
- 在机器 8 上停止 Postgres 服务器:
- 更新机器 8 和 9 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - 请务必按照停用 Postgres 节点中上述步骤停用新的备用节点。
对于 12 主机集群安装
如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑。
- 确保您已按照安装新的 Postgres 备用节点中的说明安装了新的 Postgres 备用节点。
- 更新 Cassandra 和 ZooKeeper:
- 如果您是从 4.16.01 进行更新,请在数据中心 1 中的机器 1、2 和 3 上降级 Zookeeper:
> yum downgrade apigee-zookeeper - 在数据中心 1 的机器 1、2 和 3 上:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile - 如果您要从 4.16.01 进行更新,请在数据中心 2 中的机器 7、8 和 9 上降级 Zookeeper:
> yum downgrade apigee-zookeeper - 在数据中心 2 中的机器 7、8 和 9 上
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 如果您是从 4.16.01 进行更新,请在数据中心 1 中的机器 1、2 和 3 上降级 Zookeeper:
- 更新了 qpidd:
- 数据中心 1 中的机器 4、5
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - 数据中心 2 中的机器 10、11
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- 数据中心 1 中的机器 4、5
- 更新 LDAP:
- 数据中心 1 中的机器 1
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile - 数据中心 2 中的机器 7
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- 数据中心 1 中的机器 1
- 更新 Edge 组件:
- 数据中心 1 中的机器 4、5、1、2、3
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile - 数据中心 2 中的机器 10、11、7、8、9
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 数据中心 1 中的机器 4、5、1、2、3
- 更新了界面:
- 数据中心 1 中的机器 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile - 数据中心 2 中的机器 7:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
- 数据中心 1 中的机器 1:
- 更新数据中心 1 中的机器 6 和数据中心 2 中的机器 12:
- 在机器 6 上停止 Postgres 服务器:
> /opt/apigee/apigee-service/bin/apigee-serviceedge-postgres-server stop - 在机器 12 上停止 Postgres 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 在机器 4、5、10 和 11 上停止 Qpid 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop - 在您为回滚而添加的新备用节点上停止 Postgres 服务器和 postgresql:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop - 更新机器 6 上的 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 更新机器 6 上的 Postgres 数据库(仅限 Postgres 主服务器):
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade - 在机器 12 上更新 postgresql:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - 在机器 6 和 12 上启动 Postgres 服务器:
> /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start - 在机器 4、5、10 和 11 上启动 Qpid 服务器服务器:
> /opt/apigee/apigee-service/bin/apigee-serviceedge-qpid-server start - 在机器 12 上运行以下命令,将 Postgres 配置为备用节点:
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf *
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile - 在两个服务器上发出以下脚本,验证复制状态。系统应在两台服务器上显示相同的结果,以确保成功复制:
在主节点机器 6 上,运行以下命令:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
验证它是否显示为主节点。
在机器 12 上,备用节点:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
验证它是否显示为备用。
- 在机器 6 上停止 Postgres 服务器:
- 更新机器 6 和 12 上的 Edge 组件:
> /opt/apigee/apigee-setup/bin/update.sh -cedge -f configFile - 请务必按照停用 Postgres 节点中上述步骤停用新的备用节点。
对于 7 主机 API BaaS 安装
如需查看 Edge 拓扑和节点编号列表,请参阅安装拓扑。
- 在机器 5、6 和 7 上更新 Cassandra:
> /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile - 在机器 1、2 和 3 上更新 ElasticSearch 和 API BaaS 堆栈:
> /opt/apigee/apigee-setup/bin/update.sh -c e,b -f configFile - 在机器 4 上更新 API BaaS 门户:
> /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile
对于包含 10 个主机的 API BaaS 安装
如需查看 Edge 拓扑和节点编号的列表,请参阅安装拓扑。
- 在机器 8、9 和 10 上更新 Cassandra:
> /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile - 在机器 1、2 和 3 上更新 ElasticSearch:
> /opt/apigee/apigee-setup/bin/update.sh -c e -f configFile - 在机器 4、5 和 6 上更新 API BaaS 堆栈:
> /opt/apigee/apigee-setup/bin/update.sh -c b -f configFile - 更新机器 7 上的 API BaaS 门户:
> /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile
对于非标准安装
如果您使用的是非标准安装,请按以下顺序更新 Edge 组件:
- ZooKeeper
- Cassandra
- qpidd
- LDAP
- 边缘,表示以下顺序所有节点上的“-c 边缘”配置文件:使用 Qpid 服务器,但不是 Postgres 服务器、管理服务器、消息处理器和路由器的节点。
注意:如果节点同时安装了 Qpid 服务器和 Postgres 服务器,请在第 8 步中运行“-c 边缘”配置文件步骤。 - Edge 界面
- Postgres 主服务器上的 postgresql,包括升级。
- Postgres 备用服务器上的 postgresql。
- 边缘,是指所有组合 Qpid 和 Postgres 节点或任何独立 Postgres 节点上的“-c edge”配置文件。