如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性

上传人:豆浆 文档编号:881531 上传时间:2017-05-20 格式:DOCX 页数:11 大小:387.58KB
返回 下载 相关 举报
如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性_第1页
第1页 / 共11页
如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性_第2页
第2页 / 共11页
如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性_第3页
第3页 / 共11页
如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性_第4页
第4页 / 共11页
如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性》由会员分享,可在线阅读,更多相关《如何在UNIX操作系统的HA 集群(CLUSTER)环境配置MQ的高可用性(11页珍藏版)》请在金锄头文库上搜索。

1、如何在 UNIX 操作系统的 HA 集群(CLUSTER)环境配置 MQ 的高可用性?内容提要: 本 文详细介绍了如何在 HA 的集群(cluster)环境下创建和配置 MQ 队列管理器,也介绍了如何配置 HA 产品,以支持 MQ 的高可用性配置.本文提到的 HA 环境为 Solaris,AIX,HP 的高可用软件;也可适用其他 UNIX 系统包括 linux 操作系统.此文内容来自 MQ supportpac MC91. 说明:MQ 产品本身提供了很多有助于高可用性的功能,比如 mq 集群.MQ 集群主要用于简化管理和负载均衡,同时也提供了比单一的 MQ 队列管理器更好的高可用性.比如,一个

2、队列管理器发生故障,消息仍然可以发到 cluster 中配置了相同的队列实例的队列管理器上.但 WMQ 的集群无法提供队列管理器故障的自动检测和恢复,而借助操作系统的 HA 集群 CLUSTER,则可以实现这些功能.将 MQ 和操作系统 HA 产品的结合,可以进一步提供 WMQ 队列管理器的高可用性. 通过一个正确配置的 HA cluster, 可以检测到电源,节点,磁盘控制器,网络,网络适配器和队列管理器进程的故障,并自动触发恢复的程序,让受到影响的 MQ 队列管理器尽快恢复工作. 注释:1)本文中提到的 HA cluster 专指节点和资源的集合,用于提供 cluster 内部服务的高可用

3、性,与 MQ 的 cluster 概念不同.2)高可用性软件名称:AIX 平台:HACMPSolaris 平台:VCSHP 平台 :service guard正文:下面将详细介绍如何配置 MQ 在 HA 集群 CLUSTER 环境的高可用性.预先要求是操作系统,HA 产品已经成功安装.下图为配置的示意图:MQ 在 HA cluster 环境配置的中心问题就是将 MQ 队列管理器的互斥数据放在各自独立的文件系统中,而把队列管理器的其它数据放在共享文件系统上。(一) 安装1.安装 MQ 产品在 HA CLUSTER 的每个节点上按照常规安装 MQ,多个节点无法共享一个 MQ 安装.安装 MQ 的注

4、意事项如下:1)MQ 要安装在每个节点机器内盘上,不要安装在共享盘上所有节点的 MQ 版本要相同, 除非在做版本升级的过程中.2)安装 mq 时,注意不要如 MQ 信息中心所述,创建独立的/var/mqm 和/var/mqm/log 文件系统.3)所有节点定义的 mqm 用户和 mqm 组对应的 id 号要全部相同.2.安装 MQ supportpac MC91supportpac 下载网址:http:/ cluster 中的节点,以 mqm 或 root 登录. 对 于 HACMP 和 service guard 软件,创建/MQHA/bin 目录. 对于 VCS 软件, 创建/opt/VR

5、TSvcs/bin/MQM 目录.此为例子脚本指定的工作目录. 也可以把脚本放到不同的目录,但需要相应的修改脚本.将下载的 supportpac 文件解压缩后放到所选目录.确保所有此目录下的脚本具有执行权限:AIX 平台和 HP 平台:#chmod 755 ha*Solaris 平台:#chmod +x online offline monitor clean ha* explain另外,对于 Solaris 平台,Agent 的方法是由 perl 语言写的.需要拷贝或链接 ScriptAgent 的二进制到 MQM 的代理目录.#cp /opt/VRTSvcs/bin/ScriptAgent

6、 /opt/VRTSvcs/bin/MQM/MQMAgentMQM 的资源类型需要被加到 cluster 的配置文件:当 cluster运行时,可以使用 VCCS 图形配置或 HA 命令实现. 当 cluster 停止时,编辑 .cf 类型的文件.详细情况请参考 mc91.pdf 的附录 A.配置和重新启动 cluster,确认新的资源已经被认可:hatype -display MQM(二) 配置所 有的 HA 产品都有一个切换单元(unit of failover)的概念. 这是一套包含用于完成高可用服务的相关所有进程和资源的一套定义.这个方法最大化了每个服务的独立性,提供了灵活性和最小化故

7、障发生的影响.在 HACMP 环境,切换单元名称为资源组.VCS 环境名为服务组.HP service guard 名为 package.MQ 的最小切换 单元为一个队列管理器.最优化的配置是把每个队列管理器放在不同的资源组中,资源组包含由队列管理器使用的共享磁盘(可以是卷组或磁盘组);用于连接队列 管理器的 ip 地址和队列管理器.可以把多个队列管理器放在相同的资源组中,但是,如果这样,多个队列管理器在发生切换时,将一起切换.这可能导致不必要的 应用中断;另外,如果要使用应用监控,资源组中只有一个队列管理器可以被监控.如果要检测多个,需要自己编写监控程序.1.配置 HA cluster,这里

8、只是简要描述,详细情况需要参考相应 HA 高可用软件的说明.HACMP:1)在 cluster 节点配置 TCP/IP. 2)配置 cluster,cluster 节点,和适配器3)同步 cluster topology.VCS:1)参照 VCS 文档,配置 VCS cluser2)创建一个 cluster,按照常规配置网络和系统Serivice Guard:1)创建和配置 ASCII package 的配置文件模板.设置 PACKAGE_NAME设置 NODE_NAME设置 RUN_SCRIPT设置 HALT_SCRIPT设置 SERVER_NAME设置 SUBNET2)创建和配置 pack

9、age 控制脚本设置 VG,LV 和 IP设置 SUBNET设置 SERVICE_NAME3)使用提供的 hamqm_start 脚本,建立 customer_define_run_cmds 功能4)使用提供的 hamqm_stop 脚本,建立 customer_define_stop_cmds 功能5)禁止使用 node fail fast. - 打开 package 切换功能针对所有平台:确认初始的配置功能正确.比如可以创建一个独立的文件系统,测试它可从一个系统切换到另外一套系统.2.创建共享卷组.在共享卷上创建队列管理器需要的数据和日志存放的文件系统.参考下图:/MQHA/data 用于

10、存放 队列管理器的数据/MQHA/log 用于存放 队列管理器的日志var/mqm 不能建成一个文件系统,而应该为每个队列管理器建立如上的文件系统,这是因为安装补丁有时需要访问/var/mqm目录,如果只有活动节点可以访问此目 录,则 standby 机器将无法安装补丁;另外也可保证 halinkmqm 脚本可以更新备份节点的 mqs.ini.3.创建 MQ 队列管理器使 用脚本 hacrtmqm 脚本创建队列管理器,此脚本会调用 halinkmqm 脚本,会对 MQ 队列管理运行需要的互斥数据保存在本地,并创建如图所示的目录 和链接.确认队列管理器可以正常启动,定义所需的 object,确认

11、其他节点可以使用 halinkmqm脚本启动队列管理器.4.配置可移动的资源.资源组将 IP 地址作为服务的标签. 这是客户端和通道连接队列管理器的 IP 地址.可以为 cascading 或 rotating.HACMP:1)创建一个资源组,自己选择配置种类2)配置资源组,添加 service IP 标签,卷组,文件系统资源.3)同步 cluster 资源4)在每个 cluster 节点启动 HACMP. 确保 cluster 稳定性. 各自的卷组已经切好,文件系统正确安装.VCS:1) 创建一个 service goup,注意选择合适的 SystemList , Parallel, Onl

12、ineRetryLimit,OnlineRetryInterval,FailoverPolicy,AutoStart,AutoRestart, 和 AutoFailover 属性2)添加磁盘组和 IP 地址到服务组3)确保服务组可以在节点间正常切换,并且符合属性设置.ServiceGuard:(详细步骤由 HP 提供)1)配置 cluster1.1)创建 ascii 模板文件cmquerycl -v -C /etc/cmcluster/cluster.ascii -n ptaca2 -n ptaca31.2) 修改模板,反映环境的改变,确认 cluster 配置cmcheckconf -v -

13、C/etc/cmcluster/cluster.ascii1.3)应用配置文件,这将创建 cluster,自动在 cluster 中分发 cmclconfig 文件1.4)启动和停止 clustercmruncl -v -n ptaca2 -n ptaca3cmviewcl -vcmhalt -f -vcmruncl -n ptaca2 -n ptaca32)在第一个节点配置被称为 mq1 的 ServiceGuard package2.1) 创建和修改 mq1 的 packagecd /etc/cmclustermkdir mqlcmmakepkg -s mql.conf2.2)编辑 mql

14、.conf 文件2.3)进到新创建的 mql 目录,执行命令cmmakepkg -s tl2.4)停止 clustercmhaltcl -f v2.5)散发配置文件cmapplyconf -v -C /etc/cmcluster/cluster.ascii -P /etc/cmcluster/mql/mql.conf3)测试 cluster 和 package 启动3.1)停止所有队列管理器3.2)unmount 所有卷组中的逻辑卷3.3)deactivate 卷组3.4)启动 clustercmruncl3.5)检查 package 已经启动cmviewcl -v4)分配 package 的

15、动态 IP 地址4.1)暂停 packagecmhaltpkg mql4.2)编辑 tl 脚本,添加 package 的 ip 地址4.3)重新启动 packagecmrunpkg -v mql4.4)检查 package 已经启动,并且有客户端cmviewcl -v5)添加第 2 个节点到 cluster5.1)编辑 mq.conf 文件,添加下面一行NODE_NAME ptaca25.2)应用新配置cmapplyconf -v -C /etc/cmcluster/cluster.ascii -P mql.ascii5.3)暂停 clustercmhaltcl -f -v5.4) 重新启动

16、clustercmruncl -v6)测试 package 切换6.1)停止 mql packagecmhaltpkg mql6.2)在 machine ptaca3 上启动 mql package cmrunpkg -n ptaca2 mql6.3)在 ptaca3 上给 mqlpackage 的打开 package 转换.6.4)暂停 mql packagecmhaltpkg mql6.5)在机器 ptaca2 上启动 mql packagecmrunpkg -n ptaca2 mql6.6)在 ptaca2 上给 mql package 打开 package 转换cmmodpkg -e mql5.配置应用服务器或 agent在 HA cluster 环境的资源组中,队列管理器由应用服务器或agent 代表.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号