高可用性支持
本主题介绍如何使用多台服务器在活动 - passive 配置中配置高可用性。在此模式下,有一个 Digital Lab 服务器是活动,负载平衡器将所有请求路由到该服务器; 还有一个被动 Digital Lab 服务器,准备在活动服务器发生故障时接管该服务器。建议同时监视这两个服务器是否始终处于启动状态,以确保始终有被动 Digital Lab 服务器就绪。
此部分仅与 UFT Digital Lab 相关。
有关配置 PostgreSQL 数据库的高可用性的信息,请参阅 PostgreSQL 文档。
先决条件
本节列出了实现高可用性的前提条件。
数据库先决条件
- 应使用安装在单独计算机上的外部数据库,而不是 Digital Lab 嵌入式 PostgreSQL。
- 如果您目前正在使用 UFT Digital Lab 内置的 PostgreSQL,则将其转移到外部 PostgreSQL。有关详细信息,请参阅将导出的数据移植到外部数据库。
- 将 Digital Lab 的默认最大数量 PostgreSQL 连接数 (默认为 100) 增加到 200。有关详细信息,请参阅 PostgreSQL 文档。
文件存储先决条件
-
确保网络上有存储 Digital Lab 文件的位置。
-
如果 Digital Lab 文件存储当前位于 Digital Lab 服务器上,则将其移至单独的计算机。有关详细信息,请参阅迁移文件存储系统。
安装 Digital Lab
本节介绍如何在两台服务器上安装 Digital Lab 以实现高可用性。
- 安装第一个 Digital Lab 服务器。在安装过程中,请在服务器配置中使用负载平衡器 FQDN,指明要使用外部 PostgreSQL,并提供文件存储路径。在安装期间,清除嵌入式连接器复选框。此服务器处于活动模式。
-
安装第二个 Digital Lab 服务器。在安装过程中,请在服务器配置中使用负载平衡器 FQDN,并选择使用相同的数据库和文件存储路径。通过查询数据库,服务器检测到存在活动服务器,并进入被动模式。在安装期间,清除嵌入式连接器复选框。
提示: 如果已经安装了服务器,请修改服务器配置以使用负载平衡器 FQDN。有关详细信息,请参阅重新配置 Digital Lab 服务器
建议监视活动和被动服务器是否始终处于启动状态。如果一个服务器失败,请确保重新启动,以确保总是有一个被动的 UFT Digital Lab 服务器准备好。备注设备应使用独立连接器连接,而不是直接连接到高可用性服务器。
配置负载平衡器
要完成实现,请配置负载平衡器。
要检查当前哪个 Digital Lab 服务器活动,请将负载平衡器配置为使用以下 REST API 请求:
GET https://< 服务器地址 >:< 服务器端口 >/rest/v2/status/ 活动
- 如果服务器处于活动 ,,则会收到 200 确定响应。
- 如果服务器处于被动状态,则返回 503 - Service Unavailable 响应。
HAProxy 配置示例
下面是一个常见负载平衡器的示例。它对 haproxy.cfg 文件中的后端
部分使用 HAProxy (高可用性代理) 配置。
后端 Web 服务器
...
option httpchk GET /rest/v2/status/active HTTP/1.0
server server1 <address>:<port> check fall 1 rise 1
server server2 <address>:<port> check fall 1 rise 1
另请参阅: