排除汤姆猫错误的步骤

ps-ef | grep java或jps –lvm 查看java pid进程

netstat –lntup | grep java 查看java 端口有没有启动

查看 tomcat 日志 tailf /application/tomcat/logs/catalina.out

show-busy-java-threads.sh 打印系统排名前五的java进程,查看那个进程占用内存高。

tomcat java远程监控

下载jkd http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

在C:\Program Files\Java\jdk1.8.0_31\bin下 找 jconsole.exe

开启tomcat远程监控功能

  1. vim /application/tomcat8_1/bin/catalina.sh +97

  1. CATALINA_OPTS="$CATALINA_OPTS
  2. -Dcom.sun.management.jmxremote
  3. -Dcom.sun.management.jmxremote.port=12345
  4. -Dcom.sun.management.jmxremote.authenticate=false
  5. -Dcom.sun.management.jmxremote.ssl=false
  6. -Djava.rmi.server.hostname=10.0.0.17"

做解析不然报错

  1. 需要做解析 echo     "10.0.0.17 web03 " >> /etc/hosts

重启汤姆猫查看端口

  1. /application/tomcat8_1/bin/shutdown.sh
  2. /application/tomcat8_1/bin/startup.sh
  3. netstat -tunlp|grep 12345
  4. tcp6 0 0 :::12345 :::* LISTEN 24388/java

用jconsole连接

端口12345

jvisualvm远程链接

右键添加主机

右键添加jvm

zabbix 监控 tomcat

zabbix需要开启java监控

修改zabbix-server配置文件

  1. sed -i -e '220a JavaGateway=127.0.0.1' -e '236a StartJavaPollers=5' /etc/zabbix/zabbix_server.conf

JavaGateway=127.0.0.1 网关地址(本机ip地址)

StartJavaPollers=5 java线程

在服务端安装zabbix_java_gateway

需要安装jdk(openjdk)

yum 安装自动安装

启动 zabbix_java_gateway

  1. systemctl start zabbix-java-gateway.service
  2. netstat -tunlp|grep java

tomcat开启远程监控功能(每个实力都要做)

新键主机

搜索jmx 添加两默认模板

jmx连接了

Tomcat安全优化

降权启动

先杀掉java进程

[root@web03 ~]# pkill java

[root@web03 ~]# pkill java

  1. [root@web03 ~]# useradd tomcat 新建一个用户
  2. [root@web03 ~]# cp -a /application/tools/tomcat8_1 /home/tomcat/ 把测试文件复制到 home目录下
  3. [root@web03 ~]# chown -R tomcat.tomcat /home/tomcat/tomcat8_1/ 给文件权限
  4. [root@web03 ~]# su -c '/home/tomcat/tomcat8_1/bin/startup.sh 'tomcat 以tomcat用户启动
  5. Using CATALINA_BASE: /home/tomcat/tomcat8_1
  6. Using CATALINA_HOME: /home/tomcat/tomcat8_1
  7. Using CATALINA_TMPDIR: /home/tomcat/tomcat8_1/temp
  8. Using JRE_HOME: /application/jdk
  9. Using CLASSPATH: /home/tomcat/tomcat8_1/bin/bootstrap.jar:/home/tomcat/tomcat8_1/bin/tomcat-juli.jar
  10. Tomcat started.
  11. [root@web03 ~]# ps -ef|grep tomcat 查看tomcat进程用户

其他安全优化都在http://www.cnblogs.com/jksbaduen/p/7903539.html

Tomcat优化

上策: java 代码优化

中策: jvm 优化机制 垃圾回收机制,把不需要的内存回收。

优化jvm—就是优化垃圾回收机制

下策: 买买买加内存

下下策: 定时重启tomcat

简单的jvm优化

1G内存优化

内存给tomcat 75%左右或者 3/4

修改核心配置文件

  1. vim/home/tomcat/tomcat8_1/bin/ catalina.sh +97

插入下面的代码

  1. JAVA_OPTS="-Djava.awt.headless=true?-Dfile.encoding=UTF-8?-server?-Xms800m?-Xmx800m?-XX:NewSize=400m?-XX:MaxNewSize=400m?-XX:PermSize=400m?-XX:MaxPermSize=400m"
  1. server:一定要作为第一个参数,在多个CPU时性能佳
  2. -Xms:初始堆内存Heap大小,使用的最小内存,cpu性能高时此值应设的大一些
  3. -Xmx:初始堆内存heap最大值,使用的最大内存
  4. 上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半。
  5. -XX:PermSize:设定内存的永久保存区域
  6. -XX:MaxPermSize:设定最大内存的永久保存区域
  7. -XX:MaxNewSize:
  8. -Xss 15120 这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k.
  9. +XX:AggressiveHeap 会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。
  10. -Xss:每个线程的Stack大小
  11. -verbose:gc 现实垃圾收集信息
  12. -Xloggc:gc.log 指定垃圾收集日志文件
  13. 、4分之一
  14. -XX:+UseParNewGC :缩短minor收集的时间
  15. -XX:+UseConcMarkSweepGC :缩短major收集的时间

重启服务

  1. su -c '/home/tomcat/tomcat8_1/bin/ shutdown.sh ' tomcat
  2. su -c '/home/tomcat/tomcat8_1/bin/ startup.sh ' tomcat

Tomcat java zabbix 监控的更多相关文章

  1. Zabbix监控Tomcat案例

    今天在这里,我们来聊一聊JMX监控方式, JMX(java管理扩展程序)是java平台上为应用程序,设备,系统等植入管理功能的框架,JMX可以跨越一系列不同的系统平台,更加灵活的服务管理应用: 在za ...

  2. zabbix监控tomcat

    服务端配置修改 编译zabbix的时候需要添加参数--enable-java --enable-java 修改zabbix_java配置文件 vim /usr/local/zabbix-2.4.6/s ...

  3. 如何监控 Tomcat?Zabbix 与 Cloud Insight 对比

    JVM 监控工具有很多,像命令 jstat,jmap,jstack,jinfo 可以根据不同需求查看不同的系统信息,还有图像化界面 jconsole,都是很方便的工具.这些可以参考 JAVA自带监控工 ...

  4. Tomcat 常规配置并通过zabbix 监控 jvm状态

    一:jdk和tomcat基础 apache有两种方式运行php,一是使用模块,二是使用fastcgi nginx也可以通过fastcgi处理动态请求,也可以转发至tomcat tomcat监控主要是监 ...

  5. zabbix监控自动发现监控tomcat(V1)

    背景说明: 由于zabbix监控使用自带的模版,只能监控主机上只有1个tomcat的场景适合,虽然网上很多朋友都是在每个监控项上面添加一个空格来解决问题.但是个人感觉这种方法还是蛮麻烦的,所以写一篇使 ...

  6. Zabbix应用五:Zabbix监控多Tomcat

    利用Zabbix Trapper方式监控多Tomcat实例 Zabbix自带的模版(JMX Tomcat.JMX Generic)默认只能在一台机器上监控一个tomcat实例(因为监控项中的key不能 ...

  7. Zabbix监控Tomcat,Redis

    一 Tomcat监控 1.1.1 Tomcat 端配置 JMX 编辑catalina.sh文件,配置如下: CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.m ...

  8. Zabbix 监控PHP-FTPM、Tomcat、Redis应用

    一.zabbix 监控 PHP-FPM应用实战Nginx+PHP-FPM是目前最流行的LNMP架构,在基于PHP开发的系统下,对这些系统性能的监控,主要是关注PHP-FPM的运行状态,那么什么是PHP ...

  9. zabbix监控nginx,mysql,java

    zabbix 支持的主要监控方式(1)agent代理程序 在Agent监控方式下,zabbix-agent会主动收集本机的监控信息并通过TCP协议与zabbix-server传递信息.Agent 监控 ...

随机推荐

  1. week3编程作业: Logistic Regression中一些难点的解读

    %% ============ Part : Compute Cost and Gradient ============ % In this part of the exercise, you wi ...

  2. 内存,缓存,cpu,硬盘关系

    RAM(random access memory)即随机存储内存,这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序.我把它叫耗电存储器 ROM(Read-Only Memory)即只 ...

  3. 在 .NET Core项目中使用UEditor图片、文件上传服务

    在.NET Framework中使用UEditor时,只需要将UEditor提供的后端服务,部署为一个子程序,即可直接使用文件上传相关的服务,但是UEditor官方并未提供.Net Core的项目,并 ...

  4. Angular动态表单生成(八)

    动态表单生成之拖拽生成表单(下) 我们的动态表单,最终要实现的效果与Form.io的在线生成表单的效果类似,可以参考它的demo地址:https://codepen.io/travist/full/x ...

  5. 关于Android

    1:Handle与多线程 Handle是什么?官方说明:handle是Android给我们提供用来更新UI的一套机制,也是一套消息处理的机制.可以看出handle主要就是两个功能,一个是更新UI,另一 ...

  6. webpack初起步

    webpack 用于编译 JavaScript 模块.一旦完成安装,就可以通过 webpack 的 CLI 或 API 与其配合交互. 首先创建一个目录,进入目录中,初始化npm 然后本地安装webp ...

  7. (一)U盘安装ubuntu18.04.1

    我选择安装的ubuntu18.04.1因为我的显卡是Amd RX470 ,Amd官方所兼容的版本是18.04.1, 跳过的坑:用18.04.2 18.04.3 安装amdgpu驱动各种报错 0X:下载 ...

  8. TI DSP 6657 SRIO 简介

    目录 TI DSP 6657 SRIO 简介 SRIO 协议介绍 RapidIO 基础 TI DSP 6657 SRIO 简介 SRIO 协议介绍 TI 的 KeyStone 系列设备中实现了 Rap ...

  9. 20155305mypwd的实现和测试

    20155305mypwd的实现和测试 pwd命令及其功能 命令格式: pwd 命令功能: 查看"当前工作目录"的完整路径 常用参数: 一般情况下不带任何参数 作业mypwd代码实 ...

  10. 微信小程序:实现日历功能

    一.功能描述 实现日历功能 二. 代码实现 1. index.wxml <view class='wrap'> <view> <view class='date-show ...