CentOS 6.6下Tomcat集群

Tomcat集群

安装环境:CentOS 6.6(64位系统)

  1. 安装Tomcat站点
  1. 安装及配置JDK

    1. 在安装之前卸载系统自带的JDK版本

--查看并卸载已经安装JDK的版本

[[email protected] 桌面]$ su root

密码:

[[email protected] 桌面]# rpm -qa|grep jdk

java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.i686

java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.i686

[[email protected] 桌面]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.i686

[[email protected] 桌面]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.i686

  1. 安装JDK

# chmod 777 jdk-7u79-linux-i586.rpm

# rpm -ivh jdk-7u79-linux-i586.rpm

  1. 配置环境变量

--配置java环境变量

--修改/etc/profile文件, 全局变量,可能会给系统带来安全性问题;修改.bash_profile文件,这种方法更为安全,它可以把使用这些环境变量的权限控制到用户级别,如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bash_profile文件就可以了。

--备份配置文件

#cp /etc/profile /etc/profile.bak

--编辑配置文件(在最后追加如下内容)

# vi /etc/profile

#Set Java Environment

export JAVA_HOME=/usr/java/jdk1.7.0_79

export PATH=$PATH:$JAVA_HOME/bin

--重新加载配置文件

#source /etc/profile

或者:

# vi /etc/profile.d/java.sh

export JAVA_HOME=/usr/java/jdk1.7.0_79

export PATH=$PATH:$JAVA_HOME/bin

--查看安装的jdk版本信息

#java -version

#javac -version

  1. 测试jdk

-- 用文本编辑器新建一个Test.java文件,在其中输入以下代码并保存:

public class Test {

public static void main(String args[]) {

System.out.println("Hello,Java !");

}

}

--编译

#javac Test.java

--运行

#java Test

  1. 安装及配置Tomcat

    1. 安装两个Tomcat

# tar -zxvf apache-tomcat-7.0.62.tar.gz

# cp -rf apache-tomcat-7.0.62 /usr/local/tomcat1

# mv apache-tomcat-7.0.62 /usr/local/tomcat2

# chown -R xju:xju /usr/local/tomcat1

# chown -R xju:xju /usr/local/tomcat2

  1. 修改两个tomcat的端口号

(1)修改tomcat1端口号

$ cd /usr/local/tomcat1/conf/

$ cp server.xml server.xml.bak

$ cp web.xml web.xml.bak

$ vi server.xml

<Server port="8005" shutdown="SHUTDOWN">

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443"

URIEncoding="UTF-8" />

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1" >

(2)修改tomcat2端口号

$ cd /usr/local/tomcat2/conf/

$ cp server.xml server.xml.bak

$ cp web.xml web.xml.bak

$ vi server.xml

<Server port="8006" shutdown="SHUTDOWN">

<Connector port="8081" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443"

URIEncoding="UTF-8" />

<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat2" >

Tomcat默认端口备注:

8005:表示用于停止Tomcat的端口

8080:表示HTTP连接端口

8009:表示Apache的侦听端口

8443:表示SSL的连接端口

  1. 启动Tomcat

--启动tomcat1

# cd /usr/local/tomcat1/bin

#./startup.sh--启动

#./shutdown.sh --关闭

Using CATALINA_BASE: /usr/local/tomcat1

Using CATALINA_HOME: /usr/local/tomcat1

Using CATALINA_TMPDIR: /usr/local/tomcat1/temp

Using JRE_HOME: /usr/java/jdk1.7.0_79/jre/

Using CLASSPATH: /usr/local/tomcat1/bin/bootstrap.jar:/usr/local/tomcat1/bin/tomcat-juli.jar

Tomcat started.

  1. 添加Tomcat开机自动启动

(1)将tomcat1设置开机自启动

将/usr/local/tomcat1/bin/catalina.sh文件复制到/etc/init.d目录下并改名为tomcat1

# cp /usr/local/tomcat1/bin/catalina.sh /etc/init.d/tomcat1

修改/etc/init.d/tomcat1文件,在文件中添加为红色部分:

# vi /etc/init.d/tomcat1

在第一行下面输入如下内容(否则出现错误:tomcat 服务不支持 chkconfig):

#!/bin/sh

# chkconfig: 2345 10 90

# description:Tomcat1 service

# Licensed to the Apache Software Foundation (ASF) under one or more

# contributor license agreements. See the NOTICE file distributed with

.....................................................................

# $Id: catalina.sh 1498485 2013-07-01 14:37:43Z markt $

# -----------------------------------------------------------------------------

CATALINA_HOME=/usr/local/tomcat1

JAVA_HOME=/usr/java/jdk1.7.0_79

# OS specific support. $var _must_ be set to either true or false.

--添加tomcat服务:

# chkconfig --add tomcat1

--设置tomcat为开机自启动:

# chkconfig tomcat1 on

--关闭和启动tomcat 服务,由此生成的tomcat没有重启命令:

# service tomcat1 stop

# service tomcat1 start

(2)将tomcat1设置开机自启动

将/usr/local/tomcat2/bin/catalina.sh文件复制到/etc/init.d目录下并改名为tomcat2

# cp /usr/local/tomcat2/bin/catalina.sh /etc/init.d/tomcat2

修改/etc/init.d/tomcat2文件,在文件中添加为红色部分:

# vi /etc/init.d/tomcat2

在第一行下面输入如下内容(否则出现错误:tomcat 服务不支持 chkconfig):

#!/bin/sh

# chkconfig: 2345 10 90

# description:Tomcat2 service

# Licensed to the Apache Software Foundation (ASF) under one or more

# contributor license agreements. See the NOTICE file distributed with

.....................................................................

# $Id: catalina.sh 1498485 2013-07-01 14:37:43Z markt $

# -----------------------------------------------------------------------------

CATALINA_HOME=/usr/local/tomcat2

JAVA_HOME=/usr/java/jdk1.7.0_79

# OS specific support. $var _must_ be set to either true or false.

--添加tomcat服务:

# chkconfig --add tomcat2

--设置tomcat为开机自启动:

# chkconfig tomcat2 on

--关闭和启动tomcat 服务,由此生成的tomcat没有重启命令:

# service tomcat2 stop

# service tomcat2 start

  1. 测试Tomcat

# cd /usr/local/tomcat/

时间: 2024-11-05 21:43:10

CentOS 6.6下Tomcat集群的相关文章

Centos下Apache+Tomcat集群--搭建记录

一.目的 利用apache的mod_jk模块,实现tomcat集群服务器的负载均衡以及会话复制,这里用到了<Cluster>. 二.环境 1.基础:3台主机,系统Centos6.5,4G内存,50G硬盘. yum源已更换为阿里源(如何更换可参考博客的另外一篇文章) 2.软件:development tools,jdk-7u9-linux-x64.rpm;源码编译软件apr-util-1.5.4.tar.gz,apr-1.5.2.tar.gz,tomcat-connectors-1.2.40-s

Tomcat集群环境下session共享方案梳理(1)-通过memcached(MSM)方法实现

对于web应用集群的技术实现而言,最大的难点就是:如何能在集群中的多个节点之间保持数据的一致性,会话(Session)信息是这些数据中最重要的一块.要实现这一点, 大体上有两种方式: 一种是把所有Session数据放到一台服务器上或者数据库中,集群中的所有节点通过访问这台Session服务器来获取数据: 另一种就是在集群中的所有节点间进行Session数据的同步拷贝,任何一个节点均保存了所有的Session数据. Tomcat集群session同步方案有以下几种方式: 1)使用tomcat自带的

CentOS 7 学习(三)配置Tomcat集群

所谓集群,就是把多台服务器集合起来,对外提供一个接口访问,对用户来说完全透明,常用的办法就是前端放一个服务器,将用户请求分发到不同的服务器,大致有以下几种方案 1)采取DNS轮询:将用户的连接解析到不同的服务器上,这会产生一个问题,如果一个服务器宕掉,DNS无法及时更新,就会出现问题 2)反向代理服务器:将用户的连接转发到不同的服务器上,这有两种方式,一个是修改HTTP头,让用户的连接转到固定的服务器,以后不再和代理服务器交互,这会修改用户浏览器里的地址,可能会不怎么友好:如果不修改地址,用户总

nginx在windows下配置缓存服务器缓存静态资源+Tomcat集群

nginx安装目录 修改nginx.conf文件配置负载均衡配置Tomcat集群并设置动静分离 #user nobody; error_log logs/error.log; worker_processes 2; worker_rlimit_nofile 1024; events { worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request&quo

用redis实现tomcat集群下的session共享

上篇实现了 LINUX中NGINX反向代理下的TOMCAT集群(http://www.cnblogs.com/yuanjava/p/6850764.html) 这次我们在上篇的基础上实现session 共享问题 Nginx机器:192.168.1.108 两台tomcat机器分别是:192.168.1.168 192.168.1.178 一:测试session共享问题 在原index.jsp页面添加如下代码 SessionId:<%= session.getId() %> <% Stri

Linux下通过apache实现tomcat集群

对于WEB应用集群的技术实现而言,最大的难点就是如何能在集群中的多个节点之间保持数据的一致性,会话(Session)信息是这些数据中最重要的一块.要实现这一点,大体上有两种方式,一种是把所有Session数据放到一台服务器上或者数据库中,集群中的所有节点通过访问这台Session服务器来获取数据:另一种就是在集群中的所有节点间进行Session数据的同步拷贝,任何一个节点均保存了所有的Session数据.两种方式都各有优点,第一种方式简单.易于实现,但是存在着Session服务器发生故障会导致全

nginx+memcached+tomcat集群 session共享完整版

nginx+memcached+tomcat集群 session共享完整版 集群环境 1.nginx版本 nginx-1.6.2.tar.gz 2.jdk 版本 jdk-7u21-linux-x64.tar.gz 3.tomcat 版本  7.0.29 4.memcached 版本 memcached-1.4.22.tar.gz 5. CentOS 6.5 系统采用一台服务做测试 一.nginx安装 安装依赖包 yum -y install gcc gcc-c++ 1.安装pcre库 tar z

Tomcat集群+Nginx+Redis服务搭建

由于公司新业务突然上来了,单个Tomcat实例已经不能满足业务发展的需要了,只能通过搭建集群来解决问题了.所以就出现了下面的内容: 1.Redis保存Session信息 为了保存Session信息在集群中可用,所以session信息不能保存Tomcat中,因为如果是这样的话要想实现Session信息的共享就必须通过Session复制的方式来同步Tomcat之间的Session信息,这样比较费力费力而且性能消耗比较大,所以选择通过redis来实现Session信息的保存和共享. 1.1Redis的

nginx反向代理tomcat集群实现动静分离

我们都知道,nginx作为一个轻量级的web服务器,其在高并发下处理静态页面的优越性能是tomcat这样的web容器所无法媲美的,tomcat更倾向于处理动态文件,所以一个web应用可以通过nginx反向代理来实现动静分离,静态文件由nginx处理,动态文件由tomcat处理. 环境: hadoop0.updb.com    192.168.0.100    nginx server hadoop2.updb.com    192.168.0.102    tomcat server hadoo