在Linux服务器上安装JDK,resin实现远程连接Jconsole

      前一段时间公司要求能监控Linux服务器上的Java项目,最后将这个任务竟然分配在我的头上,对于我这个Linux啥都不懂的人来说真的是一个巨大的挑战。趁着还记得大体的过程,就想将这个过程给纪录下来。

大体上分为三步:1.安装JDK   2.安装resin   3.连接Jconsole


1.安装JDK

  1.1先到http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html上下载JDK安装包
     我下的jdk-8u31-linux-x64.tar.gz这个安装包(在下安装包之前要同意一个Oracle的协议)
  1.2用sudo rz这个命令将你下下来的安装包上传到Linux服务器上,如果你上传到根目录下的,最好是将这个安装包复制到usr/local目录下,
     使用Linux命令:
     mv jdk-8u31-linux-x64.tar.gz /usr/local/
     然后解压这个安装包,使用Linux命令:
     tar xzvf jdk-8u31-linux-x64.tar.gz
  1.3环境变量配置,编辑/etc/profile 配置文件,在其最后面增加java的环境变量配置:/jdk1.8.0_31/lib/visualvm/etc
     在用vi命令编辑profile文件时,Linux初学者可能还不熟用
   sudo vi profile进入编辑文件后如出现
   Press ENTER or type command to continue
   则按回车然后按方向键“下”直到umas k022前一行
   按字母o进入编辑状态
     在umas k022前添加如下内容:
     JAVA_HOME=/usr/local/jdk1.8.0_31
     PATH=$JAVA_HOME/bin:$PATH
     CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
     export JAVA_HOME
     export PATH
     export CLASSPATH
   输入环境变量内容
   回车,按几次ESC键,直到听到"嘀"声,输入
   :x 然后回车
   即保存退出

   1.4安装完成后,查看JDK是否安装成功,输入

          java -version

         你就可以看到这样一行信息了:

          java version "1.8.0_31"
         Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
         Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)

         如果还不能确认是否安装成功,我们可以写个HelloWorld运行一下

         我们可以先在本地写个HelloWorld.java文件,再用sudo rz 将文件传到服务器上。

  编译源文件:javac HelloWorld.java  执行java字节码 ava HelloWorld,最后会输出HelloWorld

  那么我们的JDK就安装成功了。

2.安装Resin

  2.1在http://caucho.com/products/resin/download下载resin
  2.2在/usr/local/下创建文件夹resin,Linux命令是:mkdir resin ,将下载下来的安装包使用Linux命令: sudo rz 上传到 /usr/local/resin文件夹下
  2.3解压下载下来的安装包,使用到的Linux命令式:tar xzvf resin-pro-4.0.40.tar.gz
  2.4进入到resin-pro-4.0.40文件夹下 cd /usr/local/resin,设置JDK,执行命令 sudo ./configure --with-java-home=/usr/local/jdk1.8.0_31
     执行make 和make install 命令

  2.5启动resin服务器:

   /usr/local/resin/resin-4.0.43/bin/resin.sh stop

   /usr/local/resin/resin-4.0.43/bin/resin.sh start

   你会看到:     

   [root@wap bin]# /usr/local/resin/resin-4.0.43/bin/resin.sh stop
   Resin/4.0.43 stopped for watchdog at 127.0.0.1:6600

   [root@wap bin]# /usr/local/resin/resin-4.0.43/bin/resin.sh start
   Resin/4.0.43 launching watchdog at 127.0.0.1:6600
   Resin/4.0.43 started -server 'app-0' with watchdog at 127.0.0.1:6600

   这样resin就启动起来了

  2.6将工程文件部署在resin服务器上,说实在的这个我也不会,我原来也试着将项目部署上去,可惜失败了。我是将另一台服务器上的配置文件拷   贝过来,没有用到resin自带的配置文件。看来还是自己的技术不到家。

  注意:resin有免费版的和收费版的,resin-pro-4.0.40.tar.gz就是收费版的,只要看到带pro就是收费版的,我当初坑爹的就是下载了一个收费版的。在启动resin的时候,查看它的日志,它总是报缺少通行证的错误

3.连接Jconsole

 3.1设置权限  

 首先进入到resin目录下的conf文件中

 cd /usr/local/resin/resin-4.043/conf/     (这个resin是根据自己安装的路径的)

 再复制一份文件到这个目录下并重命名

 cp /usr/local/jdk1.8.0_31/jre/lib/management/jmxremote.password.template jmxremote.password

 cp /usr/local/jdk1.8.0_31/jre/lib/management/jmxremote.access jmxremote.access

 编辑jmxremote.access文件

 vi jmxremote.access

 按o进入编辑状态

 在最后一行加上

 test readwrite

 编辑mxremote.password文件

 vi mxremote.password

 在最后一行加上

 test 123456

 3.2编辑resin.xml文件,在<service-default>节点下

 <jvm-arg>-Dcom.sun.management.jmxremote.port=12345</jvm-arg>
 <jvm-arg>-Dcom.sun.management.jmxremote.ssl=false</jvm-arg>
 <jvm-arg>-Dcom.sun.management.jmxremote.password=/usr/local/resin/resin-pro-4.0.40/conf/jmxremote.password</jvm-arg>
 <jvm-arg>-Dcom.sun.management.jmxremote.access.file=/usr/local/resin/resin-pro-4.0.40/conf/jmxremote.access</jvm-arg>
 <jvm-arg>-Dcom.sun.management.jmxremote.authenticate=true</jvm-arg>
 <jvm-arg>-Djava.rmi.server.hostname=192.168.106.207</jvm-arg>

 12345是端口号, 192.168.106.207是你要连接的Linux服务器的IP地址

 重启服务器

 /usr/local/resin/resin-4.0.43/bin/resin.sh stop

 /usr/local/resin/resin-4.0.43/bin/resin.sh start


 在配置完后,你需要输入hostname -i,看是不是显示192.168.106.207,如果显示的是127.0.0.1。那么你就到/etc 下编辑hosts这个文件

   vi hosts 

  添加 192.168.106.207 localhost.localdomain localhost

  再次重启一下resin

  查看12345这个端口是否被监听

  lsof -i|grep 12345

  如果你发现这个端口被监听了,哈哈说明你成功了90%。

4 连接Jconsole

 在本地电脑运行/usr/local/app/jdk1.6.0_21/bin/jconsole

 远程连接地址  192.168.106.207:12345

用户名:test  密码:123456

这样就连接成功了。


 这个网上也有很多资料,但当你亲自去做的时候你会发现遇到的问题有很多。由于resin4.0以后的版本和前面的在配置文件上有很大差别。以前resin的配置文件是resin.conf。现在resin的配置文件却是resin.xml。里面的结构也有很大的变化。我在查看resin.xml文件的时候发现竟然没有<server-default>节点,这给我带来很大的问题。我就不知道你们的rensin.xml文件中是否带<server-default>节点.因为我们要在<server-default>节点下添加一些参数。

   如果你找了很多资料发现自己都无法连成功,不用急,像我这种原来Linux命令啥都不懂的都连接成功了,虽然成功后我发现Jconsole虽然没啥用,可能是我对这个工具不太熟悉吧,还不了解它的强大在哪里。我相信你也是可以连接成功的。其实我更推荐你用JProfile这个工具来监听Java项目,因为这个项目很强大,而且很细致。

 

 




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值