MQ for Linux 安装配置手册
- 格式:pdf
- 大小:233.69 KB
- 文档页数:6
一、引言1编写目的提供RedHat Linux Enterprise 5系统环境下的IBM WebSphere MQ6安装配置经验.。
2应用目的IBM WebSphere MQ介绍:它能够提供可靠的数据传递,消息队列(MQ)是一种应用程序对应用程序的通信方法。
应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接它们。
消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。
排队指的是应用程序通过队列来通信。
队列的使用除去了接收和发送应用程序同时执行的要求。
IBM WebSphere MQ提供强大、安全、稳定的消息传递主干。
它帮您搭建企业服务总线(ESB)的基础传输层几个重要概念:⏹队列管理器:队列管理器是MQ系统中最上层的一个概念,由它为我们提供基于队列的消息服务。
⏹消息:在MQ中,我们把应用程序交由MQ传输的数据定义为消息。
⏹队列:队列是消息的安全存放地,队列存储消息直到它被应用程序处理。
⏹通道:通道是MQ系统中队列管理器之间传递消息的管道。
3环境需求一台RedHat Linux Enterprise 5服务器一台RedHat Linux 9 客户机4实际配置环境因机器配件需求较多,所以用vmware6.03模拟实现配置。
机器配置:CPU:酷睿双核5670内存:600MB硬盘:RedHat Linux Enterprise 5服务器:8GBRedHat Linux 9 客户机:3GB两台机器各安装好对应操作系统其它配置略网络设置RedHat Linux Enterprise 5服务器IP:192.168.2.2RedHat Linux 9 客户机IP:192.168.2.1二、 服务端与客户端的安装过程1 安装配置RedHat Linux Enterprise 5服务器上的WebSphere MQ6服务端进入RedHat Linux Enterprise 5操作系统,并以root 用户登陆系统,放入IBM WebSphere MQ6 for Linux 服务端安装光盘:使用mount 命令挂载光驱,然后进入挂载目录,这里目录为:/mnt/cdrom下面开始进行服务端的安装,首先运行MQ 许可证程序:mqlicense.sh在挂载光驱目录下,输入:./ mqlicense.sh 回车注意:如果不能运行脚本,有下列异常:请将(右键单击可复制),这个补丁拷贝到硬盘,使用rpm –ivh包名进行安装,并将xorg-x 11-deprecated-libs-6[1][1].9.0-1.112.16.14asp.i386.rpmlibXp.so.6文件的路径加入/etc/ld.so.conf中,我的目录为/usr/X11R6/lib,该路径加入ld.so.conf文件,如下:保存,然后返回命令行,运行ldconfig命令,重新载入刚才修改的配置文件。
Websphere MQ 7.0.1 For Linux版安装下载文件将压缩包上传至指定目录,比如:/home/hqh/MQ7下面。
[root@localhost hqh]# cd MQ7[root@localhost MQ7]# lsCZ50AML.tar.gz修改权限[root@localhost MQ7]# chmod 755 CZ*解压[root@localhost MQ7]# tar zxvf CZ50AML.tar.gzcopyrightgsk7bas-7.0-4.23.i386.rpmlap/lap/jre/lap/jre/jre/。
省略READMEs/zh_TW.BIG5/READMEs/zh_TW.BIG5/readme[root@localhost MQ7]#同意license:[root@localhost MQ7]# ./mqlicense.sh -text_onlyLicensed Materials - Property of IBM5724-H72(C) Copyright IBM Corporation 1994, 2009 All rights reserved.US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.License has already been accepted: Proceed with install.License解决办法如果不是上面的提示,可用如下方法解决:在/tmp/ mq_license/ license/下面新建空文件status.datroot@localhost MQ]# cd /tmp[root@localhost tmp]# lsgconfd-root orbit-root scim-panel-socket:0-root hsperfdata_root scim-bridge-0.3.0.lockfile-0@localhost:0.0 scim-socket-frontend-root keyring-pDTCX5 scim-bridge-0.3.0.socket-0@localhost:0.0 ssh-YrKzyL3494mapping-root scim-helper-manager-socket-root virtual-root.m0Nmsa [root@localhost tmp]# mkdir mq_license[root@localhost tmp]# cd mq*[root@localhost mq_license]# mkdir license[root@localhost mq_license]# cd license[root@localhost license]# ls[root@localhost license]# vi status.dat[root@localhost license]# lsstatus.dat给所有rpm包赋予可执行权限:[root@localhost MQ7]# chmod 755 *.rpm再ls一下,变成绿色的了吧安装[root@localhost MQ7]# rpm -ivh MQSeriesRuntime-7.0.1-0.i386.rpmPreparing... ########################################### [100%] Creating group mqmCreating user mqm1:MQSeriesRuntime ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesSDK-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesSDK ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesServer-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesServer ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesJava-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesJava ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesSamples-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesSamples ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesClient-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesClient ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesMsg_Zh_CN-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesMsg_Zh_CN ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesMan-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesMan ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesTXClient-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesTXClient ########################################### [100%] [root@localhost MQ7]#检查安装完毕。
MQ 5.3 FOR LINUX安装与配置手册发布点:/论坛ID: 逸香书斋作者昵称:阿军个人空间:/members/junjun467/QQ: 394129237EMAIL: ylink@淘宝书店:逸香书斋 /逸香书斋 必属精品版权说明请在阅读本文档前阅读如下信息:该文档供各位系统管理员作为技术参考使用,严禁用作商业用途! 作者保持一切权力!文本排版说明正文文档的文字说明command 主机系统的操作命令argument 命令中的参数,根据实际情况进行替换# 代表命令执行的用户为root该文挡参考IBM信息中心安装配置文档,经过实际测试纪录。
MQ 5.3的信息中心里关于MQ5.3对于支持的Linux 的版本的需求是:1. Linux 内核,版本2.4;2. glibc ,版本 2.1.3 或更高版本;3. 需要Red Hat Package Manager (RPM )。
鉴于信息中心的时效性,MQ 5.3在发行时只对于Red Hat Linux V7.2进行了测试。
但是,对于最近Red Hat 公司推出的Red Hat Linux Enterprise AS 3.0,MQ 5.3在安装的时候会遇到一些问题。
另外,MQ 5.3 for Linux 本身是没有中文版的,因此在中文环境的Linux 中安装MQ 5.3也会遇到一些问题。
本文会给出在中文环境下的Red Hat Linux Enterprise AS 3.0的环境中安装MQ 5.3 Server 的一个补充文档,作为信息中心MQ 5.3在Linux 平台上安装的补充。
在文档中会给出多个安装过程中的常见错误以及解决的办法。
建议以下的所有内容先在测试环境中进行试验,以避免不必要的损失。
正文:第一步:检查MQ5.3安装于Linux 平台所必需的软硬件需求,这部分内容可以通过查询MQ 5.3 Linux 快速入门获得相关的信息,本文中就不再赘述了。
MQ客户端的安装及其配置1.1MQ客户端安装说明1.1.1安装前检查✓检查/opt文件系统剩余空间必须大于500M✓检查/usr文件系统剩余空间必须大于100M✓检查/var文件系统剩余空间必须大于1000M✓检查mqm用户和组1.1.2安装步骤第一步.使用root用户登录,并mount安装光盘#mount /dev/cdrom /cdrom第二步.执行授权程序#./mqlicense.sh -accept提示对授权是否接受,选择接受后结束。
第三步.按以下顺序安装rpm包#rpm –ivh MQSeriesRuntime-6.0.0-0.i386.rpm#rpm -ivh MQSeriesClient-6.0.0-0.i386.rpm#rpm -ivh MQSeriesMan-6.0.0-0.i386.rpm#rpm -ivh MQSeriesKeyMan-6.0.0-0.i386.rpm#rpm -ivh MQSeriesMsg_Zh_CN-6.0.0-0.i386.rpm#rpm -ivh MQSeriesMsg_es-6.0.0-0.i386.rpm#rpm -ivh MQSeriesSDK-6.0.0-0.i386.rpm#rpm -ivh MQSeriesSamples-6.0.0-0.i386.rpm1.1.3参数配置将以下内容添加到要使用MQ的用户的.bash_profile文件中去,先以root为例:其中:“xxxxxxxx.DPC”表示DPC定义好的服务器通道名称。
”xxxxxxxx”表示管辖行行号。
“TCP”表示通讯协议;“server-hostname”表示DPC定义的MQ服务器的IP地址。
“port”表示DPC定义的MQ服务器的端口号,一般为“1414”1.1.4安装测试使用root用户登录:发送测试报文:接收测试报文:其中:msg.to.xxxxxxxx 表示DPC定义的队列名称QMNBRCS:表示DPC定义的队列管理器的名称。
linux下activemq安装与配置什么是消息中间件(MQ)?1.1 为什么会需要消息队列(MQ)? 主要原因是由于在⾼并发环境下,由于来不及同步处理,请求往往会发⽣堵塞,⽐如说,⼤量的insert,update之类的请求同时到达MySQL,直接导致⽆数的⾏锁表锁,甚⾄最后请求会堆积过多,从⽽触发too many connections错误。
通过使⽤消息队列,我们可以异步处理请求,从⽽缓解系统的压⼒。
2.2 什么是消息中间件 消息中间件利⽤⾼效可靠的消息传递机制进⾏平台⽆关的数据交流,并基于数据通信来进⾏分布式系统的集成。
通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。
对于消息中间件,常见的⾓⾊⼤致也就有Producer(⽣产者)、Consumer(消费者) 常见的消息中间件产品: (1)ActiveMQ ActiveMQ 是Apache出品,最流⾏的,能⼒强劲的开源消息总线。
ActiveMQ 是⼀个完全⽀持JMS1.1和J2EE 1.4规范的 JMS Provider实现。
我们在本次课程中介绍 ActiveMQ的使⽤。
(2)RabbitMQ AMQP协议的领导实现,⽀持多种场景。
淘宝的MySQL集群内部有使⽤它进⾏通讯,OpenStack开源云平台的通信组件,最先在⾦融⾏业得到运⽤。
(3)ZeroMQ 史上最快的消息队列系统 (4)Kafka Apache下的⼀个⼦项⽬。
特点:⾼吞吐,在⼀台普通的服务器上既可以达到10W/s的吞吐速率;完全的分布式系统。
适合处理海量数据。
是Apache的⼀个开源项⽬,它是⼀个能⼒强劲的开源消息总线,也是⼀个中间件产品。
它是JMS的⼀个实现。
⾸先了解⼀下JMSJMS(Java Messaging Service)是Java平台上有关⾯向消息中间件的技术规范,它便于消息系统中的Java应⽤程序进⾏消息交换,并且通过提供标准的产⽣、发送、接收消息的接⼝简化企业应⽤的开发。
Websphere MQ 7.0.1 For Linux版安装下载文件将压缩包上传至指定目录,比如:/home/hqh/MQ7下面。
[root@localhost hqh]# cd MQ7[root@localhost MQ7]# lsCZ50AML.tar.gz修改权限[root@localhost MQ7]# chmod 755 CZ*解压[root@localhost MQ7]# tar zxvf CZ50AML.tar.gzcopyrightgsk7bas-7.0-4.23.i386.rpmlap/lap/jre/lap/jre/jre/。
省略READMEs/zh_TW.BIG5/READMEs/zh_TW.BIG5/readme[root@localhost MQ7]#同意license:[root@localhost MQ7]# ./mqlicense.sh -text_onlyLicensed Materials - Property of IBM5724-H72(C) Copyright IBM Corporation 1994, 2009 All rights reserved.US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.License has already been accepted: Proceed with install.License解决办法如果不是上面的提示,可用如下方法解决:在/tmp/ mq_license/ license/下面新建空文件status.datroot@localhost MQ]# cd /tmp[root@localhost tmp]# lsgconfd-root orbit-root scim-panel-socket:0-root hsperfdata_root scim-bridge-0.3.0.lockfile-0@localhost:0.0 scim-socket-frontend-root keyring-pDTCX5 scim-bridge-0.3.0.socket-0@localhost:0.0 ssh-YrKzyL3494mapping-root scim-helper-manager-socket-root virtual-root.m0Nmsa [root@localhost tmp]# mkdir mq_license[root@localhost tmp]# cd mq*[root@localhost mq_license]# mkdir license[root@localhost mq_license]# cd license[root@localhost license]# ls[root@localhost license]# vi status.dat[root@localhost license]# lsstatus.dat给所有rpm包赋予可执行权限:[root@localhost MQ7]# chmod 755 *.rpm再ls一下,变成绿色的了吧安装[root@localhost MQ7]# rpm -ivh MQSeriesRuntime-7.0.1-0.i386.rpmPreparing... ########################################### [100%] Creating group mqmCreating user mqm1:MQSeriesRuntime ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesSDK-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesSDK ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesServer-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesServer ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesJava-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesJava ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesSamples-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesSamples ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesClient-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesClient ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesMsg_Zh_CN-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesMsg_Zh_CN ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesMan-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesMan ########################################### [100%] [root@localhost MQ7]# rpm -ivh MQSeriesTXClient-7.0.1-0.i386.rpmPreparing... ########################################### [100%] 1:MQSeriesTXClient ########################################### [100%] [root@localhost MQ7]#检查安装完毕。
MQ6.0的安装安装的MQ软件包为WMQv600Trial-x86_linux_2.tar.gz.将WMQv600Trial-x86_linux_2.tar.gz解压至某一目录。
(1)执行接受许可脚本: ./mqlicense.sh –accept 这个脚本是要安装WebSphere MQ 软件包的MQ许可程序. 至关重要,这个脚本没有正确配置的话将导致MQ安装失败.–accept 是不启动图形直接接受许可。
(2) 安装WebSphere MQ for Linux 服务器:[root@localhost mq]# rpm-ivh MQSeriesRuntime-6.0.0-0.i386.rpm[root@localhost mq]# rpm-ivh MQSeriesSDK-6.0.0-0.i386.rpm[root@localhost mq]# rpm-ivh MQSeriesServer-6.0.0-0.i386.rpm注:安装完成后,相关文件会被自动安装在/opt/mqm下,在安装MQSeriesRuntime-6.0.0-0.i386.rpm时候,安装程序为系统自动创建了一个mqm用户和mqm组,安装完毕后,需要使用该用户来进行MQ的配置。
(3) 安装WebSphere MQ for Linux 客户端:[root@localhost mq]# rpm-ivh MQSeriesClient-6.0.0-0.i386.rpm(4) 安装WebSphere MQ 样本程序(其中包括amqsput、amqsget、amqsgbr和amqsbcg等)[root@localhost mq]# rpm-ivh MQSeriesSamples-6.0.0-0.i386.rpm样本程序安装在/opt/mqm/samp/bin 中。
(5)安装MQ其他软件包[root@localhost mq]# rpm-ivh MQSeriesMan-6.0.0-0.i386.rpm[root@localhost mq]# rpm-ivh MQSeriesJava-6.0.0-0.i386.rpm[root@localhost mq]# rpm-ivh IBMJava2-SDK-1.4.2-0.0.i386.rpm上面最后一步安装的是JDK运行环境,如果已经有相同或更高版本的JDK,不需要再安装。
MQ安装⼿册MQ安装⼿册MQ安装⼿册与验证步骤 11.配置详细说明 (3)1.1硬件和操作系统要求配置: (3) 1.2磁盘空间要求 (3)1.3软件介质要求 (3)1.4软件环境要求 (3)1.4.1⽤户和组 (3)2.MQ产品安装 (4)2.1A机 (4)2.1.1将vg挂在A机 (4)2.1.2mount⽂件系统 (4)2.1.3安装源码 (4)2.1.4umount⽂件系统 (4)2.1.5卸载vg (4)2.2B机 (5)2.2.1将vg挂在B机 (5)2.2.2mount⽂件系统 (5)2.2.3安装源码 (5)3.MQ产品验证步骤 (6)3.1验证说明 (6)3.2验证内容: (6)3.3验证步骤 (6)3.3.1在B机创建队列管理器 (6) 3.3.2队列管理器在B机启动 (6) 3.3.3在B机执⾏MQSC命令 (7) 3.3.4在B机收发消息测试 (7) 3.3.5队列管理器在B机停⽌ (8) 3.3.6队列管理器在A机启动 (8) 3.3.7在A机执⾏MQSC命令 (8) 3.3.8A机收发消息测试 (8)3.3.9队列管理器在A机停⽌ (9)1.2 磁盘空间要求1.3 软件介质要求1.4 软件环境要求1.4.1 ⽤户和组2. MQ产品安装2.1 A机2.1.1 将vg挂在A机varyonvg cicsvg2.1.2 mount⽂件系统mount /var/mqmmount /var/mqm/log2.1.3 安装源码smitty installp选择安装但码源路径* INPUT device / directory for software [/cdrom]在SOFTWARE to install⾏按F4选择软件安装包> mqm.Client.Bnd ALL > mqm.Server.Bnd ALL > mqm.base ALL > mqm.client ALL > mqm.man ALL > mqm.server ALL 2.1.4 安装补丁2.1.5 umount⽂件系统umount /var/mqm/logumount /var/mqm2.1.6 卸载vgvaryoffvg cicsvg2.2 B机2.2.1 将vg挂在B机varyonvg cicsvg2.2.2 mount⽂件系统mount /var/mqmmount /var/mqm/log2.2.3 安装源码smitty install_latest选择安装但码源路径* INPUT device / directory for software [/cdrom]在SOFTWARE to install⾏按F4选择软件安装包> mqm.Client.Bnd ALL > mqm.Server.Bnd ALL > mqm.base ALL > mqm.client ALL > mqm.man ALL > mqm.server ALL2.2.4 安装补丁将补丁展开smitty udpate_all3.MQ产品验证步骤3.1 验证说明依本标准第三部分“验证步骤”操作执⾏,确认 MQ产品安装是否正确。
Linux系统RabbitMQ⾼可⽤集群安装部署⽂档RabbitMQ⾼可⽤集群安装部署⽂档架构图1)RabbitMQ集群元数据的同步RabbitMQ集群会始终同步四种类型的内部元数据(类似索引):a.队列元数据:队列名称和它的属性;b.交换器元数据:交换器名称、类型和属性;c.绑定元数据:⼀张简单的表格展⽰了如何将消息路由到队列;d.vhost元数据:为vhost内的队列、交换器和绑定提供命名空间和安全属性;2)集群配置⽅式cluster:不⽀持跨⽹段,⽤于同⼀个⽹段内的局域⽹;可以随意的动态增加或者减少;节点之间需要运⾏相同版本的 RabbitMQ 和 Erlang。
节点类型RAM node:内存节点将所有的队列、交换机、绑定、⽤户、权限和 vhost 的元数据定义存储在内存中,好处是可以使得像交换机和队列声明等操作更加的快速。
Disk node:将元数据存储在磁盘中,单节点系统只允许磁盘类型的节点,防⽌重启 RabbitMQ 的时候,丢失系统的配置信息。
解决⽅案:设置两个磁盘节点,⾄少有⼀个是可⽤的,可以保存元数据的更改。
Erlang Cookieerlang Cookie 是保证不同节点可以相互通信的密钥,要保证集群中的不同节点相互通信必须共享相同的 Erlang Cookie3)搭建RabbitMQ集群所需要安装的组件a.Jdk 1.8b.Erlang运⾏时环境c.RabbitMq的Server组件1、安装yum源⽂件2、安装Erlang# yum -y install erlang3、配置java环境 /etc/profileJAVA_HOME=/usr/local/java/jdk1.8.0_151PATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar4、安装配置rabbitmq# tar -xf rabbitmq-server-generic-unix-3.6.15.tar -C /usr/local/# mv /usr/local/rabbitmq_server-3.6.15/ /usr/local/rabbitmq5、配置RabbitMQ环境变量/etc/profileRABBITMQ_HOME=/usr/local/rabbitmqPATH=$PATH:$ERL_HOME/bin:/usr/local/rabbitmq/sbin# source /etc/profile6、修改主机配置⽂件/etc/hosts192.168.2.208 rabbitmq-node1192.168.2.41 rabbitmq-node2192.168.2.40 rabbitmq-node3各个主机修改配置⽂件保持⼀致# /root/.erlang.cookie7、后台启动rabbitmq# /usr/local/rabbitmq/sbin/rabbitmq-server -detached添加⽤户# rabbitmqctl add_user admin admin给⽤户授权# rabbitmqctl set_user_tags admin administrator# rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"启⽤插件,可以使⽤rabbitmq管理界⾯# rabbitmq-plugins enable rabbitmq_management查看⽤户列表# rabbitmqctl list_users查看节点状态# rabbitmqctl status查看集群状态# rabbitmqctl cluster_status查看插件# rabbitmq-plugins list添加防⽕墙规则/etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 28017 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 15672 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 5672 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 25672 -j ACCEPT8、添加集群node节点,从节点执⾏(⽬前配置2个节点)# rabbitmqctl stop_app# rabbitmqctl join_cluster --ram rabbit@rabbitmq-node2或者# rabbitmqctl join_cluster rabbit@rabbitmq-node2# rabbitmqctl change_cluster_node_type ram启动节点#rabbitmqctl start_app9、删除集群node 节点删除1. rabbitmq-server -detached2. rabbitmqctl stop_app3. rabbitmqctl reset4. rabbitmqctl start_app设置镜像队列策略在web界⾯,登陆后,点击“Admin--Virtual Hosts(页⾯右侧)”,在打开的页⾯上的下⽅的“Add a new virtual host”处增加⼀个虚拟主机,同时给⽤户“admin”和“guest”均加上权限1、2、# rabbitmqctl set_policy -p hasystem ha-allqueue "^" '{"ha-mode":"all"}' -n rabbit"hasystem" vhost名称, "^"匹配所有的队列, ha-allqueue 策略名称为ha-all, '{"ha-mode":"all"}' 策略模式为 all 即复制到所有节点,包含新增节点,则此时镜像队列设置成功.rabbitmqctl set_policy [-p Vhost] Name Pattern Definition [Priority]-p Vhost:可选参数,针对指定vhost下的queue进⾏设置Name: policy的名称Pattern: queue的匹配模式(正则表达式)Definition:镜像定义,包括三个部分ha-mode, ha-params, ha-sync-modeha-mode:指明镜像队列的模式,有效值为 all/exactly/nodesall:表⽰在集群中所有的节点上进⾏镜像exactly:表⽰在指定个数的节点上进⾏镜像,节点的个数由ha-params指定nodes:表⽰在指定的节点上进⾏镜像,节点名称通过ha-params指定ha-params:ha-mode模式需要⽤到的参数ha-sync-mode:进⾏队列中消息的同步⽅式,有效值为automatic和manualpriority:可选参数,policy的优先级注以上集群配置完成⾼可⽤HA配置Haproxy 负载均衡,keepalived实现健康检查HA服务安装配置解压⽂件# tar -zxf haproxy-1.8.17.tar.gz查看内核版本# uname –r# yum -y install gcc gcc-c++ make切换到解压⽬录执⾏安装# make TARGET=3100 PREFIX=/usr/local/haproxy # make install PREFIX=/usr/local/haproxy创建配置⽂件相关⽬录# mkdir /usr/local/haproxy/conf# mkdir /var/lib/haproxy/# touch /usr/local/haproxy/haproxy.cfg# groupadd haproxy# useradd haproxy -g haproxy# chown -R haproxy.haproxy /usr/local/haproxy# chown -R haproxy.haproxy /var/lib/haproxy配置⽂件globallog 127.0.0.1 local2chroot /var/lib/haproxypidfile /var/run/haproxy.pidmaxconn 4000user haproxygroup haproxydaemon# turn on stats unix socketstats socket /var/lib/haproxy/stats#---------------------------------------------------------------------defaultsmode httplog globaloption httplogoption dontlognulloption http-server-closeoption redispatchretries 3timeout http-request 10stimeout queue 1mtimeout connect 10stimeout client 1mtimeout server 1mtimeout http-keep-alive 10stimeout check 10smaxconn 3000#监控MQ管理平台listen rabbitmq_adminbind 0.0.0.0:8300 server rabbitmq-node1 192.168.2.208:15672 server rabbitmq-node2 192.168.2.41:15672 server rabbitmq-node3 192.168.2.40:15672#rabbitmq_cluster监控代理listen rabbitmq_local_clusterbind 0.0.0.0:8200#配置TCP模式mode tcpoption tcplog#简单的轮询balance roundrobin#rabbitmq集群节点配置 server rabbitmq-node1 192.168.2.208:5672 check inter 5000 rise 2 fall 2 server rabbitmq-node2 192.168.2.41:5672 check inter 5000 rise 2 fall 2 server rabbitmq-node3 192.168.2.40:5672 check inter 5000 rise 2 fall 2 #配置haproxy web监控,查看统计信息listen private_monitoringbind 0.0.0.0:8100mode httpoption httplogstats enablestats uri /statsstats refresh 30s#添加⽤户名密码认证stats auth admin:admin启动haproxy服务# /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg#Keepalived 源码安装软件包路径 /usr/local/src安装路径 /usr/local/keepalived配置⽂件/etc/keepalived/keeplived.conf# tar -zxf keepalived-2.0.10.tar.gz#安装依赖包# yum -y install openssl-devel libnl libnl-devel libnfnetlink-devel# ./configure --prefix=/usr/local/keepalived && make && make install创建keepalived配置⽂件⽬录#mkdir /etc/keepalived拷贝配置⽂件到/etc/keepalived⽬录下# cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/复制keepalived脚本到/etc/init.d/ ⽬录# cp /usr/local/src/keepalived-2.0.10/keepalived/etc/init.d/keepalived /etc/init.d/拷贝keepalived脚本到/etc/sysconfig/ ⽬录# cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/建⽴软连接# ln -s /usr/local/keepalived/sbin/keepalived /sbin/添加到开机启动# chkconfig keepalived on查看服务状况# systemctl status keepalivedKeepalived启动# systemctl start keepalivedmaster 配置⽂件#Master :global_defs {notification_email {134********m@}notification_email_from 134********m@smtp_server 127.0.0.1smtp_connect_timeout 30router_id NGINX_DEVEL}vrrp_script chk_haproxy {script "/usr/local/keepalived/check_haproxy.sh"interval 2weight 2fall 3rise 2}vrrp_instance haproxy_1 {state MASTERinterface ens33virtual_router_id 104priority 150advert_int 1mcast_src_ip 192.168.2.41authentication {auth_type PASSauth_pass 1111}track_interface {ens33}track_script {check_haproxy.sh}virtual_ipaddress {192.168.33.110}}#virtual_server 192.168.2.110 80 {# delay_loop 6 # 设置健康检查时间,单位是秒# lb_algo wrr # 设置负载调度的算法为wlc# lb_kind DR # 设置LVS实现负载的机制,有NAT、TUN、DR三个模式# nat_mask 255.255.255.0# persistence_timeout 0# protocol TCP# real_server 192.168.220.128 80 { # 指定real server1的IP地址# weight 3 # 配置节点权值,数字越⼤权重越⾼#TCP_CHECK {# connect_timeout 10# nb_get_retry 3# delay_before_retry 3# connect_port 80# }# }# }}#Slave :global_defs {notification_email {134********m@}notification_email_from 134********m@smtp_server 127.0.0.1smtp_connect_timeout 30router_id NGINX_DEVEL}vrrp_script chk_haproxy {script "/usr/local/keepalived/check_haproxy.sh"interval 2weight 2fall 3rise 2}vrrp_instance haproxy_2 {state SLAVEinterface ens33virtual_router_id 104priority 150advert_int 1mcast_src_ip 192.168.2.208authentication {auth_type PASSauth_pass 1111}track_interface {ens33}track_script {check_haproxy.sh}virtual_ipaddress {192.168.2.246}}#virtual_server 192.168.2.110 80 {# delay_loop 6 # 设置健康检查时间,单位是秒# lb_algo wrr # 设置负载调度的算法为wlc# lb_kind DR # 设置LVS实现负载的机制,有NAT、TUN、DR三个模式# nat_mask 255.255.255.0# persistence_timeout 0# protocol TCP# real_server 192.168.220.128 80 { # 指定real server1的IP地址# weight 3 # 配置节点权值,数字越⼤权重越⾼#TCP_CHECK {# connect_timeout 10# nb_get_retry 3# delay_before_retry 3# connect_port 80# }# }# }}haproxy检测#!/bin/bashHaproxyStatus=`ps -C haproxy --no-header | wc -l`if [ $HaproxyStatus-eq 0 ];then/etc/init.d/haproxy startsleep 3if [ `ps -C haproxy --no-header | wc -l ` -eq 0 ];then/etc/init.d/keepalived stopfifi。
第一步:安装MQ这里没什么好说的,一步一步往下走就行,要注意的是软件需求那里,要把没安装的都安装上。
第二步:配置第一个MQ队列管理器这里需要:1.新建MQ队列管理器QM_TIPS_2027100000_01,用来转发报文给远程队列,并相应远程远程队列返回的报文。
2.新建6个队列,其实测试过程中只用到了实时的队列,所以只要建立3个实时队列也就行了,但我这边后期会用到异步的报文发送,所以就多建了3个批量的队列,建立队列的时候需要配置一些参数,我已经做了截图,同时有解释,这里就不赘述了。
批量接收队列:PBC.202710000010.BA TCH.OUT,此队列完成异步报文接收。
实时接收队列:PBC.202710000010.ONLINE.OUT,此队列完成实时报文发送。
批量传输队列:PBC.2600.BATCH.TRAN,此队列用来进行异步报文的数据传输。
实时传输队列:PBC.2600.ONLINE.TRAN,此队列用来进行实时报文的数据传输。
批量发送队列:PBC.EXT.BA TCH.IN,此队列用来发送异步报文。
实时发送队列:PBC.EXT.ONLINE.IN,此队列用来发送实时报文。
3.建立5个通道,和传输队列配合,这里需要对发送方通道配置上边定义的传输队列本地批量发送方通道:202270000010.2600.B1本地实时发送方通道:202710000010.2600.O1本地批量接收方通道:2600.202710000010.B1本地实时接收方通道:2600.202710000010.O1服务器链接的通道:SVRCONN,用来相应java对MQ的链接的通道。
4.建立监听器,监听java连接MQ的端口,其实建立队里管理器的时候就会默认一个监听器,这里为了命名的规范,重新配置了一个TCP监听器:LSR.2027100000,正常操作此步骤也可以忽略。
下边一个一个建立。
新建MQ队列管理器QM_TIPS_2027100000_01行如下命令,执行完之后还需要重启队列管理器以更新字符集信息。
MQ安装文档安装1、在Linux /opt和/var文件夹创建新文件夹,并命名为mqm2、插入MQ for linux 安装光盘,并将其拷贝到/opt/temp文件夹下3、拷贝完成后,将temp文件夹权限修改为7754、进入/opt/temp文件夹,运行./mqlicense.sh脚本,运行成功后,开始正式安装5、Rpm安装MQ安装所需的组件(可一次安装,也可分别安装)。
6、运行rpm –qa|grep MQ命令,显示之前安装的所有安装组件,表示已安装成功。
通过集群实现MQ负载均衡集群的基本概念首先我们先来了解一下群集的基本概念。
就MQ的点对点的通讯模式而言,我们需要创建相应的对象才能实现两个队列管理器之间的通讯,例如,在发送方队列管理器上,我们要创建一个远程队列(指向远程的目的队列),一个传输队列和一个发送类型的通道;在接收方队列管理器上,我们要创建一个本地队列和一个接收类型的通道。
这样,当我们要实现一个网络当中的N个队列管理器之间的两两双向通讯时,我们需要配置的MQ对象的个数就会大大增长,比如,我们需要在每个发送方队列管理器上建立N个远程队列,N个传输队列以及N-1个发送类型的通道,这将组成一个复杂的网状结构(如下图所示)采用群集的技术之后,可以大大简化系统配置,原因在于位于同一个群集当中的若干队列管理器之间互相通讯时,不需要在每一个队列管理器上创建消息通道、远程队列管理器以及与通道相关的传输队列的定义,相反,我们只需要为在每一个队列器上创建如下两个群集通道(MQ的通道分为三种类型,即服务器与服务器之间的消息通道,客户端与服务器之间的MQI通道,以及用于群集内部通讯的群集通道):一个群集接收(cluster-receiver)通道,用来从群集中其他队列管理器接收应用消息和有关群集配置更新的消息;一个群集发送(cluster-sender)通道,用来向群集发送应用消息和有关群集配置更新的消息。
Linux平台IBM Websphere MQ服务的安装和配置A.安装前准备工作获取WMQ7.0(Websphere MQ简称WMQ)的Linux 64bit的安装文件(文件名称以.tar.gz 为后缀),并解压到Linux服务器目录,示例如下:WMQ_ 7.0.1_TRIAL_LNX_X86_64_ML.tar.gz注:下列步骤描述的是WMQ7.0试用版的安装,正式版的安装大同小异B.安装Websphere MQ1.创建MQ的安装目录,shell命令如下:mkdir /mqm # for product code2.创建MQ用户和用户组,shell命令如下:groupadd mqm #创建用户组useradd -d /home/mqm -g mqm -G mqm mqm #创建用户并添加到组passwd mqm #修改用户密码注:mqm用户必须修改3.调整系统参数查看系统共享内存最大值:cat /proc/sys/kernel/shmmax若值小于134217728 (256M),则修改最大共享内存修改最大共享内存:编辑/etc/sysctl.conf,在文件末尾加入以下行(若kernel.shmmax项已存在,则直接修改该项的值即可):kernel.shmmax=134217728查看最大文件描述符限制:cat /proc/sys/fs/file-max若值小于32768,则修改最大文件描述符限制修改最大文件描述符限制:编辑/etc/sysctl.conf,在文件末尾加入以下行(若fs.file-max项已存在,则直接修改该项的值即可):fs.file-max=32768若上述两项参数有修改,则需要重启Linux系统才能生效。
4.获取WebSphere MQ授权切换到WMQ7.0安装文件解压后的目录,获取WebSphere MQ授权,shell命令如下:./mqlicense.sh -text_only阅读全文后,选择1接受授权。
Linux上MQ6的安装配置recis1服务器和recis2服务器操作完全相同:1 首先mq-install-files这个文件夹拷贝到recis1服务器和recis2服务器上。
比如我拷贝到:/opt/mq-install-files如果在安装过程需要一些补丁程序,你只要按照提示去下载这些文件然后再安装它们。
不过我已提供1个文件mozilla-1.7.3-18.EL4.i386.rpm 。
2 打开一个新窗口,以root用户执行cd命令进入到文件所在的目录:cd /optchmod –R 777 mq-install-filescd mq-install-files然后按照顺序执行命令。
rpm -ivh mozilla-1.7.3-18.EL4.i386.rpmmqlicense.sh -acceptrpm -vih MQSeriesRuntime-6.0.0-0.i386.rpmrpm -vih MQSeriesServer-6.0.0-0.i386.rpmrpm -vih MQSeriesJava-6.0.0-0.i386.rpmrpm -vih MQSeriesIES30-6.0.0-0.i386.rpmrpm -vih MQSeriesConfig-6.0.0-0.i386.rpmrpm -vih MQSeriesSDK-6.0.0-0.i386.rpmrpm -vih MQSeriesClient-6.0.0-0.i386.rpmrpm -vih MQSeriesTXClient-6.0.0-0.i386.rpm#rpm -vih MQSeriesKeyMan-6.0.0-0.i386.rpmrpm -vih MQSeriesMan-6.0.0-0.i386.rpmrpm -vih MQSeriesSamples-6.0.0-0.i386.rpmrpm -vih MQSeriesFTA-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_de-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_es-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_fr-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_it-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_ja-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_ko-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_pt-6.0.0-0.i386.rpm#rpm -vih MQSeriesMsg_Zh_TW-6.0.0-0.i386.rpmrpm -vih MQSeriesMsg_Zh_CN-6.0.0-0.i386.rpm3 配置环境变量:在/etc/profile文件中加入如下信息,然后重新启动系统:# mqexport CLASSPATH=/opt/mqm/java/lib:$CLASSPATHexport PATH=/opt/mqm/java/lib:$PATHexport LD_LIBRARY_PATH=/opt/mqm/java/lib:$LD_LIBRARY_PATH4 配置用户权限。
消息发送涉及到的队列及通道示意图:定义发送方为A,接收方为B,下面是建立A向B发送消息的单向配置。
发送方A的配置1.在发送方A创建队列管理器QM_A:[mqm@localhost ~]$ crtmqm -q QM_A成功后会有如下提示:There are 90 days left in the trial period for this copy of WebSphere MQ.WebSphere MQ queue manager created.Creating or replacing default objects for QM_A.Default objects statistics : 40 created. 0 replaced. 0 failed.Completing setup.2.启动QM_A[mqm@localhost ~]$ strmqm -q QM_A成功后会有如下提示:There are 90 days left in the trial period for this copy of WebSphere MQ.WebSphere MQ queue manager 'QM_A' starting.5 log records accessed on queue manager 'QM_A' during the log replay phase.Log replay for queue manager 'QM_A' complete.Transaction manager state recovered for queue manager 'QM_A'.WebSphere MQ queue manager 'QM_A' started.3.在发送方A创建A的本地队列Q_A:[mqm@localhost ~]$ runmqsc QM_A //进入QM_A的控制台成功后会有如下提示:5724-H72 (C) Copyright IBM Corp. 1994, 2005. ALL RIGHTS RESERVED.Starting MQSC for queue manager QM_A.然后在空白处开始输入命令(下面创建队列及通道均在控制台中进行):define ql(Q_A)成功后有如下提示:AMQ8006: WebSphere MQ queue created.4.在发送方A创建用于和B通信的传输队列QT_B:define ql(QT_B) usage(XMITQ)成功后有如下提示:AMQ8006: WebSphere MQ queue created.5.在发送方A创建映射接收方B的远程队列R_B:define qr(R_B) rqmname(QM_B) rname(Q_B) xmitq(QT_B) Replace// QM_B是B的队列管理器名;Q_B是B的本地队列名;QT_B是用于和B通信的传输队列名。
linux安装rabbitMQ详细教程经过第⼀次的安装失败,第⼆次总算是成功了,这⾥总结⼀下。
第⼀步:下载版本对应的rpm安装包2. 下载RabbitMQ安装包,这⾥使⽤的是rpm, 当然了也可以下载源码进⾏编译安装。
3. 下载Socat安装包 rabbitmq安装依赖于socat,所以需要下载socat。
第⼆步:安装前的准备⼯作,因为Erlang安装需要⼏个类库和环境。
执⾏下⾯命 yum -y install ncurses-devel yum -y install openssl-devel yum -y install unixODBC-devel yum -y install gcc-c++第三步:按照以下顺序安装 ⼀定按照以下顺序安装: ① rpm -ivh erlang-18.3-1.el6.x86_64.rpm ② rpm -ivh socat-1.7.3.2-1.el6.lux.x86_64.rpm ③ rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm第四步:配置rabbitmq: vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app第五步:安装管理 web页⾯访问插件。
rabbitmq-plugins enable rabbitmq_management第六步:启动RabbitMQ ① cd /usr/lib/rabbitmq/bin ② ./rabbitmq-server start如果不开放5672端⼝,那么在IDEA中启动项⽬就⽆法连接rabbitMQ。
本⼈就是因为忘记了5672端⼝在IDEA中⼀直连接不上浪费了许久时间。
另外记得给IDEA中配置的rabbitmq的⽤户开放权限否则也是⽆法连接。
另外:当能访问web页⾯时,可以页⾯直接添加⽤户添加权限,就不⽤在通过命令进⾏添加了。
Websphere MQ 安装1 软件包本安装包使用于Linux 32位操作系统的安装,使用的命令都在root用户下使用。
2 用户创建和系统参数修改2.1 创建mqm用户组# groupadd -g 405 mqm# groupadd –g 801 umts2.2 创建mqm用户# useradd –d /var/mqm –g mqm –G mqm, umts –u 405 mqm# passwd mqm# useradd –d /umts –g umts –G umts,mqm –u 405 mqm# passwd umts2.3 调整系统参数(视需要而定)修改最大共享内存,命令如下:# cat /proc/sys/kernel/shmmax# echo 268435456 >/proc/sys/kernel/shmmax修改最大文件句柄,命令如下:# cat /proc/sys/fs/file-max# echo 32768 >/proc/sys/fs/file-max如果自己系统比这个大,没必要改。
3 MQ安装3.1 检查安装包使用ftp工具或其他工具把两个安装包传到所要安装的系统中:➢WebSphereMQ_v6.0_Linux.tar➢MQ_6.0.2.7_Update_Linux.tar在两个安装包所在文件夹目录下,使用命令# ll3.2 解压安装包在两个安装包所在文件夹目录下,使用tar命令进行解压# tar –xvf WebSphereMQ_v6.0_Linux.tar# tar –xvf MQ_6.0.2.7_Update_Linux.ta产生两个文件夹:WebSphereMQ_v6.0_Linux和MQ_6.0.2.7_Update_Linux3.3 安装MQ3.3.1 安装基本包进入WebSphereMQ_v6.0_Linux文件夹# cd WebSphereMQ_v6.0_Linux# tar –xzvf other.tar.gz# chmod +x *3.3.1.1 获取授权获得WebSphere MQ授权,命令如下:#./mqlicense.sh -text_only阅读全文后,选择2 English;按两次回车键后,选择1接受授权。
MQ在Linux下的安装与卸载MQ for linux安装与卸载分类:中间件(MQ,weblogic)一、安装步骤:1. 用root帐号登录系统2. MQ安装程序需将代码安装到目录/opt/mqm下,将数据保存到目录/var/mqm下,需确保相关目录下有足够的磁盘空间3. 创建名称为“mqm”的组和用户,并且将用户的目录指定为/var/mqm //建立用户组mqm,注意:组名必须是mqm groupadd mqm//建立属于组mqm的用户mqm,注意:用户名必须是mqmuseradd -d /var/mqm -g mqm mqm//修改用户mqm的密码passwd mqm4. 解压WMQv600Trial-x86_linux_2.tar.gz//解压文件tar xvzf WMQv600Trial-x86_linux_2.tar.gz5. 安装在安装文件解压目录下//接受MQ license./mqlicense.sh –accept//安装rpm -ivh MQSeriesRuntime-6.0.0-0.i386.rpmMQSeriesServer-6.0.0-0.i386.rpm MQSeriesSamples-6.0.0-0.i386.rpm二、安装完毕以后,验证安装是否成功,按顺序执行以下步骤:1. 用mqm帐号登录系统2. 创建测试用队列管理器和队列crtmqm -q venus.queue.manager ##创建缺省队列strmqm ##后面不跟队列管理器的名称则启动缺省队列管理器runmqsc ##后面不跟队列管理器的名称则进入缺省队列管理器的控制台define qlocal (orange.queue)end3. 用测试程序向队列orange.queue发送消息//切换到/opt/mqm/samp/bin目录下./amqsput ORANGE.QUEUE ##后面不跟队列管理器的名称则表示针对缺省队列管理器中的队列操作//屏幕输出“Sample AMQSPUT0 start target queue is ORANGE.QUEUE”,手工输入测试消息:this is a test,//输入完毕,连续按两次回车键,消息输入完毕。
实验MQ安装实验目标通过本实验了解在Windows与Linux平台上进行MQ安装,并学习如何验证.本实验所需安装包:WS_MQ_V7.5.0.2_TRIAL_FOR_WINDOWS_ML.zipMQ_7.5.0.2_TRIAL_LNX_ON_X86_32_ML.tar.gz通过本实验你将掌握:安装Websphere MQ v7.5.0.2创建队列管理器与队列使用样例程序验证安装实验步骤:第1步:在Windows上安装Websphere MQ v7.5.0.2 1.将MQ安装包解压到临时目录中,点击安装可执行文件Setup.exe,开始安装过程。
首先,会看到安装的欢迎界面,另外还有软件要求、网络配置及安装界面。
这里,重点介绍一下网络配置,如图1 所示。
图12.在网络设置中,需要根据本机所在的环境,做出相应的选择。
如果机器工作在域中,则需要提供域账户。
并且,在以后更改域账户密码的同时,也要在MQ 启动时做相应改动。
在本例中,使用非域账户进行安装。
切换到MQ 安装页面,选择安装语言,点击“启动Websphere MQ安装程序”,开始安装。
如图2 所示。
图23.在接受MQ 的安装许可协议后,进入安装类型的选择,如图3 所示。
一般来说,对于初学者,建议选择典型安装。
对那些非常了解MQ,并清楚自己需求的用户,可以选择其它两个选项。
在本例中,选择定制安装。
图34.Websphere MQ默认目录:C:\Program Files\IBM\WebSphere MQ,从MQV7.0.1.6,开始支持多版本运行。
如果用户想安装到其它位置,点击“更改”。
本实验采用默认路径,如图4。
图45.Websphere MQ使用的数据目录和日志目录,这里也使用默认值,如图5,图6。
图5图66.选择要安装的组件,本实验中,将安装除高级消息安全性以外的所有组件。
如图7。
图77.点击下一步开始安装图88.在安装完成后,会弹出配置向导。
MQ 5.3 FOR LINUX安装与配置手册发布点:/论坛ID: 逸香书斋作者昵称:阿军个人空间:/members/junjun467/QQ: 394129237EMAIL: ylink@淘宝书店:逸香书斋 /逸香书斋 必属精品版权说明请在阅读本文档前阅读如下信息:该文档供各位系统管理员作为技术参考使用,严禁用作商业用途! 作者保持一切权力!文本排版说明正文文档的文字说明command 主机系统的操作命令argument 命令中的参数,根据实际情况进行替换# 代表命令执行的用户为root该文挡参考IBM信息中心安装配置文档,经过实际测试纪录。
MQ 5.3的信息中心里关于MQ5.3对于支持的Linux 的版本的需求是:1. Linux 内核,版本2.4;2. glibc ,版本 2.1.3 或更高版本;3. 需要Red Hat Package Manager (RPM )。
鉴于信息中心的时效性,MQ 5.3在发行时只对于Red Hat Linux V7.2进行了测试。
但是,对于最近Red Hat 公司推出的Red Hat Linux Enterprise AS 3.0,MQ 5.3在安装的时候会遇到一些问题。
另外,MQ 5.3 for Linux 本身是没有中文版的,因此在中文环境的Linux 中安装MQ 5.3也会遇到一些问题。
本文会给出在中文环境下的Red Hat Linux Enterprise AS 3.0的环境中安装MQ 5.3 Server 的一个补充文档,作为信息中心MQ 5.3在Linux 平台上安装的补充。
在文档中会给出多个安装过程中的常见错误以及解决的办法。
建议以下的所有内容先在测试环境中进行试验,以避免不必要的损失。
正文:第一步:检查MQ5.3安装于Linux 平台所必需的软硬件需求,这部分内容可以通过查询MQ 5.3 Linux 快速入门获得相关的信息,本文中就不再赘述了。
链接地址如下: /epubs/html/amq1ac03/amq1ac0308.htm#HDRAMQ35A0第二步:建立必要的文件系统,这部分内容可以通过查询MQ 5.3 Linux 快速入门获得相关的信息,本文中就不再赘述了。
链接地址如下: /epubs/html/amq1ac03/amq1ac030g.htm#HDRAMQ35B1第三步:安装MQ 5.3,关于MQ 5.3安装的内容可以通过查询MQ 5.3 Linux 快速入门获得相关的信息,本文中就不再赘述了。
链接地址如下: /epubs/html/amq1ac03/amq1ac030l.htm#HDRAMQ35C1当用户按照信息中心中要求的执行mqlicense.sh 命令的时候,用户会得到类似以下的错误信息:Displaying license agreement on :0.0stackpointer =0x40361aa8./mqlicense.sh line 132:3246 段错误 ${JRE?} -cp ${LAPCLASSPATH?} P -l ${PROGPATH?}/lap/licenses -s /tmp/mq_license ${ST ATUSARG} ${DISPLAYARG}ERROR: Installation will not succeed unless the licenseagreement can be accepted.If the error was caused by a display problem,read the license agreement file in the 'License'directory, and then run the following command:mqlicense.sh -acceptOnly use this command if you accept the licenseagreement.For other errors, contact your IBM support centre.这一问题是由于MQ本身的这个产生license的小程序不支持中文语言环境,因此,为了在中文环境下安装MQ 5.3 on Linux,只能想办法绕过这一问题。
解决的办法如下:在/tmp/mq_license/license/目录下添加一个空文件 status.dat,然后跳过执行mqlicense.sh 脚本直接开始MQ 5.3的安装。
对于该问题,并没有按上述文档进行,只是进行了如下操作:首先执行:export LD_ASSUME_KERNEL=2.4.19# mv /app/mq53/lap/jre /app/mq53/lap/jre.mq# ln -s /opt/IBMJava2-14/jre /app/mq53/lap/jre# /app/mq53/mqlicense.sh -accept -text_onlyExited with: 9Agreement accepted: Proceed with install.以上操作完成。
然后各个安装软件包,次序如下:rpm -Uvh MQSeriesRuntime-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesRuntime ########################################### [100%][root@WEBAPP mq53]# rpm -Uvh MQSeriesSDK-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesSDK ########################################### [100%][root@WEBAPP mq53]# rpm -Uvh MQSeriesServer-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesServer ########################################### [100%][root@WEBAPP mq53]# rpm -Uvh MQSeriesClient-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesClient ########################################### [100%][root@WEBAPP mq53]# rpm -Uvh MQSeriesSamples-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesSamples ########################################### [100%][root@WEBAPP mq53]# rpm -Uvh MQSeriesJava-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesJava ########################################### [100%][root@WEBAPP mq53]# rpm -Uvh MQSeriesMan-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesMan ########################################### [100%]rpm -Uvh MQSeriesMsg_es-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesMsg_es ########################################### [100%][root@WEBAPP mq53]# rpm -Uvh MQSeriesMsg_Zh_CN-5.3.0-2.i386.rpmPreparing... ########################################### [100%]1:MQSeriesMsg_Zh_CN ########################################### [100%]当用户顺利安装完成MQ 5.3所需要的包后,用户按照信息中心的指导需要运行setmqcap命令设定MQ的许可证单元。
但是,在用户执行setmqcap或者是使用crtmqm命令的时候会得到如下的错误信息:setmqcap: relocation error: /opt/mqm/lib/libmqm_r.so:symbol error, version GLIBC_2.0 not defined in file libc.so.6 with link time reference这个问题解决的办法是升级到最新的MQ 5.3补丁,到本文最后的修改日期为止MQ 5.3的最新的补丁是MQ 5.3 CSD08。
可以访问如下的地址获取MQ 5.3最新的补丁:/software/integration/mqfamily/support/summary/关于最新的补丁的安装方法,可以参考补丁的安装说明文件。
本次我们安装了最新的CSD11.解压补丁后,依次进行安装工作:rpm -i MQSeriesRuntime-U802143-5.3.0.-11.i386.rpm (该软件包安装需要几分钟)rpm -i MQSeriesSDK-U802143-5.3.0.-11.i386.rpmrpm -i MQSeriesServer-U802143-5.3.0.-11.i386.rpmrpm -i MQSeriesClient-U802143-5.3.0.-11.i386.rpmrpm -i MQSeriesSamples-U802143-5.3.0.-11.i386.rpmrpm -i MQSeriesJava-U802143-5.3.0.-11.i386.rpm第四步:验证MQ 5.3的安装,MQ的安装验证会要求用户使用命令crtmqm <Queue Manager Name>。