电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

NC5X NMC_3_培训.ppt

NC5X NMC_3_培训.pptNC5X NMC_3_培训.pptNC5X NMC_3_培训.pptNC5X NMC_3_培训.pptNC5X NMC_3_培训.pptNC5X NMC_3_培训.ppt
NC性能监控系统NCMonitorCenter用友软件股份有限公司NMC概述NMC部署NMC启动NMC进程监控NMC线程监控NMC数据库监控NMC日志抽取NC日志录制NMC日志分析NMC消息中心NMC补丁管理主要内容NMC概述对于NC这样一个复杂庞大的系统而言,监控体系非常重要而且富于挑战性。主要表现如下几点:1.NC是多层架构的系统,涉到到客户端,网络,操作系统,中间件,数据库.....系统可能出现在任何一点出现异常。2.缺乏离线分析定位的能力。大量的问题只能通过问题再现等方式在线定位。这就要求客户配合,可能还要反复的搭建环境。效率低下,限制多多。3.有很多问题只有专家级的人才能定位。对于不非常了解系统的管理员不知如何下手。4.日志作为分析问题很重要的部件,但其数量庞大,分析起来费时费力,不得要领。5.系统缺乏自我纠正的能力。某个服务器一旦出现问题,比如长时间不响应,只有客户报告后,逐个端口检查一遍才能确定那个服务器有问题,而且只能管理员手工解决。6.缺乏系统评估的客观数据。对于系统的吞吐量,cpu,内存,并发量,每次远程调用的性能指标等缺乏必要的客观数据。7.监控目标繁多,缺乏统一集成的监控平台。.......其重要性表现为:1.好的监控系统可以快速发现,定位问题,大幅度降低维护成本,提高管理效率,提高客户满意度。2.在测试阶段,可以快速的发现并定位问题,提高产品质量。3.提供系统自我恢复能力。提高系统可靠性NMC概述对于上述问题,nmc智能监控系统主要提供如下特性:1.提供一种集成的监控界面。涵盖了作为问题关注者需要关注的各个方面。使用者可以从多个角度对系统监控和分析。2.提供一种端到端的监控体系。监控可以从客户端到应用服务器到数据库都可以无缝监控。3.各个层次可以相互穿透.追踪整个操作流程.进程可以穿透到线程,线程可以穿透到数据库,数据库可穿透到线程。各个层次的部件可以相互穿透。客户端端可以主动录制自己的操作日志。操作日志本身就提供了多层次的数据。以远程调用为核心,提供服务器端的性能统计,可以联查到客户端的远程调用堆栈,可联查数据库的操作及性能统计。4.支持插件的可扩展架构,基于服务中心模型集群架构只要满足客户端或者服务器端的规范的插件就可以很容易地集成进来。监控服务可以部署到任何一个服务器上,一个监控域可以同时监控多个服务器。在一个监控域内,所有的服务和配置都统一管理,统一发布。大大提供系统的可监控性和可管理性。5.主动监控系统提供了一种消息机制。任何监控插件都可以在系统异常情况下可向服务中心发送消息。消息中心根据每个服务的配置对消息进行报警或者生成快照。这些报警信息或者快照可以通过短信或者邮件通知管理员。管理员利用这些消息可快速采取措施。6.主动管理,自我纠正系统提供了一种机制,监控到系统处于不健康的状况对系统进行管理。管理的动作是可以配置的。比如,自动重启,或者生成dump.系统还提供了n+1standby的支持。即有一个standbyserver,在某个server重启时,替换此server继续工作。7.强大的日志抽取和分析能力可用非常灵活的条件对多个服务器上的日志抽取。包括nc日志,jvm,cpu,memory等日志。并且提供了大量的日志分析脚本来分析日志。操作员也可主动录制自己的操作日志。可将日志打包后发给相关人员进行分析。8.同时支持实时监控和事后分析。采用监控服务提供的安全机制不用泄漏目标系统的安全信息提供从操作员——NC应用系统服务器——数据库全程实时细粒度监控与预警、以及日志分析细粒度:提供每一个操作员实时及历史的操作信息与状态跟踪…预警:提供超过预定义阀值的信息预警:如长时间任务、长sql、消耗过多内存、cpu、中间件server健康状态等日志分析:提供日志筛选、分析统计工具`MIDTIERMGTSvrMIDTIERDB任一操作员操作实时监控、历史操作查询NC集群任务、资源实时监控、统计与审计数据库实时sql、会话、资源监控NMC概述NMC架构NCServer1NCServer2NCServerNNC集群MonitorClientMonitorServer服务中心MW线程监控进程监控DATABASE数据库监控CPU监控内存监控注册日志抽取nc日志,cpu日志,jvm日志….MonitorServer1CPU监控内存监控日志抽取CPU监控内存监控日志抽取VTUNEVTUNE服务注册中心VTUNEMonitorServerN消息中心Http安全检查监控域NMC部署NCServer1MonitorServer(服务中心)NCServer2MonitorServer1NCServerNMonitorServerNNC集群MonitorClient1MonitorClient2MonitorClient3典型模式:监控服务中心部署在NC的服务器上,监控服务也同时部署在NC的服务器上。NMC部署ServerHost10.10.71.156服务节点master、ncMem01、ncMem02应用代码目录D:\ufsoft\nc56\APACHE目录D:\IBM\HTTPServer中间件was.DMserver启动在10.10.71.156,管理端口为8879数据库ORACLE部署环境(以NC+WAS垂直集群为例)NMC部署部署步骤1:配置服务中心:在server上启动D:\ufsoft\nc56\nmc\server\configure.bat,设置servicecenter,。这里将服务中心设置为10.10.71.156,管理员默认为admin,密码为admin,端口9999为系统默认,尽量不要改,如果改为其他端口,需要同时改D:\ufsoft\nc56\nmc\server\conf\server.xml文件修改对应的端口。同时修改%nchome%/resources/monitor.properites对应的端口。LocalServer中的host可以设置为127.0.0.1或本机的IP地址10.10.71.156。D:\ufsoft\nc56\nmc\server\configure.bat命令的运行界面如下:说明:运行configure.bat命令需要设置JAVA_HOME:setJAVA_HOME=JDK存放的目录,如:setJAVA_HOME=../../ufjdk或setJAVA_HOME=D:\ufida502\nchome\ufjdk同样,其它命令,如startmonitor.bat,MonitorConsole.bat等也需要同样的设置。NMC部署NMC部署如果是水平集群,则在从服务器上运行..\nmc\server\configure.bat命令,需要将ServerCenter中Host项的值,设置为主服务器的IP地址如:10.10.71.156.LocalServer中的host项的值是从服务器的IP地址如10.10.71.157或127.0.0.1NMC部署设置WASDM服务器,在D:\ufsoft\nc56\nmc\server\configure.bat的运行界面上的属性配置(monitor.properites)的tab页中修改属性nodeagenthost,nodeagentport。如果不是WAS中间件,则将nodeagenthost设置为空。如果monitorserver监控工具安装在单独的一台机器,则同样需要nodeagenthost设置成集群中WASDM服务器的IP地址。如果是单个server,没有dm,nodeagent,则查看这个IBM\AppServer\profiles\AppSrv01\logs\AboutThisProfile.txt中SOAP连接器端口或者通过管理控制台得到SOAP_CONNECTOR_ADDRESS。将nodeagentport设置为这个端口。默认应该是8879(如果8879已经被占用,则为8880等)。NMC部署3:确保D:\ufsoft\nc56\ierp\bin\prop.xml文件的配置和实际环境的配置相同.特别是中间件为websphere的情况下,prop.xml可能会存在和实际环境不同的情况,因为监控工具通过读这个文件来获取中间件和数据库的信息,所以,必须要确保这个文件的配置和真实环境的配置相符(包括中间件,数据库,webserver).可以通过ncsysconfig.bat对环境配置。另外,如果上图中的propfile的值不是相对路径../../ierp/bin/prop.xml,是指定的绝对路径,则需要用\\作为分隔符如d:\\monitornc56ok\\ierp\\bin\\prop.xml,否则启动时会提示找不到文件。特别说明:如果在WAS管理控制台中更改了单个Server或者集群中某个成员Server的端口,一定要在NC的prop.xml文件中修改该对应的端口。否则在NC5.5监控工具的客户端,将会检测不到该端口对应的Server信息。WEB服务器的地址也要配置,不能为空。如下图NMC部署4:消息自动发送邮件的功能邮件配置:邮件服务器(SMTP)可以是任何有效的邮件服务器,如mail1.ufdia.com.cn但是,帐号和密码填写针对“发送邮件服务器”有效的帐号和密码。NMC部署邮件发送的地址:在下面属性配置页签,配置消息自动发送到的邮件地址。说明:邮件发送的地址是填写任何有效的邮件地址。如:xxx@ufida.com.cn或xxx@sina.comNMC启动5:在server上启动D:\ufsoft\nc56\nmc\server\startmonitor.bat如果是水平集群,则主服务器启动后,再在从服务器上对应目录运行startmonitor.bat6:启动客户端.可以直接访问http://10.01.71.156:9999/nmc/client.exe下载客户端。也可以将D:\ufsoft\nc56\nmc\client拷贝到任意一个客户端机器.执行D:\ufsoft\nc56\nmc\client\monitorconsole.bat,第一次执行在没有监控域的情况下,需要添加监控域,监控域名称任意,服务中心地址为:10.10.71.156,端口9999,用户名admin,密码xxxxx,(默认是admin)。说明:启动monitorconsole.bat需要设置JAVA_HOME,如setJAVA_HOME=D:\ufida502\nchome\ufjdkNMC启动启动后的客户端:选择一个监控域,工具->overview,或者第一次登陆到监控系统的第一个页面,提供一种整个监控系统的概要信息。主要功能:1.展现整个系统的部署方式.包括apache,中间件,数据库.2.动态显示中间件的和数据库的性能指标.中间件动态柱状图显示jvmheap信息,和web线程信息,数据库柱状图显示数据库活动会话的个数.3.报警.如果某个server有报警信息,则相应的服务器会变红,鼠标点上去会显示报警信息.NMC进程监控进程监控服务主要实现如下功能:1:定时对中间件状态检查,包括端口响应的时间和内存使用的情况,如:当发现中间件不能正常工作,则可以对其自动重启。2:定时将jvmheap的使用情况和中间件webthread,serivcethread信息写入日志,通过日志抽取和分析的功能可以对系统进行性能评估和性能诊断。3:定时更新数据库连接池的信息和数据库活动会话的信息。4:如果是WAS中间件,提供对中间件的管理功能,比如重启,生成javacore,heapdump,设置定时重启等。通过上面的进程监控功能,可以获取NC服务的运行状态、Webcontainer线程池的大小、当前远程调用线程数、当前后台服务的线程数、Jvmheap的max值、Jvmheap当前的free值、Jvmheapused值、数据库连接池的大小、数据库的活动会话数等,同时根据需要直接在监控工具中定时、关闭和启动NC服务等。NMC进程监控NMC线程监控线程监控包括调试模式的设置,实时线程信息的跟踪,穿透到数据库,联查操作员信息,每个线程的性能统计信息等。通过这些信息,可以知道线程中SQL的执行时间、从数据库中读取数据到应用服务器的时间、数据从应用服务器传到客户端的时间、发起远程调用的操作员及IP、线程的堆栈、SQL的堆栈等.这样就可以判断出是个哪个SQL运行耗时,时间是耗在网络上还是数据库读取上,是哪个操作员正在执行的业务,从而可以从业务、网络或SQL上进行优化。线程监控ALL是查看所有中间件的线程。线程监控某个具体的服务,如ncMem02是只查看ncMem02上的线程.NMC线程监控监控设置:1:全局调试开:除服务线程外的所有的线程默认都是调试模式.2:全局调试关:所有的线程默认都不是调试模式.3:选择调试用户:将选择的用户的远程调用设置为调试模式.此时全局模式自动为关闭状态.4:取消用户调试:取消用户调试模式.5:服务线程调试开:在全局模式为开的情况下,服务线程处于调试状态.6:服务线程调试关:服务线程设置为非调试状态.打开全局调试开的方法:监控设置全局调试开NMC数据库监控1.提供一组数据库健康检查的服务.当发现数据库有性能问题时,发送快照或者报警消息.2.提供客户端可以调用的数据库操作方法.NMC日志抽取将NC的日志和监控服务产生的日志(比如:NCLOG,CPU,JVM,内存日志)抽取到本地数据库.同时提供一个客户端的工具,对本地的日志进行分析.NMC日志分析将NC的日志和监控服务产生的日志(比如:NCLOG,CPU,JVM,内存日志)抽取到本地数据库.同时提供一个客户端的工具,对本地的日志进行分析.NC日志录制登录NC后,打开NC客户端日志对话框。RemotelogLevel设置当前用户在服务器端的日志输出级别。ClientlogLevel设置当前用户客户端的日志输出级别。RemoteCall选项设置客户端日志是否输出远程调用堆栈,如果需要将服务器的日志和客户端的调用堆栈关联起来,则需要将remotecall选中。NC日志录制点击录制按钮开始录制日志。开始录制,此时,去做业务操作,录制过程中,键盘Shift+Print保存当前的界面图片。NC日志录制业务操作做完后,点击停止录制按钮。会有如上提示,录制即完成。录制的日志目录结构:%nc_client_home%/Recordlog/serverlog.log–服务器端日志%nc_client_home%/Recordlog/clienglog.log—客户端日志%nc_client_home%/Recoredlog/image/--客户端截频图片如下面是录制的日志信息:NMC导入录制的日志工具:日志数据库:点击重新导入或者导入NC日志,第一次导入需要选择导入日志目录。可以将上图提示的日志路径copy到导入文件目录,或者选择需要导入的日志目录(recordlog)或者文件。NMC消息中心后台的每个监控服务都可以产生监控消息,并将消息发送到消息队列.如:中间件一个WEB线程运行时间超过180秒仍没有结束则发送快照消息。中间件一个WEB线程执行的SQL最大数量1000,如果超过这个值,则发送快照消息。中间件一个线程最耗时的SQL耗时超过120,则发送快照消息。连接池使用超过70%,则发送快照消息。表空间使用率超过90%,则发送WARNING消息。active的回滚段超过90%,则发送WARNING消息等。消息服务定时从消息队列取到消息,根据消息的内容和服务对消息处理模式的配置,对消息生成快照或者只是作为一条报警消息保存到日志中。根据这些消息,就可以很方便的进行事后分析。这些消息包括:数据库、中间件、进程、cpu、内存等信息。消息由两部分组成:消息概要和快照。快照目前提供中间件线程快照和数据库的快照,根据快照和消息概要很容易进行深入分析系统问题。同时消息中心提供自动发送邮件的功能。消息及快照的生成过程:监控服务根据监控条件生成消息,消息处理服务定时从消息队列中读取消息,根据消息内容及快照项目,请求对应的服务生成快照信息,快照信息生成后返回给消息处理服务,然后消息处理服务写到快照文件中。monitor.properties监控条件消息队列生成消息消息处理服务请求生成快照dbmonitor数据库监控服务mwmonitor中间件监控服务processmonitor进程监控服务cpumonitorCPU监控服务memorymonitor内存服务messageprocessor消息处理监控服务……………返回快照信息定时读取消息services.xml快照项目快照文件邮件地址NMC消息中心从图可以看出,已经生成了快照,选中该条快照,则下面的快照栏中就会显示出快照出的对应文件,双击快照栏中的某一行就可以看到相应的信息。如图是一个线程的快照信息。NMC补丁管理补丁管理是系统维护非常重要的工作。目前NC补丁过程存在如下问题:1.打补丁的方式效率低,容易出错。特别是在集群环境下更是如此。2.没有补丁档案。导致整个系统维护混乱.3.频繁的补丁验证,需要快速环境还原,但系统还原效率低,甚至经常忘记备份而无法还原。4.打补丁的历史操作没有日志可查。导致诊断问题和系统维护时无据可查。管理员对目前系统的补丁状况没有直观的了解。5.因为各种原因,服务器间代码版本存在不一致的情况,导致客户端重复下载代码,增加网络流量。针对以上问题,补丁管理实现以下目标:1.规范补丁过程,提供快速打补丁的机制,支持远程集中打补丁。2.提供补丁可回滚的机制。3.补丁档案的管理。实现补丁的集中管理。4.补丁操作日志的生成和查询。5.提供一个后台服务监控服务器间的代码版本的一致性。并且主动发送报警。主要功能:补丁上传:要保证补丁的规范性。不符合规范的的无法上传。补丁上传后,补丁将加入在servicecenter的上的补丁档案库。补丁下载:从补丁档案列表中选择需要下载的补丁,下载到本地。补丁删除:从补丁档案列表中选择需要删除的补丁。删除。注意删除后不可恢复。档案查询:可以按照时间,模块,是否应用等条件查询补丁档案。NMC补丁管理NMC案例案例:某项目时常出现有几分钟登录不了NC问题描述:用户反映,NC在适用的过程中,时常出现登录不了NC的现象,出现这样的情况时,顾问重新启动一下WAS中间件即可,但是在月末结帐的高峰期,重新启动中间件影响很大。根据用户及顾问的描述,在系统上查找原因,但是没有找到相关信息,于是决定在用户的系统上安装NMC监控工具,NMC监控工具部署好后,月末的早上9:00左右,顾问反映登录NC出现登录不了,过了几分钟后正常。于是,我立刻收集了NMC的监控信息,问题很快找出并解决。问题分析及解决方案如下。NC版本为NC502问题分析:NMC工具信息如下:早上8:55分时,NC集群中的成员ncMem05出现了不响应的情况,master成员的线程状态也处于等待状态。此时NC集群中的成员ncMem05有5000ms(5秒)没有响应,其它成员也出现类似情况,于是NMC性能监控系统自动重新启动WAS集群。NMC案例案例:某项目时常出现有几分钟登录不了NC问题分析:从下面的信息可以看到WAS服务器不响应之前正在做的操作:IUFO报表计算,但是在处于等待状态.$msg=thread=WebContainer:13status=WAITINGelapsetime=54164916operator=anonymousremoteAddr=10.27.11.59:36518remoteCallMethod=invokeservlet-com.ufsoft.iuforeport.tableinput.TableInputOperServlet-com.ufsoft.iuforeport.tableinput.TableInputOperServletsqlcosttime=5;readresulttime=0;readrownum=28;writetoclienttime=0;writetoclientbytes=0;readfromclientbytes=0;notclosedconnectioncount=0#threadstackjava.lang.Object.wait(NativeMethod)java.lang.Object.wait(Object.java:199)nc.ui.iuforeport.repcalc.RepCalcManager.requestQueue(RepCalcManager.java:153)nc.ui.iufo.input.InputUtil.doCalQueue(InputUtil.java:110)com.ufsoft.iuforeport.tableinput.TableInputOperServlet.performTask(TableInputOperServlet.java:428)master服务器上出现的的waiting状态:java.lang.Object.wait(NativeMethod)java.lang.Object.wait(Object.java:199)nc.ui.iuforeport.repcalc.RepCalcManager.requestQueue(RepCalcManager.java:153)nc.ui.iufo.input.InputUtil.doCalQueue(InputUtil.java:110)com.ufsoft.iuforeport.tableinput.TableInputOperServlet.performTask(TableInputOperServlet.java:428)com.ufsoft.iuforeport.tableinput.TableInputOperServlet.doPost(TableInputOperServlet.java:176)NMC案例问题解决方案:根据上面的情况及堆栈信息:………………..nc.ui.iuforeport.repcalc.RepCalcManager.requestQueue(RepCalcManager.java:153)nc.ui.iufo.input.InputUtil.doCalQueue(InputUtil.java:110)……………………可以看出是IUFO报表计算时出现等待状态,当月末很多用户同时登录IUFO作报表计算时,就会出现大量的等待,造成服务器响应不过来.此时,NMC性能监控系统发现WAS集群中的成员不响应,就会重新启动WAS相应的成员SERVER,在WAS重新启动的几分钟内,会出现登录不了的现象,也是早上9:00左右的几分钟出现的情况。处理方案:(一)NCIUFO开发根据此种情况提供了优化补丁。需要打上补丁。(二)NC和IUFO要分开。这样IUFO报表计算时会减少对NC正常业务的影响。IUFO需要单独的一台服务器。

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

NC5X NMC_3_培训.ppt

您可能关注的文档

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信