此示例显示如何为较小的高可用性集群设置连接管理器。
下图说明了连接管理器将客户机连接请求路由到相应服务器时所需的服务级别协议。
图: 连接管理器配置
#dbservername nettype hostname servicename options cluster_1 group - - i=10 ifx onsoctcp host1 port1 g=cluster_1 ifx_hdr onsoctcp host2 port2 g=cluster_1 ifx_sds onsoctcp host3 port3 g=cluster_1 oltp onsoctcp cmhost1 cmport1 report onsoctcp cmhost1 cmport2 payroll onsoctcp cmhost1 cmport3每个数据库服务器上的 sqlhosts 文件具有以下条目:
#dbservername nettype hostname servicename options ifx onsoctcp host1 port1 ifx_hdr onsoctcp host2 port2 Ifx_sds onsoctcp host3 port3连接管理器的 sqlhosts 文件定义了一个名为 cluster_1 的服务器组。该服务器组已配置为确保在主服务器发生故障且重新启动了连接管理器时,连接管理器可以重新连接到集群。该服务器组包含可用作故障转移目标的所有服务器节点(ifx、ifx_hdr 和 ifx_sds)。
要配置和启动连接管理器,请执行以下操作:
ifx ifx gbasedbt password1 ifx_hdr ifx_hdr gbasedbt password2 ifx_sds ifx_sds gbasedbt password3运行以下命令来加密该文件:
onpassword -k SecretKey -e ./passwords.txt
NAME cm_example LOG 1 LOGFILE ${GBASEDBTDIR}/etc/cmlog CLUSTER cluster_1 { GBASEDBTSERVER ifx SLA oltp DBSERVERS=primary SLA payroll DBSERVERS=HDR,primary SLA report DBSERVERS=SDS,HDR FOC ORDER=ifx_sds,ifx_hdr \ TIMEOUT=10 \ RETRY=1 }
#dbservername nettype hostname servicename options ifx onsoctcp host1 port1 ifx_hdr onsoctcp host2 port2 ifx_sds onsoctcp host3 port3
#dbservername nettype hostname servicename options cluster_1 group - - i=10 ifx onsoctcp host1 port1 g=cluster_1 ifx_hdr onsoctcp host2 port2 g=cluster_1 ifx_sds onsoctcp host3 port3 g=cluster_1 oltp onsoctcp cmhost1 cmport1 report onsoctcp cmhost1 cmport2 payroll onsoctcp cmhost1 cmport3
oncmsm -c cmconfig