中间件(WAS、WMQ)运维 9个常见难点解析

有一个case系统,部署在was集群环境,应用是集群环境,有的时候当一个节点异常的时,客户端访问该系统就会抛出异
摘要

1、was 负载均衡的机制的粘连性,was负载均衡异常?

有一个case系统,部署在was集群环境,应用是集群环境,有的时候当一个节点异常的时,客户端访问该系统就会抛出异常,按正常情况,该会话应该不会断或者断了再连接一次就会到另一个节点,但是好多时候不管客户端如何连接,都不行,该正常的客户端一直是正常的,不正常重启机器也不正常。当然其他新连接的节点也没啥问题,直到重启了故障节点的应用,原先不能正常访问的客户端才正常,就算当时清除浏览器缓存也不好使,哪位有这方面的经验可以多谈谈。

答:

1,这是故障转移,was有内部机制可以做到

1)内存到内存复制技术可以,缺点,因每台服务器共享session,所以占用内存比较大(如果server很少,可以考虑使用)。

2)存储到数据苦或者其他地方也可以实现。推荐使用,但是实现较复杂

2、如何大批量的完成WAS的安装和部署?有哪些工具和方法?

如:几百台或上千台WAS服务器的安装和部署

答:

1,wsadmin 去写脚本是个好办法,配合虚拟化去做。

2,还有上千台的已经不适合去用商业软件了,建议去考虑下开源的软件,或者云平台了。

3、was安装低版本升级需要注意哪些方面?需要重新缴费吗?

答:

1,was 6 官方已经不再提供支持,除非额外买服务。

2,从2018年4月开始,将不再支持Java SE 6 与 WebSphere Application Server 配合使用,建议更新为 Java SE 7 或 8

3,WAS V7.0.x 和 V8.0.x 和 Portal Server V8.0.x 于 April 30, 2018 End Of Service

低版本注意事项:

1,规划好磁盘空间,内存和CPU

2,规划好安装目录,尽量做到安装目录统一,规范。

3,了解好业务量大小,并发等等,方便你设计你的was部署方案。

4,调参数时注意结合实际,并没有完全统一的配置。

5,升级前当然要在测试环境测试后在惊醒生产,JDK版本,及WAS不通版本是有差异的。

巡检

1、针对WAS例行巡检,一般有哪些检查点?每个检查点判断的标准是什么?

例如:巡检WAS,需要检查文件系统、CPU是否高、线程过载、JVM性能、JDBC等方面是否正常。一般以磁盘空间未占满60%,CPU低,未发生线程过载等判断是否存在问题。

答:

1,WAS DM node server的进程状态,was自带状态命令。结合系统命令查看。

2,server的was_home/profiles/node/logs/server下:SystemOut.log SystemErr.log native_stderr.log native_stdout.log

3,was_home/profiles/node/logs/ffdc 日志

4,巡检需要查看JVM 参数设置、线程池参数设置,标准应该参照客户的规范或者以通用参数设置为标准,

5,如果有性能问题时需要查看系统运行情况:内存、CPU,如经常发生的内存泄露问题,有可能是堆内存(heap)或本地内存(native),这经常性的是一个过程性的问题,需要具体分析。

2、该如何分析Javacore(was中间件)

平常的故障中,一般都是需要分析javacore。也是够头疼的了。

一般在得到几个javacore文件之后,就想到可以用IBM Thread and Monitor Dump Analyzer for Java工具去协助分析,不过。。。好像没有找到如何分析的教程,看来很多文章,还是没有头绪。。

我们应该去关注那个Current Thread?还是Thread Detail里面的哪些线程捏?关注Blocked和僵死状态的线程??应该从那个开始着手呀?

答:

不能通过几句话说清楚点,需要知识积累,介绍几个文档:

1,IBM为javacore、GC和heapdump的提供了一个集成工具,叫IBMSupport Assistant

2,?uid=swg21181068#2.1.1

3,IBMJava626.pdf 这本书去去看看,了解清楚了JVM。

3、我们ERP中WAS版本比较低,JVM设置256-1280,几乎每个月总会有JVM宕机重启发生,这正常吗?

WAS版本5.1。JVM宕机重启原因大多是由于内存溢出导致,曾经试着给堆扩容至2048,仍会有宕机发生,从网上搜了不少资料,有人也建议设置定时重启,这正常吗?不能从根本是杜绝WAS宕机重启吗?

答:

1,首先你需要确认OOM是因为内存不够导致内存溢出还是因为应用代码不规范存在内存泄露。

2,内存也不是越大越好,需要和你你自己的环境。

3,JVM参数配置需要看你OS 平台 32 位有限制,64位理论上来说没有限制,但是考虑到GC时间 最好不要调的过大,而最小JVM内存如果太小则会频繁GC。

4,可以看下应用是否有内存泄露,注意下GC日志,分析下。

监控

1、WAS JVM使用率该如何合理监控?

如果只是监控WAS HEAP USED%,那告警频率太高,如果开启了GC,那么GC频率结合WAS HEAP USED%是否是个好的监控方法?那么GC频率的阀值该如何设置?

答:

本站推荐
热门文章
标签