排除汤姆猫错误的步骤

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. 20155314 2016-2017-2 《Java程序设计》实验四 Android程序设计

    20155314 2016-2017-2 <Java程序设计>实验四 Android程序设计 实验任务 基于Android Studio开发简单的Android应用并部署测试 了解Andr ...

  2. vagrant之道(即其工作流程)

    原文http://mitchellh.com/the-tao-of-vagrant The Tao of Vagrant 在安装vagrant或了解它如何工作之前,了解vagrant在实际工作环境中的 ...

  3. iptables基础配置

    启动指令:service iptables start   重启指令:service iptables restart   关闭指令:service iptables stop   规则相关配置:/e ...

  4. BAT面试总结——iOS开发高级工程师

    序言 之前也面试别人,现在轮到自己找工作,怎么说呢,现在轮到自己出去面试,怎么说呢,其实还是挺紧张的,原以为自己不会因此紧张或者焦虑,实际上,还是有的,在没找到合适的工作的时候,甚至晚上有点睡不着觉, ...

  5. 重学Verilog(3)——参数化模块

    1.parameter方法 首先有这样一个模块 module half_adder(co,sum,a,b); output co,sum; input a,b; ; ; and #and_delay ...

  6. LaTeX表格绘制备忘之Go语言中的几个表

      以下绘制的表格选自<Go语言 云动力>一书.这些表格比较简单,LaTeX语句也比较简单.   完整代码: % 博客园陆巍的博客 https://www.cnblogs.com/atth ...

  7. python基础学习1-生成器,递归函数

    #!/usr/bin/env python # -*- coding:utf-8 -*- li=[11,22,33,44,55] r= filter(lambda x:x>22,li) prin ...

  8. 【转载】MSXML应用总结 开发篇(上)

    原文:http://blog.sina.com.cn/s/blog_48f93b530100ejv9.html 本篇是接前文“MSXML应用总结 概念篇”写的,主要总结一下MSXML DOM接口的应用 ...

  9. 一维码EAN 13简介及其解码实现(zxing-cpp)

    一维码EAN 13:属于国际标准条码, 由13个数字组成,为EAN的标准编码型式(EAN标准码). 依结构的不同,EAN条码可区分为: 1.  EAN 13码: 由13个数字组成,为EAN的标准编码型 ...

  10. Kubernetes学习之路(十)之资源清单定义

    一.Kubernetes常用资源 以下列举的内容都是 kubernetes 中的 Object,这些对象都可以在 yaml 文件中作为一种 API 类型来配置. 类别 名称 工作负载型资源对象 Pod ...