此版本已脱敏处理

WAS

wasgc日志

gc日志由was控制台配内存页面详细垃圾回收选项控制,建议勾选。如果关掉了,出现内存不足时会影响分析,没有方向。如果关闭后,需要重启was生效。

查看jvm使用情况

server目录下的日志目录,native_std_err.logverbosegc*,使用grep "mem-info" *可查看剩余内存、总内存与剩余百分比,取最新一条即可

测试数据源

登录WAS控制台:资源->JDBC->数据源
勾选要测试的数据源,点击测试链接,查看是否成功

查看线程池动态变化情况

登录WAS控制台:监视和调整->性能查看器->当前活动->选中Server->性能模块->线程池->选中要查看的线程池->查看模块->启动记录
即可查看线程池的变化情况

查看全局超时时间

登录WAS控制台:选中Server->容器服务->事务服务
第一项总事务生存期超时即为全局事务超时时间,一般修改该值即可,但不可超过第四项最大失误超时数

收集javacore、heapdump、core

首先确定输出路径:登录WAS控制台:选中Server->进程定义->环境条目
此处配置了上述三文件的输出路径
如果要收集core文件,需先检查Linux的内核参数sysctl -a |grep kernel.core_pattern
如不为core需先修改/etc/sysctl.conf增加kernel.core_pattern = core,然后执行sysctl -p生效。
黑屏:

#收集javacore:
kill -3 $PID
#收集core:
gcore $PID
#收集heapdump:
$ServerPath/bin/wsadmin.sh
wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=server1,*]
wsadmin>$AdminControl invoke $objectName generateHeapDump

白屏:
登录WAS控制台:选中故障诊断->Java转储和核心->勾选Server,点击堆转储Java核心系统转储分别heapdump、javacore、core文件。

检查证书是否超时

WAS 9.0.5.14前的已知BUG,重启可解决

执行$ServerPath/bin/wsadmin.sh,如果证书过期,会有报错返回,包含报错日志路径,检查日志即可查看过期时间。

IBM MQ

队列管理器状态检查

dspmq展示状态含义如下:

  • Starting 正在启动
  • Running 正在运行
  • Ending 正在停止
  • Ended normally 已经正常终止
  • Ended immediately 已经立即终止
  • Ended preemtively 已经强制终止
  • Ended unexpectively 异常终止

日志信息

  • 错误目录:/var/mqm/errors
  • 队列管理器信息:mqs.ini
  • 默认位置:/var/mqm/qmgrs/队列管理器名

起停队列管理起与通道

strmqm 队列管理器名
endmqm 队列管理器名
endmqm  –i  队列管理器名 #不能正常停止时使用
runmqchl -m 队列管理器名 -c 通道名#不使用mqsc时拉起通道方法

检查通道状态

dis chl(*) #会显示所有通道
dis chs(*) #只显示已启动的通道,指定通道名可查看其他通道状态
dis chs(*) where(status ne running) #检查非running的通道

SDR通道需要手动拉起,RCVR通道会随对端SDR通道自启动

重置通道序列号

stop chl($CHLNAME)
reset chl($CHLNAME) SEQNUM(YYYY) #SEQNUM可不带
start chl($CHLNAME)

检查队列信息

dis qs(*) where(curdepth gt 100)#定位有积压的队列
ALTER Q($QName) MON(LOW) #开启监控
dis qs($QName) all #通过LGETTIME( ),LPUTTIME( )可查看最后一次放入和取出时间,通过IPPROCS与OPPROCS可查看消费与生产者线程数;QTIME是消息从进队列到出队列的时间间隔,单位是微妙(除以1000000=秒),且有2个值,前一个是最近一段时间的性能,后一个是较长一段时间的性能
dis chl(*) where (xmitq eq $QNAME)#检查传输队列所属的通道

各值的详细解释可参考IBM队列状态属性

读取队列内容

#cd至MQ安装路径
amqsbcg ${队列名} ${队列管理器名}>输出文件

清理队列

#cd至MQ安装路径
amqsget ${队列名} ${队列管理器名}>输出文件 

查看集群信息

dis clusqmgr(*)

常用参数信息:

  • STATUS:状态running或inactive为正常状态
  • SUSPEND:是否挂起
  • QMID:集群队列管理器内部生成的唯一名称,不能重复
  • QMTYPE:是否为完全存储库

各值的详细解释可参考IBMDISPLAY CLUSQMGR

隔离并刷新集群信息

suspend qmgr cluster(xxxx) #隔离集群
refresh cluster(xxxx) #刷新
resume qmgr cluster(xxxx)#恢复

日志收集

#cd至MQ安装路径
#AIX /usr/mqm/samp/bin/
#Linux /opt/mqm/samp/bin/
runmqras -section defs,cluster -qmlist $QMGRNAME

常见FDC报错

通过Probe Id识别

  • AQ063114:Backward time movement,NTP修改时间触发
  • XC805110:CPU使用在20s内超过11000LL触发
  • C0618000:MQ错误日志目录下执行ffstsummary查看原因,amqrmppa为端口测试程序

BES

BESMQ

进程检查

ps -ef |grep besmq:进程包含broker与console,对集群模式部署的BES MQ,只有一台有console进程。

broker状态检查

访问http://$IP:8490/mqconsole
服务监控服务队列:查看消息浏览,消费者浏览,实时监控和历史监控等信息
服务监控服务连接:查看集群内broker是否连接

清理消息积压

访问http://IP:8490/mqconsole
服务监控服务队列消息浏览:点击清理队列

起停

先起broker:/usr/besmq/bin/mqadmin start --broker --passport admin $brokerNAME

按情况添加参数--broker-dir $BrokerPath

再起console:/usr/besmq/bin/startconsole

BESAPP

进程检查

ps -ef|grep besapp 进程包含node instance console

控制台

http://IP:6900/console

OS

Device /dev/sdb excluded by a filter

添加的磁盘是在另一个虚拟机中新建的,已经有了分区表,现在的虚拟机并不能识别磁盘的分区表,运行parted命令重做分区表,中途需要输入三次命令

parted /dev/sdb
mklabel msdos
yes
quit

再次运行pvcreate,问是否擦除dos签名,输入y,就可以将磁盘创建为PV了。

合并ZIP

对7z拆分的zip分卷,使用cat xxx.zip.0*>cat xxx.zip即可完成合并

磁盘扩容

vmware对磁盘进行扩容后有以下几种方式在不重启的情况下扫盘:

  1. 刷新系统scsi总线:for FullPathScan in $( ls /sys/class/scsi_host/host*/scan); do echo "- - -" > ${FullPathScan}; done "- – -" 是通配符,告诉SCSI总线需扫描所有的控制器、通道和LUN
  2. 原理同上,Linux发行商的脚本执行scanrescan-scsi-bus.sh
  3. partprobe重读分区表信息,可加上设备名只重读指定设备,适用性更广。

完成后使用pvresize $pvname调整PV大小使其自适应,VG大小会随VG大小变化而增大。

HA检查

发生HA切换时,相关启动命令存放在/home/hacmp下,记录了相关组件自启动命令。

作者 Assaultcore

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注