基于Linux的IBMMQ中间件服务器标准化安装配置指导手册
(2023年版)
IBM MQ 是一个强大且安全可靠的消息传递解决方案。它可以简化并加速跨多个平台的不同应用程序的集成,并且支持多种 API 和语言。
IBM MQ 使应用程序能够以可靠且可扩展的方式进行通信和交换数据,从而使一个应用程序与另一个应用程序解耦。通过这种方式,MQ 可以帮助集成在不同框架、语言、平台、云和位置上运行的应用程序。您可以按照自己的方式编写应用程序,因为您知道 MQ 可以解决问题,并将这些应用程序集成起来。
IBM MQ 允许服务器基础架构跨越数据中心、大型机和云框架。IBM MQ 能够以软件和硬件两种方式实现,在独立应用程序之间提供企业级通信。此外,它还降低了开发这些应用程序的复杂性。
本文档是日常工作中总结的在Linux服务器中IBMMQ环境部署过程,供大家参考。如有问题还请留言以便修改。
1. 范围
本规范适用于IBMMQ(9+版本)的安装部署,是基于Linux操作系统的IBMMQ中间件服务器安装部署提供标准化配置规范参考。
本文以IBMMQ9.1.0.15版本为安装版本进行演示。文中涉及的用户及安装路径请根据实际情况进行调整。
2. 环境与软硬件规范
2.1. 运行环境
序号 | 名称 | 规范 | 备注 |
1 | IBMMQ | 单机 | |
2 | 操作系统 | RedHat Linux | 64bit |
2.2. 软件版本
序号 | 运行环境名称 | 运行环境统一规范 | 备注 |
1 | IBMMQ | 9.1.0.15 | |
2 | JAVA环境 | IBMMQ内置版本 | 按需更新 |
3 | 操作系统初始版本 | redhat7.9 | 按需动态更新 |
2.3. 硬件配置(推荐)
项目 | 最低需求 | 备注 |
服务器 | 一台 | 如无特殊需求,建议部署在资源池上 |
服务器CPU | BIOS开启CPU最大性能模式 | |
服务器内存 | 64GB以上 | |
本地硬盘可用空间 | 300GB以上 | 若为物理机,需要RAID 5 + 1块热备盘 |
网卡 | 千兆或以上 | 若为物理机,需要至少2块物理网卡,并配置网卡绑定。 |
3. 操作系统安装规范
3.1. 字符集
统一采用英文界面安装,以保证采用英文作为操作系统缺省的语言环境。
同时,在安装附加语言支持时,选择简体中文。
3.2. 时区
(1)时区选择东八区:Shanghai,Asia;
(2)系统时钟不使用 UTC(世界协调时间);若有特殊要求,可根据实际需求调整。
3.3. 文件系统(推荐)
通常情况下,新安装操作系统应遵循以下规范进行文件系统划分:
序号 | 目录 | 用途 | 建议值 | 管理方式 | FS 类型 |
1 | /boot | 系统内核 | 1024M | 标准分区 | EXT4 |
2 | /cib | 软件安装目录 | 40G | LVM | EXT4 |
3 | /ciblog | 日志存放目录 | 10G | LVM | EXT4 |
4 | /tmp | 临时文件目录 | 20G | LVM | EXT4 |
5 | swap | 交换分区 | 内存大小为n:1、n<16GB时,swap=16GB2、16GB<n<128GB时,swap=n3、n>128GB时,swap=128G | LVM | |
6 | / | 根目录 | 剩余可用空间 | LVM | EXT4 |
3.4. 安装过程主要选项
安装步骤 | 安装内容 | 选择内容 |
Step 1 | 选择语言 | English,并勾选Chinese(Simplified) |
Step 2 | 选择键盘 | 美国英语式(en_US) |
Step 3 | 选择驱动器 | 1. Basic Storage Devices2. Specialized Storage Devices |
Step 4 | 网卡配置 | 1. IPAddr:自定义(根据方式单的分配来确定)2. Subent:自定义(根据方式单的分配来确定)3. Gateway:自定义(根据方式单的分配来确定) |
Step 5 | 主机名配置 | 按主机名称命名规范填写 |
Step 6 | 时区设置 | 亚洲/上海(Shanghai,Asia) |
Step 7 | 根帐号设置 | 设置root密码(符合安全要求规定的密码) |
Step 8 | 选择分区 | 选择“建立自定义的分区结构” |
Step 9 | 磁盘分区 | 参考第3.3章的“文件系统划分”要求进行划分 |
Step 10 | 软件定制 | 默认安装基本服务器(Basic Server),“Compatibility libraries” 和“Development Tools”为可选项。 |
Step 11 | 防火墙设置 | 禁用防火墙 |
Step 12 | 时间和日期 | 设置当前时间与日期 |
3.5. RPM软件包
IBMMQ中间件无需特殊RPM包需求,考虑到操作系统层面资源使用率监控需求,建议安装如下:
yum install sysstat
4. 操作系统配置规范
4.1. 系统服务
序号 | 服务名称 | 服务说明 | 建议 |
1 | ip6tables | ipv6包过滤软件防火墙服务 | 关闭 |
2 | iptables | 包过滤软件防火墙服务 | 关闭 |
3 | sshd | ssh远程服务 | 开启 |
4 | Bluetooth | 蓝牙服务 | 关闭 |
5 | postfix | 电子邮件服务 | 关闭 |
6 | cups | cups打印机服务 | 关闭 |
7 | cpuspeed | cpu速率调整服务 | 关闭 |
8 | NetworkManager | 网络自动管理服务 | 关闭 |
9 | vsftpd | ftp服务 | 关闭 |
10 | dhcpd | dhcp服务 | 关闭 |
11 | nfs | 网络文件共享服务 | 关闭 |
12 | nfslock | nfs锁机制服务 | 关闭 |
13 | ypbind | nis客户端服务 | 关闭 |
配置命令示例:
service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off
service sshd start
chkconfig sshd on
service Bluetooth stop
chkconfig Bluetooth off
service postfix stop
chkconfig postfix off
service cups stop
chkconfig cups off
service cpuspeed off
chkconfig cpuspeed off
service NetworkManager stop
chkconfig NetworkManager off
service vsftpd stop
chkconfig vsftpd off
service dhcpd stop
chkconfig dhcpd off
service nfs stop
chkconfig nfs off
service nfslock stop
chkconfig nfslock off
service ypbind stop
chkconfig ypbind off
4.2. SELinux
SELinux 全称 Security Enhanced Linux,因当前生产环境采用了硬件防火墙,建议关闭SELinux安全策略,以免降低性能。
#/usr/sbin/sestatus #查看服务状态
#vi /etc/selinux/config #编辑config文件,并将SELINUX的值修改成disabled
SELINUX=disabled
4.3. 网络配置
4.3.1 网卡绑定方式
序号 | 网卡设备名称 | 网卡聚合名称 | 聚合工作模式 |
1 | Eth0 | Bond0 | active-backup |
2 | Eth1 | Bond0 | active-backup |
设备名称与实际情况可能有区别,建议根据实际情况进行调整,此处适用于物理服务器,虚拟机不考虑做绑定。
4.3.2 配置hosts文件
配置hosts 文件,添加每台服务器的IP和主机名信息。
root @webapp01 ~]$ vi /etc/hosts
192.168.1.x webapp01 #注意:根据服务器地址更改对应IP地址和主机名
192.168.1.x webapp02
192.168.1.x webapp03
192.168.1.x webapp04
4.3.3 IP地址设置
采取静态分配的方式,IP地址、子网掩码、网关地址根据方式单来确定。以下是配置示例:
#vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=static
USERCTL=no
NM_CONTROLLED=no
IPADDR=10.1.2.3
NETMASK=255.255.255.0
GATEWAY=10.1.2.254
BONDING_OPTS="mode=1 miimon=100"
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no
#vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no
*设备名称与实际情况可能有区别,建议根据实际情况进行调整,此处设置网卡绑定。同样适用于物理服务器,虚拟机不考虑做绑定。
4.3.4 DNS设置(示例)
DNS服务器地址根据网络环境(内网、外网、公网)确定:
内网地址示例:10.11.12.51(主)、10.11.12.50(备)
外网地址示例:10.2.47.113(主)、10.2.47.114(备)
公网地址示例:192.168.177.2(主)、192.168.176.2(备)
#vi /etc/resolv.conf
nameserver 10.11.12.51#注意:根据网络环境更改对应IP地址
nameserver 10.11.12.50
4.4. NTP配置
配置NTP服务如下:
# vi /etc/sysconfig/ntpd
# Drop root to id 'ntp:ntp' by default.
OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g"
# Set to 'yes' to sync hw clock after successful ntpdate
SYNC_HWCLOCK=yes #同步硬件bios时间
#vi /etc/ntp.conf
server 10.100.48.13 prefer #所在区域灾备中心NTP服务器地址
server 127.127.1.0 iburst #添加本机为次要同步地址
#vi /etc/ntp/step-tickers
10.100.48.13 #添加ntp服务器地址,设置在ntp启动时自动同步时间
配置完毕后,重启ntpd服务,并查看状态
chkconfig ntpd on
service ntpd restart
ntpstat #查看ntpd服务状态
date #查看时间是否正常
4.5. 系统内核参数
[root @ webapp01 ~]#vi /etc/ssh/sshd_config
UseLogin yes
##把UseLogin参数取消注释,修改为yes,解决weblogic用户直接登录服务器后,ulimit配置不能自动生效问题
[root @ webapp01 ~]#/etc/init.d/sshd restart重启ssh服务后生效。
# vi /etc/security/limits.conf #编辑limits.conf文件,加入以下内容,设置cib用户的资源限制,若启动用户变更则下面配置均需对应修改。
cib soft nproc 16384
cib hard nproc 16384
cib soft nofile 65536
cib hard nofile 65536
4.6. 用户和用户组(推荐)
创建IBMMQ管理用户组及用户,根据要求将以cib用户启动IBMMQ服务,但是由于IBMMQ启动必须有mqm用户组权限,所以在创建用户cib时需同时具备mqm和cib用户组权限,配置命令如下:
#创建用户组cib,UID为1004
groupadd cib -g 1004
#创建用户组mqm,UID为1005
groupadd mqm -g 1005
#创建用户cib,UID为1004,它的主用户组为cib,同时具备mqm用户组属性
useradd -u 1004 -g cib -G mqm -m cib
#创建ibmmq安装路径,若在系统安装时以分配该路径,则忽略此操作
mkdir /cib
#将路径cib文件夹的权限归给cib用户
chown -R cib:cib /cib
用户设定密码,配置命令示例:
# passwd cib
Changing password for user cib.
New UNIX password: 按照安全规范设置
Retype new UNIX password: 按照安全规范设置
4.7. SHELL配置
##添加历史命令记录:
#Vi /etc/bashrc
##添加如下内容:
# Customize history
HISTFILESIZE=65536
HISTSIZE=4096
# Display history time
HISTTIMEFORMAT="<%F %T>: "
# Ignore dupe commands
HISTCONTROL=ignoredups
# Ignore colon seperated commands
HISTIGNORE="[ ]*:&:bg:fg:ls:pwd:"
# Append cooamds to history file
shopt -s histappend
# Save command right after executed
PROMPT_COMMAND="history -a; $PROMPT_COMMAND"
#source /etc/bashrc生效配置。
5. IBMMQ安装规范
5.1. IBMMQ安装包准备
在tmp目录下创建software文件夹,将IBMMQ9.1.0.15的安装包IBM_MQ_9.1.0.15_LINUX.tar.gz上传至该文件夹下,并解压,若没有该路径则参考下列命令进行创建:
#切换至cib用户
su - cib
#创建ibmmq安装包存放路径
mkdir -p /tmp/software
#解压该安装包,到本地
tar -zxvf IBM_MQ_9.1.0.15_LINUX.tar.gz
解压后,在software文件夹下会生成一个MQServer的文件夹,该文件夹下为IBMMQ的安装文件,解压后内容参考示例如下:
5.2. IBMMQ安装包介绍
在MQServer中可以看到有好多的rpm包文件,但不是所有的包均需要安装,正常只需安装IBMMQ的基础服务即可,若有特殊需要,则根据实际情况额外进行安装。具体需要安装包如下:
MQSeriesRuntime-9.1.0-15.x86_64.rpm #IBMMQ启动用户和用户组mqm权限设定
MQSeriesSDK-9.1.0-15.x86_64.rpm #IBMMQ运行依赖的SDK环境
MQSeriesServer-9.1.0-15.x86_64.rpm # IBMMQ主体服务
MQSeriesClient-9.1.0-15.x86_64.rpm #IBMMQ客户端程序
MQSeriesSamples-9.1.0-15.x86_64.rpm #IBMMQ本地测试用例(可不装)
5.3. IBMMQ安装过程
5.3.1运行MQ 许可证程序
IBMMQ服务是官方授权服务,在安装前需在当前系统中安装IBMMQ的许可信息才能进行安装,本次安装采用的是IBMMQ正式稳定版本,在安装包中已经集成了IBMMQ许可信息,直接执行命令mqlicense.sh导入许可即可(注:若找不到mqlicense.sh命令,请核对上传的安装包是否为完整版安装包,若不是请在官网中下载对应的完整安装包)。该命令只能在root用户下执行,在执行前需切换到root用户下。执行结果如下,当出现“Press Enter to continue viewing”字样时,需要手动输入 “1”回车来完成证书导入;
[root@redhat79 software]# cd /tmp/software/MQServer/
[root@redhat79 MQServer]# ./mqlicense.sh
Licensed Materials - Property of IBM
5724-H72
(C) Copyright IBM Corporation 1993, 2023
US Government Users Restricted Rights - Use, duplication or disclosure
restricted by GSA ADP Schedule Contract with IBM Corp.
NOTICE
This document includes License Information documents below
for multiple Programs. Each License Information document
identifies the Program(s) to which it applies. Only those
License Information documents for the Program(s) for which
Licensee has acquired entitlements apply.
==============================================
IMPORTANT: READ CAREFULLY
Press Enter to continue viewing the license agreement, or
enter "1" to accept the agreement, "2" to decline it, "3"
to print it, "4" to read non-IBM terms, or "99" to go back
to the previous screen.
1
Agreement accepted: Proceed with install.
显示“Agreement accepted: Proceed with install.”则安装完成。
5.3.2 IBMMQ组件安装
注:本次IBMMQ的安装路径为/cib/mq路径下,若选择其他路径则直接修改安装路径名称即可
示例要求将IBMMQ程序安装在路径/cib/mq/ 下,首先创建该路径,创建后再进行安装,具体执行命令如下,注意安装顺序切记不要打乱,请严格按照下列步骤执行,以免出现不必要的问题:
#创建IBMMQ安装路径
mkdir -p /cib/mq
#设定ibmmq服务运行所需的用户组权限
rpm -ivh MQSeriesRuntime-9.1.0-15.x86_64.rpm --prefix=/cib/mq
#安装IBMMQ运行依赖的SDK环境
rpm -ivh MQSeriesSDK-9.1.0-15.x86_64.rpm --prefix=/cib/mq
#安装IBMMQ主体服务
rpm -ivh MQSeriesServer-9.1.0-15.x86_64.rpm --prefix=/cib/mq
#安装IBMMQ客户端程序
rpm -ivh MQSeriesClient-9.1.0-15.x86_64.rpm --prefix=/cib/mq
#安装IBMMQ本地测试用例
rpm -ivh MQSeriesSamples-9.1.0-15.x86_64.rpm --prefix=/cib/mq
安装示例如下:
MQSeriesRuntime-9.1.0-15.x86_64.rpm
MQSeriesSDK-9.1.0-15.x86_64.rpm
MQSeriesServer-9.1.0-15.x86_64.rpm
由于变更了IBMMQ的安装路径则可能出现以下警告,请忽略。
MQSeriesClient-9.1.0-15.x86_64.rpm
MQSeriesSamples-9.1.0-15.x86_64.rpm
安装完成后,在路径/cib下会生成mq的安装文件路径,该路径下内容如下:
至此,IBMMQ基础服务已经安装完成。
5.4. 配置环境变量
注:配置环境变量时,请以IBMMQ实际安装路径为准;
安装完成后,ibmmq的操作命令存放在/cib/mq/bin目录下,在日常使用中需切换到该路径下执行操作命令,为了更加方便的使用IBMMQ命令,则需要将IBMMQ的安装路径添加后环境变量中,在配置环境变量时有两种方法,一种是为它配置全局变量,即所有用户均可直接执行IBMMQ相关命令,一种为配置启动用户的环境变量,本次安装采用第二种方式-针对启动用户进行配置,本配置采用启动用户配置,若要配置全局变量则将IBMMQ的安装路径配置在/etc/profile下(注:两种配置环境变量方法一致,仅仅是修改的文件不同)。下面为具体步骤:
#切换到启动用cib用户下
su - cib
#修改bash_profile文件内容,在该文件末尾“export PATH”前加上下面红色内容
vim ~/.bash_profile
PATH=$PATH:/cib/mq/samp/bin:/cib/mq/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
#执行下列命令使配置生效
source ~/.bash_profile
修改后bash_profile文件内容如下:
5.5. IBMMQ队列管理器创建示例
注:配置环境变量时,请以IBMMQ实际安装路径为准;
该步骤为示例步骤,在实际安装过程中请根据实际情况进行命名及创建;这里只对队列管理器创建进行演示,其他操作不做演示,具体命令请参考附录中提供命令(注:在对IBMMQ操作时,切记适用cib用户执行,以免安装配置完成后,由于权限问题而导致IBMMQ无法正常运行);
创建队列管理器test,并指定日志队列管理器路径为/ciblog,由于IBMMQ的服务路径属组均为mqm,否则指定日志时无法成功,报出异常为:AMQ7064E: Log path not valid or inaccessible.
#创建IBMMQ队列管理器日志记录路径
mkdir -p /cib/logs
#创建IBMMQ队列管理器安装路径
mkdir -p /cib/qmgrs
#创建对列管器名为test,日志输出位置指定至/ciblog,安装位置为 /cib/qmgrs,日志大小为16384k,分配的日志文件为40个
crtmqm -ld /cib/ciblog -md /cib/qmgrs -lc -lf 16384 -lp 40 -ls 10 test
#查看队列管理器创建是否成功
dspmq
#启动队列管理器
strmqm test
#停止队列管理器
endmqm -i test
队列管理器创建示例
查看队列管理器状态
启动队列管理器
停止队列管理器
6. 附录
6.1. IBMMQ9.1.0.15安装介质
百度网盘下载地址:
https://pan.baidu.com/s/15nIAb_E_gDgNo_H80sTr5g
提取码:fbz9
6.2. IBMMQ基本命令介绍
说明:Windows环境可以在图形化中直接查看,针对要查看的具体指标在该项上鼠标右键,选择对应的参数项即可,也可在cmd控制台中按如下命令进行查看。
###队列管理器操作命令####
#查看安装IBMMQ版本信息
dspmqver
#显示队列管理器
dspmq (显示所有)
dspmq -m MQCHNMSCS01 (显示指定)
#修改队列管理器权限-关闭通道权限
ALTER QMGR CHLAUTH(DISABLED)
#创建队列管理器(MQCHNMSCS01 为队列管理器名称)
crtmqm MQCHNMSCS01
crtmqm -q MQCHNMSCS01 #(-q 创建 缺省的 队列管理器)
#删除队列管理器(MQCHNMSCS02为队列管理器名称)
dltmqm MQCHNMSCS02
#启动队列管理器(MQCHNMSCS11为队列管理器名称)
strmqm MQCHNMSCS11
#停止队列管理器
endmqm MQCHNMSCS02 #受控停止
endmqm -i MQCHNMSCS11 #立即停止
endmqm -p MQCHNMSCS11 #强制停止
#进入mq环境 运行指令(MQCHNMSCS01为队列管理器名称)
runmqsc MQCHNMSCS01
####mq环境 常见指令####
#查询队列管理器属性
dis qmgr #查看队列管理器属性
dis qmgr ccsid #查看队列管理器配置字符集
#查看队列定义及状态
dis q(*) #查看所有队列
dis qlocal(QName) #查看本地队列
dis qs(QName) #查看队列的主要属性
#查看通道定义 和 状态
dis chl(*) #查看所有通道
dis chl(SYSTEM.DEF.SVRCONN) #查看SYSTEM.DEF.SVRCONN通道的属性
dis chl(TO.MQCHNMSCS01) #查看TO.MQCHNMSCS01通道的属性
dis chl(TO.MQCHNMSCS11) #查看TO.MQCHNMSCS11通道的属性
dis chs(*) #查看所有通道的状态
dis chs(SYSTEM.DEF.SVRCONN) #查看SYSTEM.DEF.SVRCONN通道的状态
dis chs(TO.MQCHNMSCS01) #查看TO.MQCHNMSCS01通道的状态
dis chs(TO.MQCHNMSCS11) #查看TO.MQCHNMSCS11通道的状态
#启动/停止/重置通道
runmqchl -c CHNMSCS.SHBGSPGW -m MQCHNMSCS01 #启动队列管理器MQCHNMSCS01中的CHNMSCS.SHBGSPGW通道,该命令在操作系统中进行,无需登入到IBMMQ管理器中
start chl(ChannelName) #启动指定通道,括号内为通道名称;该命令需要登入到队列管理器中执行
stop chl(ChannelName) #停止指定通道,括号内为通道名称;该命令需要登入到队列管理器中执行
reset channel(ChannelName) #重置指定通道,括号内为通道名称;该命令需要登入到队列管理器中执行
#查看通道监听状态与启停监听
dis listener(*) #查看当前队列管理器中所有的监听
dis listener(TO.MQCHNMSCS01) #查看TO.MQCHNMSCS01监听的配置信息
display lsstatus(MQCHNMSCSLSR) #显示MQCHNMSCSLSR监听的状态
start lstr(listnerName) #启动指定监听,括号内为监听名称;该命令需要登入到队列管理器中执行
stop lstr(listnerName) #停止指定监听,括号内为监听名称;该命令需要登入到队列管理器中执行
#删除队列监听器(MQCHNMSCS11LSR为删除监听名称)
DELETE LISTENER(MQCHNMSCS11LSR)
#修改队列管理器的发送通道conname并生效
runmqsc MQCHNMSCS01 #登入MQCHNMSCS01队列管理器
stop channel(CHNMSCS.EGSPGW) #停止CHNMSCS.EGSPGW通道
alter channel(CHNMSCS.EGSPGW) CHLTYPE(SDR) ``CONNAME('182.217.17.57(20011)') #修改通道信息
start channel(CHNMSCS.EGSPGW) #启动CHNMSCS.EGSPGW通道
DIS CHS(CHNMSCS.EGSPGW) #显示CHNMSCS.EGSPGW通道的状态
end #退出队列管理器
#修改队列管理器的 监听端口
stop listener(Name) #停止指定监听,括号中为监听名称
alter listener(Name) trptype(tcp)conname(Port) #修改指定监听的配置属性
start listener(Name) #启动指定监听
end #退出队列管理器
#### 删除 命令
DELETE QLOCAL(MQGSPGW) #删除本地队列MQGSPGW
DELETE CHANNEL(CHNMSCS.GSPGW) #删除通道CHNMSCS.GSPGW
DELETE QREMOTE(REMOTEQ.GSP01.RSP) #删除远程队列的REMOTEQ.GSP01.RSP本地定义
#### 修改队列管理器的CCSID
dis QMGR #显示队列管理器的属性
alter QMGR CCSID(1208) #修改队列管理器配置的字符集
#### mq关闭相应权限
ALTER QMGR CHLAUTH(DISABLED) # CHLAUTH属性改为不可用,用于处理2540异常
alter chl(SYSTEM.DEF.SVRCONN) chltype(svrconn) mcauser('mqm') #修改通道认证用户,用于处理2030异常;
start chl(SYSTEM.DEF.SVRCONN) #启动通道SYSTEM.DEF.SVRCONN
6.3. IBMMQ队列创建案例
注:下列命令均在IBMMQ内部执行,需通过runmqsc进入对应的队列管理器中执行。队列创建需有本地端与远程端保持一致,请根据对方提供信息进行配置。以下为一次队配置案例仅供参考,不可作为实际生产环境配置。
配置队列管理器中的队列信息
--本地队列
DEFINE QLOCAL(DEADQ) defpsist(yes) maxdepth(20000) maxmsgl(104857600) replace
DEFINE QLOCAL(ERRMSG) defpsist(yes) maxdepth(20000) maxmsgl(104857600)
replace------接收来自CCPC的消息
DEFINE QLOCAL(90745122_1) defpsist(yes) maxdepth(20000) maxmsgl(104857600) bothresh(3) boqname(ERRMSG) replace
DEFINE QLOCAL(90745122_2) defpsist(yes) maxdepth(20000) maxmsgl(104857600) bothresh(3) boqname(ERRMSG) replace
------接收来自MB的消息
DEFINE QLOCAL(90745122_3) defpsist(yes) maxdepth(20000) maxmsgl(104857600) bothresh(3) boqname(ERRMSG) replace
DEFINE QLOCAL(90745122_4) defpsist(yes) maxdepth(20000) maxmsgl(104857600) bothresh(3) boqname(ERRMSG) replace
--MBFE下的MB
DEFINE QLOCAL(90745122_5) defpsist(yes) maxdepth(20000) maxmsgl(104857600) bothresh(3) boqname(ERRMSG) replace
DEFINE QLOCAL(90745122_6) defpsist(yes) maxdepth(20000) maxmsgl(104857600) bothresh(3) boqname(ERRMSG) replace
alter qmgr deadq(deadq)
alter qmgr ccsid(819)
--远程队列
def qr(9074510022_7) rname(GW_1) rqmname(QME) xmitq(QM90745122) defpsist(yes) replace
def qr(9074510022_8) rname(GW_2) rqmname(QME) xmitq(QM90745122) defpsist(yes) replace
--传输队列
def ql(QM90745122) usage(XMITQ) defpsist(YES) maxdepth(100000) maxmsgl(104857600) trigger trigtype(FIRST) trigdata(90745122) initq(SYSTEM.CHANNELINITQ) replace
--发送通道
DEFINE CHANNEL(90745122) chltype(SDR) discint(1800) conname('127.0.0.1(1418)') xmitq(QM90745122) trptype(tcp) shortrty(10000) shorttmr(30) longtmr(300) longrty(999999999) batchsz(50) replace
--接收通道
DEFINE CHANNEL(GW5840.9074510022) chltype(rcvr) trptype(tcp)
--监听端口
DEFINE LISTENER(QM90745122) TRPTYPE(TCP) PORT(1417) CONTROL(MANUAL) BACKLOG(0)
启动MQ监听
START LISTENER(QM90745122)
启动发送通道
START chl(90745122)
启动接收通道
START chl(GW.90745122)