设为首页 收藏本站
查看: 1003|回复: 0

[经验分享] CentOS 6.5上安装Resin 3.1

[复制链接]

尚未签到

发表于 2018-4-24 13:21:15 | 显示全部楼层 |阅读模式
  1、下载jdk和resin

[root@mylinux4 ~]# mkdir /opt/tools
[root@mylinux4 ~]# cd /opt/tools/
[root@mylinux4 tools]# wget http://www.caucho.com/download/resin-3.1.13.tar.gz
[root@mylinux4 tools]# ll
total 80384
-rw-r--r-- 1 root root 72036348 Oct  2 18:35 jdk-6u34-linux-x64.bin
-rw-r--r-- 1 root root 10273075 Oct  2 19:13 resin-3.1.13.tar.gz  (因为jdk需要到oracle官网下载,需要登录oracle账号,所以就不再说明下载过程了)

  2、安装jdk
[root@mylinux4 tools]# chmod +x jdk-6u34-linux-x64.bin
[root@mylinux4 tools]# ./jdk-6u34-linux-x64.bin
[root@mylinux4 tools]# ll
total 87592
-rw-r--r-- 1 root root  7374712 Oct  2 19:30 httpd-2.2.23.tar.gz
drwxr-xr-x 8 root root     4096 Oct  2 19:34 jdk1.6.0_34
-rwxr-xr-x 1 root root 72036348 Oct  2 18:35 jdk-6u34-linux-x64.bin
-rw-r--r-- 1 root root 10273075 Oct  2 19:13 resin-3.1.13.tar.gz
[root@mylinux4 tools]# mkdir -p /usr/local/jdk
[root@mylinux4 tools]# cp -a jdk1.6.0_34/* /usr/local/jdk/
[root@mylinux4 tools]# cd /usr/local/jdk
[root@mylinux4 jdk]# ls
bin        jre      README.html          src.zip
COPYRIGHT  lib      register.html        THIRDPARTYLICENSEREADME.txt
db         LICENSE  register_ja.html
include    man      register_zh_CN.html
[root@mylinux4 jdk]# /usr/local/jdk/bin/java -version
java version "1.6.0_34"
Java(TM) SE Runtime Environment (build 1.6.0_34-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.9-b04, mixed mode)  3、配置java环境变量
  [root@mylinux4 jdk]# echo '# Add java env below' >>/etc/profile
  [root@mylinux4 jdk]# echo 'export JAVA_HOME=/usr/local/jdk' >>/etc/profile
  [root@mylinux4 jdk]# echo 'export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib' >>/etc/profile
  [root@mylinux4 jdk]# echo 'export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin' >>/etc/profile
  [root@mylinux4 jdk]# echo 'export RESIN_HOME=/usr/local/resin' >>/etc/profile
  [root@mylinux4 jdk]# echo '# java env ended' >>/etc/profile
  [root@mylinux4 jdk]# tail -6 /etc/profile
  # Add java env below
  export JAVA_HOME=/usr/local/jdk
  export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
  export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
  export RESIN_HOME=/usr/local/resin
  # java env ended
  [root@mylinux4 jdk]# source /etc/profile
  处理完成之后,进行下面的测试:
  [root@mylinux4 jdk]# java -version
  java version "1.6.0_34"
  Java(TM) SE Runtime Environment (build 1.6.0_34-b04)
  Java HotSpot(TM) 64-Bit Server VM (build 20.9-b04, mixed mode)
  [root@mylinux4 jdk]# which java
  /usr/local/jdk/bin/java
  [root@mylinux4 jdk]# echo $JAVA_HOME
  /usr/local/jdk
  4、安装resin

[root@mylinux4 jdk]# cd /opt/tools/
[root@mylinux4 tools]# tar -zxf resin-3.1.13.tar.gz
[root@mylinux4 tools]# ll
total 87596
-rw-r--r--  1 root root  7374712 Oct  2 19:30 httpd-2.2.23.tar.gz
drwxr-xr-x  8 root root     4096 Oct  2 19:34 jdk1.6.0_34
-rwxr-xr-x  1 root root 72036348 Oct  2 18:35 jdk-6u34-linux-x64.bin
drwxr-xr-x 14 root root     4096 Oct  2 20:01 resin-3.1.13
-rw-r--r--  1 root root 10273075 Oct  2 19:13 resin-3.1.13.tar.gz
[root@mylinux4 tools]# cp -a resin-3.1.13 /usr/local/resin  resin如果不和apache配合生成模块,则不需要编译。

  5、配置resin
[root@mylinux4 tools]# cd /usr/local/resin/conf
[root@mylinux4 conf]# ll
total 48
-rw-r--r-- 1 root root 12216 Nov  9  2012 app-default.xml
-rw-r--r-- 1 root root  3007 Nov  9  2012 development.conf
-rw-r--r-- 1 root root   270 Nov  9  2012 fine.conf
-rw-r--r-- 1 root root   641 Nov  9  2012 minimal.conf
-rw-r--r-- 1 root root  9970 Nov  9  2012 resin.conf
-rw-r--r-- 1 root root  9970 Nov  9  2012 resin.conf.orig  查看一下默认配置中的server标签:

[root@mylinux4 conf]# sed -n '88,146p' resin.conf
    <server-default>
      <!-- The http port -->
      <http address="*" port="8080"/>
      <!--
         - SSL port configuration:
         -
         - <http address="*" port="8443">
         -   <openssl>
         -     <certificate-file>keys/gryffindor.crt</certificate-file>
         -     <certificate-key-file>keys/gryffindor.key</certificate-key-file>
         -     <password>test123</password>
         -   </openssl>
         - </http>
        -->
      <!--
         - The JVM arguments
        -->
      <jvm-arg>-Xmx256m</jvm-arg>  
      <jvm-arg>-Xss1m</jvm-arg>
      <jvm-arg>-Xdebug</jvm-arg>
      <jvm-arg>-Dcom.sun.management.jmxremote</jvm-arg>
      <!--
         - Uncomment to enable admin heap dumps
         - <jvm-arg>-agentlib:resin</jvm-arg>
        -->
      <!--
         - arguments for the watchdog process
        -->
      <watchdog-jvm-arg>-Dcom.sun.management.jmxremote</watchdog-jvm-arg>
      <watchdog-port>6600</watchdog-port>
      <!--
         - Configures the minimum free memory allowed before Resin
         - will force a restart.
        -->
      <memory-free-min>1M</memory-free-min>
      <!-- Maximum number of threads. -->
      <thread-max>256</thread-max>
      <!-- Configures the socket timeout -->
      <socket-timeout>65s</socket-timeout>
      <!-- Configures the keepalive -->
      <keepalive-max>128</keepalive-max>
      <keepalive-timeout>15s</keepalive-timeout>
      <!--
         - If starting bin/resin as root on Unix, specify the user name
         - and group name for the web server user.
         -
         - <user-name>resin</user-name>
         - <group-name>resin</group-name>
        -->
    </server-default>  然后重新配置该标签:

[root@mylinux4 conf]# sed -i '88,146d' resin.conf
[root@mylinux4 conf]# vi resin.conf
[root@mylinux4 conf]# sed -n '87,98p' resin.conf
    <server id='test' address='192.168.100.182' port='6911' watchdog-port="6921">
      <http address="*" port="8080" />
<jvm-arg>-Xmx256m</jvm-arg>  #最大堆大小
<jvm-arg>-Xss1m</jvm-arg>   #设置每个线程的stack大小
<jvm-arg>-Xdebug</jvm-arg>
<jvm-arg>-Dcom.sun.management.jmxremote</jvm-arg>
<memory-free-min>1M</memory-free-min>  #当jvm的内存小于这个指定值,resin服务会graceful重启,来释放泄露的内存空间
<thread-max>256</thread-max>  #最大线程数量
<socket-timeout>65s</socket-timeout>  #读写socket最大超时时间
<keepalive-max>128</keepalive-max>  #最大长连接数量
<keepalive-timeout>15s</keepalive-timeout>  #长连接超时时间
    </server>  

  6、启动resin

[root@mylinux4 conf]# /usr/local/resin/bin/httpd.sh -server test start
Resin/3.1.13 started -server 'test' for watchdog at 127.0.0.1:6921
[root@mylinux4 conf]#
[root@mylinux4 conf]# netstat -lntup |egrep "6911|6921|8080"
tcp        0      0 :::8080                     :::*                        LISTEN      1528/java           
tcp        0      0 ::ffff:192.168.100.182:6911 :::*                        LISTEN      1528/java           
tcp        0      0 ::ffff:127.0.0.1:6921       :::*                        LISTEN      1499/java  7、浏览器访问web页面
DSC0000.jpg

  这是默认的web页面,web文件默认路径为安装目录下的webapps/ROOT.
  [root@mylinux4 contrib]# ll /usr/local/resin/webapps/ROOT/
  total 8
  -rw-r--r-- 1 root root 1507 Nov  9  2012 index.jsp
  drwxr-xr-x 5 root root 4096 Oct  2 21:35 WEB-INF
DSC0001.jpg

  里面第一个链接打开是resin文档页面,包含resin安装以及配置等很多文档介绍。
DSC0002.jpg

  第二个链接是resin的管理页面,resin提供了一个和haproxy类似的状态监控页面。
  要想登录这个页面,可以在这里注册,生成账号信息,然后将代码插入到resin的配置文件中,然后重启服务即可。
  1)首先注册一个账户
DSC0003.jpg

  输入用户名和密码,然后提交。
DSC0004.jpg

  这里会生成一段代码,将代码插入到resin.conf中,然后修改resin.conf中一处配置即可。
  2)修改resin配置
  

   <web-app id="/resin-admin" root-directory="${resin.home}/php/admin">
          <!--
             - Administration application /resin-admin
            -->
          <prologue>
            <resin:set var="resin_admin_external" value="false"/> #将这里的false改为true
            <resin:set var="resin_admin_insecure" value="true"/>
          </prologue>
        </web-app>
  

   <management path="${resin.root}/admin">
      <user name="admin" password="password" disable="true"/> #将这里的true删掉,改为空
      <user name="admin" password="En7q3NfDAKtXllISHa6+Ew=="/> #这是上面第一步生成的代码,只添加这一行即可,默认已经有<management>标签了
      <resin:if test="${resin.professional}">
        <deploy-service/>
        <jmx-service/>
        <log-service/>
        <xa-log-service/>
      </resin:if>
    </management>
  

  3)重启resin服务,然后输入用户名密码登录。
DSC0005.jpg

DSC0006.jpg

  

  8、resin启动脚本
  在resin的安装目录下的conrtib下默认有init.resin.in和init.resin-iptables文件,一个是resin的启动脚本模板,一个是防火墙的配置,只需要稍微修改一下就可以使用。
[root@mylinux4 contrib]# ll /usr/local/resin/contrib/
total 12
-rw-r--r-- 1 root root 2678 Nov  9  2012 build.xml
-rw-r--r-- 1 root root 1792 Nov  9  2012 init.resin.in
-rw-r--r-- 1 root root 1079 Nov  9  2012 init.resin-iptables
[root@mylinux4 contrib]# vi /usr/local/resin/contrib/init.resin.in
[root@mylinux4 contrib]# cp init.resin.in /etc/init.d/resin
[root@mylinux4 contrib]# chmod +x /etc/init.d/resin
[root@mylinux4 contrib]# /etc/init.d/resin restart
Stopping resin: .
Starting resin: .
[root@mylinux4 contrib]# netstat -lntup |egrep "6911|6921|8080"
tcp        0      0 :::8080                     :::*                        LISTEN      1665/java           
tcp        0      0 ::ffff:192.168.100.182:6911 :::*                        LISTEN      1665/java           
tcp        0      0 ::ffff:127.0.0.1:6921       :::*                        LISTEN      1640/java  下面是调整后的脚本内容:
[root@mylinux4 contrib]# cat /etc/init.d/resin
#!/bin/sh
#
# Linux startup script for Resin
# chkconfig: 345 85 15
# description: Resin is a Java Web server.
# processname: wrapper.pl
#
# To install, configure this file as needed and copy init.resin
# to /etc/rc.d/init.d as resin.  Then use "# /sbin/chkconfig resin reset"
#
JAVA_HOME=/usr/local/jdk
RESIN_HOME=/usr/local/resin
export JAVA_HOME RESIN_HOME
JAVA=$JAVA_HOME/bin/java
#
# If you want to start the entire Resin process as a different user,
# set this to the user name.  If you need to bind to a protected port,
# e.g. port 80, you can't use USER, but will need to use bin/resin.
#
USER=
#
# Set to the server id to start
#
SERVER="-server test"
#
ARGS="-resin-home $RESIN_HOME $SERVER"
if test -r /lib/lsb/init-functions; then
  . /lib/lsb/init-functions
else
  log_daemon_msg () {
      if [ -z "$1" ]; then
          return 1
      fi
      if [ -z "$2" ]; then
          echo -n "$1:"
          return
      fi
      echo -n "$1: $2"
  }
  log_end_msg () {
      [ -z "$1" ] && return 1
      if [ $1 -eq 0 ]; then
        echo " ."
      else
        echo " failed!"
      fi
    return $1
  }
fi
case "$1" in
  start)
log_daemon_msg "Starting resin"
if test -n "$USER"; then
    su $USER -c "$JAVA -jar $RESIN_HOME/lib/resin.jar $ARGS start" 1>/dev/null 2>/dev/null
else
    $JAVA -jar $RESIN_HOME/lib/resin.jar $ARGS start 1>/dev/null 2>/dev/null
        fi
log_end_msg $?
;;
  stop)
log_daemon_msg "Stopping resin"
if test -n "$USER"; then
    su $USER -c "$JAVA -jar $RESIN_HOME/lib/resin.jar $ARGS stop" 1>/dev/null 2>/dev/null
else
    $JAVA -jar $RESIN_HOME/lib/resin.jar $ARGS stop 1>/dev/null 2>/dev/null
        fi
log_end_msg $?
;;
  restart)
$0 stop
$0 start
;;
  *)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0  9、resin加入开机启动项

[root@mylinux4 contrib]# chkconfig --add resin
[root@mylinux4 contrib]# chkconfig resin on
[root@mylinux4 contrib]# chkconfig --list resin
resin          0:off1:off2:on3:on4:on5:on6:off  10、resin日志设置

  resin的日志默认保存在安装目录下的logs/access.log中,格式如下:

   <access-log path="logs/access.log"
              format='%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'
              rollover-period="1W"/>
  下面是resin日志的一个示例:
  [root@mylinux4 contrib]# tail -f ../logs/access.log
  192.168.100.1 - - [02/Oct/2016:21:36:30 +0800] "GET /resin-admin HTTP/1.1" 302 78 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:36:30 +0800] "GET /resin-admin/ HTTP/1.1" 200 2786 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:46:48 +0800] "GET /resin-doc HTTP/1.1" 302 76 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:46:48 +0800] "GET /resin-doc/ HTTP/1.1" 200 15227 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:46:52 +0800] "GET /resin-doc/doc/install.xtp HTTP/1.1" 200 6778 "http://192.168.100.182:8080/resin-doc/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:47:30 +0800] "GET /resin-admin HTTP/1.1" 302 78 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:47:30 +0800] "GET /resin-admin/ HTTP/1.1" 200 2786 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:48:01 +0800] "GET /resin-admin HTTP/1.1" 302 78 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:21:48:01 +0800] "GET /resin-admin/ HTTP/1.1" 200 2786 "http://192.168.100.182:8080/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  192.168.100.1 - - [02/Oct/2016:22:15:55 +0800] "POST /resin-admin/j_security_check?j_uri=status.php HTTP/1.1" 200 2861 "http://192.168.100.182:8080/resin-admin/" "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-451446-1-1.html 上篇帖子: CentOS7 服务启动命令 下篇帖子: CentOS 6.5上安装并配置Tomcat
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表