# 安装90GA产品
使用90GA安装包,在安装90LA Governor的服务器上安装90GA Governor,在安装90LA ESB-Server的服务器上安装90GA ESB-Server,在安装90LA API-Gateway的服务器上安装90GA API-Gateway。 90GA的产品安装参考:01产品安装指南
90GA产品安装后,不要立即启动,等升级成功后再启动。
如果是微服务安装,也需要在90GA的数据库执行afc_all.sql和1-esb-afc-data.sql(这两个脚本文件在独立版安装介质中)。
不能把90LA-Governor的config/application.properties,config/ESB/config/user-config.xml等配置文件复制到90GA-Governor,请直接修改90GA-Governor的配置文件。
# 安装升级程序包
获取升级程序包,Linux环境:UpdateTo9.0GA.tar,Windows环境:UpdateTo9.0GA.zip(支持升级的数据库有MySQL、Oracle、PostgreSQL、达梦数据库、KingbaseES、SqlServer、OpenGauss)。 将升级包解压到指定目录。
OpenGauss升级前,需要在90GA的数据库执行如下脚本:
ALTER TABLE API_ROUTE_INTERFACE MODIFY ROUTE_ID VARCHAR(320);
ALTER TABLE API_INVOKE_RULE MODIFY ROUTE_ID VARCHAR(320);
# 添加数据库驱动
安装程序包默认没有数据库驱动jar,需要将对应的数据库驱动复制到{UpdateTo9.0GA}\libs目录。
# 修改数据库配置
打开{UpdateTo9.0GA}\conf\application.yml,配置内容如下:
spring:
jackson:
time-zone: GMT+8
jpa:
show-sql: false
hibernate:
ddl-auto: none
properties:
#数据库类型
database: MYSQL
hibernate:
dialect: org.hibernate.dialect.MySQLDialect
enable_lazy_load_no_trans: true
datasource:
dynamic:
primary: db01
datasource:
#90LA数据库信息
db01:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/esb90la?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: root
#90GA数据库信息
db02:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/esb90ga?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: root
参数 | 说明 |
---|---|
spring.jpa.properties.database | 数据库类型,默认mysql数据库类型。 |
spring.jpa.properties.hibernate.dialect | 数据库方言类,默认mysql数据库方言,其他数据库参考:1.1 安装须知。 |
spring.datasource.dynamic.datasource.db01.driver-class-name | 90LA数据库驱动class。 |
spring.datasource.dynamic.datasource.db01.url | 90LA数据库url。 |
spring.datasource.dynamic.datasource.db01.username | 90LA数据库用户名。 |
spring.datasource.dynamic.datasource.db01.password | 90LA数据库密码。 |
spring.datasource.dynamic.datasource.db02.driver-class-name | 90GA数据库驱动class。 |
spring.datasource.dynamic.datasource.db02.url | 90GA数据库url。 |
spring.datasource.dynamic.datasource.db02.username | 90GA数据库用户名。 |
spring.datasource.dynamic.datasource.db02.password | 90GA数据库密码。 |
根据实际修改数据库类型、数据库方言、90LA数据库配置、90GA数据库配置,然后保存配置文件。
DM数据库,db01和db02的username不能用同一个
# 启动升级程序
Linux环境执行以下命令:
./startServer.sh
Windows环境执行以下命令:
startServer.bat
启动成功后,升级程序自动运行,日志无报错并出现如下内容,说明程序执行成功
重复执行升级程序则显示
# 启动90GA
升级程序执行成功后,分别停止原90LA Governor、90LA ESB-Server、90LA API-Gateway服务,启动90GA Governor、90GA ESB-Server、90GA API-Gateway的服务。
# 升级后的注意点和必要配置
90GA的Governor、ESB-Server、API-Gateway都启动成功后,有以下注意点和必要配置:
- 升级后90GA保留原有的组织机构、员工和账号,不保留用户自定义的角色,根据账号原有的角色做出如下变更:
- 账号拥有开发角色(包括自定义开发角色)- 授权开发人员角色。
- 账号拥有消费方角色(包括自定义消费方角色)- 授权消费方角色。
- 账号拥有管理员角色 - 授权系统管理员角色。
- 账号拥有运维人员角色 - 授权系统运维人员角色。
- 升级后,manager账户作为ESB平台管理员拥有四个门户的全部权限,如果不存在分级授权场景只需要使用manager账户操作。
- 服务器组权限升级后改为给域授权,升级时域下的接口有用到该服务器组,会为域授权该服务器组,没有用到不会授权,如果需要给域添加服务器组,请使用manager账户点击“管理门户->资源管理->域管理”进入域管理页面,在操作列点击“添加服务器”按钮,为域添加服务器。
- 域、系统、服务、接口不再给角色授权,改为给账户授权,域授权需要使用manager账户点击“管理门户->资源管理->域管理”进入域管理页面,在操作列点击“添加域管理员”按钮,为域添加域管理员。系统授权需要使用manager账户或域管理员账户或系统管理员点击“管理门户->资源管理->系统管理”进入系统管理页面,在操作列点击“添加成员”为系统添加成员(如果给成员添加的是开发人员角色,默认拥有系统下的服务和接口权限)。
- ESB的全局配置没有升级,请使用manager账户点击“管理门户->配置管理->全局配置”进入全局配置页面重新配置。
- 拦截器配置没有升级,请使用manager账户点击“管理门户->配置管理->拦截器管理”进入拦截器管理页面重新配置。
- 离线模型的系统配置、变量配置、服务配置、全局配置没有升级,请使用manager账户点击“管理门户->配置管理->服务器配置”进入服务器配置页面重新配置。
- API编排的数据映射图元没有升级,如果API编排中使用了数据映射图元,在API编排页面,先删除数据映射图元,然后重新添加数据映射图元并配置数据映射。
- 数据源升级时,对于每一个数据源,有几个系统使用了该数据源,就生成几个相同的数据源,每个数据源有对应的所属系统,如果没有系统使用该数据源,升级时会随机设置所属系统。SAP源、业务地址的升级和数据源升级处理方式一致。
- 必要配置设置完成后,请检查每个接口调用是否正常。
# 特殊情况处理
# 升级后,如果90GA继续使用90LA的redis,启动90GA的API-Gateway时出现如下报错:
解决方案1:
使用redis客户端工具,执行如下命令,查询缓存的key列表。
keys *.*-*.*.*.*
请先确认该key是ESB的缓存,然后使用del命令,删除对应的key列表,例如:
del "\xac\xed\x00\x05t\x00+com.primeton.oa-com.primeton.hr.http.json-1"
解决方案2:
如果90GA配置的redis只有ESB在使用,没有其他应用连接该redis,使用redis客户端工具,执行如下命令,清除所有缓存。
flushall
清除redis缓存后,需要重启ESB-Governor和API-Gateway。
# 微服务环境只升级ESB,不升级AFCenter
微服务环境,ESB升级到90GA,AFCenter不升级,ESB升级完成后,请按如下操作处理:
1备份AFCenter的数据库。
2在AFCenter的数据库执行delete-esb-afc-data.sql。
3在AFCenter的数据库执行1-esb-afc-data.sql(脚本在ESB-Governor-90GA的安装包里,请使用AFCenter数据库类型对应的脚本)。
如果AFCenter是8.2.6及以下版本,在执行1-esb-afc-data.sql前,修改1-esb-afc-data.sql脚本的如下内容: