WebSphere MQ 安装及简单配置

WebSphere MQ 安装及简单配置
这里是用安装包安装的「MQ_7.5.0.2_TRIAL_LNX_ON_X86_32_ML.tar.gz」, 里面有多个 rpm 包, 在 RHEL, CentOS 和 Ubuntu 中都安装成功了!

1. 首先解压这里解压到一个新的目录下[root@ ~]# mkdir mqserver [root@ ~]# tar zxvf MQ_7.5.0.2_TRIAL_LNX_ON_X86_32_ML.tar.gz -C mqserver [root@ ~]# cd mqserver [root@ mqserver]# ls copyright MQSeriesMsg_es-7.5.0-2.i386.rpm crtmqpkg MQSeriesMsg_fr-7.5.0-2.i386.rpm lap MQSeriesMsg_hu-7.5.0-2.i386.rpm licenses MQSeriesMsg_it-7.5.0-2.i386.rpm mqlicense.sh MQSeriesMsg_ja-7.5.0-2.i386.rpm MQSeriesAMS-7.5.0-2.i386.rpm MQSeriesMsg_ko-7.5.0-2.i386.rpm MQSeriesClient-7.5.0-2.i386.rpm MQSeriesMsg_pl-7.5.0-2.i386.rpm MQSeriesExplorer-7.5.0-2.i386.rpm MQSeriesMsg_pt-7.5.0-2.i386.rpm MQSeriesFTAgent-7.5.0-2.i386.rpm MQSeriesMsg_ru-7.5.0-2.i386.rpm MQSeriesFTBase-7.5.0-2.i386.rpm MQSeriesMsg_Zh_CN-7.5.0-2.i386.rpm MQSeriesFTLogger-7.5.0-2.i386.rpm MQSeriesMsg_Zh_TW-7.5.0-2.i386.rpm MQSeriesFTService-7.5.0-2.i386.rpm MQSeriesRuntime-7.5.0-2.i386.rpm MQSeriesFTTools-7.5.0-2.i386.rpm MQSeriesSamples-7.5.0-2.i386.rpm MQSeriesGSKit-7.5.0-2.i386.rpm MQSeriesSDK-7.5.0-2.i386.rpm MQSeriesJava-7.5.0-2.i386.rpm MQSeriesServer-7.5.0-2.i386.rpm MQSeriesJRE-7.5.0-2.i386.rpm PreReqs MQSeriesMan-7.5.0-2.i386.rpm READMEs MQSeriesMsg_cs-7.5.0-2.i386.rpm repackage MQSeriesMsg_de-7.5.0-2.i386.rpm
2. 安装
  • 最先安装证书「mqlicense.sh」, 否则后面的都安装不了
  • [root@ mqserver]# ./mqlicense.sh # 直接输入数字 1, 然后按回车即可同意. # 出现下面这句话就算是接受协议了, 后面就可以开始安装软件了 ... Agreement accepted: Proceed with install. ...
  • 接下来安装的是 Runtime「MQSeriesRuntime-7.5.0-2.i386.rpm」, 这个也要先安装
  • [root@ mqserver]# rpm -ivh MQSeriesRuntime-7.5.0-2.i386.rpm .# Ubuntu 会提示错误, 一般 Ubuntu 安装的是 deb 包, 这里我们可以强制安装 .# > 错误提示如: .# > /bin/sh is needed by MQSeriesRuntime-7.5.0-2.i386 .# > .# Ubuntu 用以下方式安装 (没有 rpm 需要联网安装下: sudo apt-get install rpm) [root@ mqserver]# rpm -ivh MQSeriesRuntime-7.5.0-2.i386.rpm --nodeps
  • 接下来就是安装剩下的了, 基本上都安装了, Msg_看着像有关语言的, 我就没装了
  • rpm -ivh --nodeps XXX.rpm 我只装了下面这些包, 就可以正常使用了, 需要其他的包后面再装 mqlicense.sh MQSeriesRuntime-7.5.0-2.i386.rpm MQSeriesSamples-7.5.0-2.i386.rpm MQSeriesSDK-7.5.0-2.i386.rpm MQSeriesServer-7.5.0-2.i386.rpm MQSeriesJava-7.5.0-2.i386.rpm MQSeriesClient-7.5.0-2.i386.rpm
    3. 简单配置
    首先, 安装 mq 会自动创建用户和用户组 mqm, 这里我们给 mqm 设置个密码[root@ ~]# passwd mqm # 输入两次密码 Enter new UNIX password: (*不显示) Retype new UNIX password: (*不显示) passwd: password updated successfully
  • 切换到 mqm 用户, 到 /optmqm/bin 目录下
  • [root@ ~]# su - mqm [root@ ~]# cd /opt/mqm/bin
  • 创建缺省队列管理器
    # ./crtmqm -q QM_NAME
  • 启动队列管理器
    # ./strmqm QM_NAME
  • 进入控制台创建并启动侦听器
    # ./runmqsc QM_NAME

    def listener(LISTENER.TCP) TRPTYPE(TCP) PORT(1416) CONTROL(QMGR)
    start LISTENER(LISTENER.TCP)

  • 在发送队列管理器上创建队列

    define qlocal(QM_LOCAL)
    结束, 输入 end 回车即可

  • 4. 可能遇到的问题
  • websphere 创建队列时错误: AMQ7077: You are not authorized to perform the requested operation.
    解决: 没有权限执行, 切换到 mqm 用户(su - mqm)

  • Suse 创建了 websphere 用户却无法登陆.
    解决: 查看 /etc/passwd 文件, 发现 mqm 的信息为 mqm❌104:1003::/var/mqm:/bin/false, 于是尝试修改 shell 为 /bin/bash, 切换用户成功!

  • Ubuntu 安装 rpm 包时报错 /bin/sh is needed by rpm_name.rpm
    解决: Ubuntu 要安装 rpm 包需要强制安装, 加上参数 --force, --nodeps, 这样就不会提示错误, 但并不一定能装上, 最好还是安装 deb 包.

  • Suse 无法切换到 mqm 用户.
    解决: 修改完默认 shell 后仍然不能切换到 mqm 用户, 需执行 mq 配置 su mqm -c "/opt/mqm/bin/mqconfig", 然后再 su - mqm.

  • 安装 WebSphere MQ 6.0 ./mqlicense.sh 证书时报错 ERROR: No useable java programs at ./lap/IBMJava2-142/jre/bin/java
    需要给 java 可执行权限, 可以直接修改权限: chmod 755 ./lap/IBMJava2-142/jre/bin/java

  • 系统参数验证:

  • [root@ ~]# su -mqm -c "opt/mqm/bin/mqconfig"会列出哪些项目不符合,针对提示做出修改,一般局限在下面两个文件:/etc/sysctl.conf fs.file-max = 524288 kernel.sem=500 256000 250 1024 net.ipv4.tcp_keepalive_time = 300/etc/security/limit.conf mqm soft nofile 10240 mqm hard nofile 10240 mqm soft nproc 4096 mqm hard nproc 4096


    [References]
    星海の風

    相关内容推荐