当前位置:文档之家› Windowns tomcat集群部署

Windowns tomcat集群部署

Windowns tomcat集群部署
Windowns tomcat集群部署

tomcat集群部署

部署环境

硬件环境

一台服务器,运行2个tomcat实例

软件环境

操作系统:Win 2008 Server R2 Enterprise

Web服务器:httpd-2.4.12-x64-r2.zip

Tomcat:apache-tomcat-7.0.62-windows-x64.zip //解压版而非安装版

JDK:jdk-7u79-windows-x64.exe

Tomcat Connector: tomcat-connectors-1.2.40-windows-x86_64-httpd-2.4.x

需要的介质放在百度云盘上

链接:https://www.doczj.com/doc/fe374807.html,/s/1gdD3R8Z 密码:g60o

一、操作系统安装

二、JDK安装

点击安装包进行安装,都采用默认路径

1、环境变量设置

“计算机”->点右键->“属性”->“高级”->“环境变量”->“系统变量”->新建->变量名安装目录:C:\Program Files\Java\jdk1.7.0_79

JAVA_HOME= C:\Program Files\Java\jdk1.7.0_79

CLASSPATH=%JAVA_HOME%\lib\tools.jar;e%JAVA_HOME%\lib\dt.jar

Path= %JAVA_HOME%\bin;

2、测试

在DOS下输入javac回车,出现javavc的使用说明表示你的JDK安装成功;

在DOS下输入java回车,出现java的使用说明表示你的环境变量设置成功

三、Apache部署

1、apache安装

1)解压缩httpd-2.4.12-x64-r2

将压缩后的Apache24目录移到C盘根目录2)切换到C: \Apache24\bin目录下

>cd C:\Apache24\bin

>httpd.exe

3)测试

http://localhost能访问

2、将apache安装成服务

在命令行模式下(切换到bin目录下)输入httpd -k install //安装

httpd -k start //启动

//其他命令

Other Command line options:

Stop Apache httpd -k stop

Restart Apache httpd -k restart

Uninstall Apache Service httpd -k uninstall

Test Config Syntax httpd -t

Version Details httpd -v

Command Line Options List httpd -h

3、apache配置

1)使用集成功能那么[四、tomcat-connector配置]、[4、设置workers.properties文件]、[5、创建uriworkermap.properties文件]都不需要配置直接跳到[五、tomcat配置]

Apache2.2集成了mod_jk功能,不再需要对worker.perproties进行进行配置,使其配置过程大幅度简化。

*配置启动自动加载代理(proxy)模块(httpd.conf)

打开http.conf文件,去掉以下文本前的注释符(#)

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

LoadModule proxy_connect_module modules/mod_proxy_connect.so

LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

LoadModule proxy_http_module modules/mod_proxy_http.so

LoadModule slotmem_shm_module modules/mod_slotmem_shm.so

*配置首页

在上一步的基础上继续向下找到“DirectoryIndex index.html”字样,在其后追加index.jsp *找到#Include conf/extra/httpd-vhosts.conf位置,并去掉“#”符号,结束后关闭httpd.conf 文件

*利用编辑器打开C:\Apache24\conf\extra \httpd-vhosts.conf文件,配置虚拟站点,在文件结束添加

ServerAdmin webmaster@https://www.doczj.com/doc/fe374807.html,

ServerName 192.168.254.120

ServerAlias localhost

ProxyPass / balancer://cluster/ stickysession=JSESSIONID nofailover=On

ProxyPassReverse / balancer://cluster/

ErrorLog "logs/error.log"

CustomLog "logs/access.log" common

注:

a、balancer://是告诉Apache需要进行负载均衡的代理

b、后面的cluster是集群名,可以随意取

c、两个日志引擎ErrorLog负责记录错误,CustomLog负责记录所有的http访问以及返回状态,日志名可以自己取。

*再次打开httpd.conf文件在末尾添加

ProxyRequests Off

BalancerMember ajp://localhost:8009 loadfactor=1 route=tomcat1

BalancerMember ajp://localhost:8010 loadfactor=1 route=tomcat2

注:

1、ProxyRequests Off 是告诉Apache需要使用反向代理;

2、用于配置工作在集群中的节点列表,这里的“cluster”必须与上面的集群名保持一致;

3、Apache通过ajp协议与tomcat进行通信,ip地址和端口唯一确定了tomcat节点和配置的ajp接受端口;

4、loadfactor是负载因子,Apache会按负载因子的比例向后端tomcat节点转发请求,负载因子越大,对应的tomcat服务器就会处理越多的请求,如两个tomcat都是1,Apache就按1:1的比例转发,如果是2和1就按2:1的比例转发;

5、route参数对应后续tomcat配置中的引擎路径(jvmRoute)。

在dos下用httpd –t测试下看语法是否正确

重启apache使配置生效

2)不使用集成mod_jk功能

在httpd.conf末尾添加

#load mod_jk module

LoadModule jk_module modules/mod_jk.so

#Specify load-balance conf file

JkWorkersFile conf/workers.properties

#加载workers的请求处理分配文件

JkMountFile conf/uriworkermap.properties

#Specify JkLogFile && jk log level

JkLogFile logs/mod_jk.log

JkLogLevel debug

4、设置workers.properties文件

workers.properties目录在C:\Apache24\conf下,没有该文件就创建

在文件中写入

#server

worker.list=loadbalancer,jkstatus

#tomcat1

worker.tomcat1.port=8009

worker.tomcat1.host=localhost #如果tomcat1部署在其他机器上,可填写其服务器IP worker.tomcat1.type=ajp13

worker.tomcat1.lbfactor=1

#tomcat2

worker.tomcat2.port=8010

worker.tomcat2.host=localhost

worker.tomcat2.type=ajp13

worker.tomcat2.lbfactor=1

#loadbalancer

worker.loadbalancer.type=lb

worker.loadbalancer.balance_workers=tomcat1,tomcat2

worker.loadbalancer.sticky_session=false #在集群环境中,将该值设置为False。

worker.jkstatus.type=status

5、创建uriworkermap.properties文件

在C:\Apache24\conf目录创建uriworkermap.properties文件

//这个文件说明了符合哪些条件的uri才能被转发到tomcat中

在该文件中写入/*=loadbalancer //该值要与workers.properties中的worker.list= loadbalancer中的值相等

四、tomcat-connector配置

到https://www.doczj.com/doc/fe374807.html,/官网上下载tomcat-connectors-1.2.40-windows-x86_64-httpd-2.4.x 将压缩包解压后找到目录中的mod_jk.so文件,并把它放在C:\Apache24\conf目录下.

五、tomcat配置

1、解压安装包至不同目录,并改名为tomcat1、tomcat2

解压缩后目录分别是C:\server\tomcat1、C:\server\tomcat2

2、配置server.xml文件

1)tomcat1配置

#修改tomcat配置文件server.xml(/software/tomcat1/conf/server.xml),主要修改:Shutdown 端口,Connect服务端口,AJP端口

connectionTimeout="20000"

redirectPort="8443" />

#修改集群名称和tomcat别名

2)tomcat2配置

修改tomcat配置文件server.xml,主要修改:Shutdown端口,Connect服务端口,AJP端口

connectionTimeout="20000"

redirectPort="8443" />

#修改集群名称和tomcat别名

注:因为要启动2个Tomcat,所以不能设置CATALINA_HOME(环境变量)。

至此tomcat和apache集群配置完成

六、测试

重启apache,tomcat1,tomcat2。在C:\server\tomcat1\webapps\test\目录下,新建“test.jsp”文件,代码:

<%@ page import="java.util.*" %>

<%=new Date()%>

<% System.out.println("loadbalance test");%>

并将test.jsp复制一份到:C:\server\tomcat2\webapps\test\目录下。

打开浏览器,输入:http://localhost/test.jsp,如果能看到当前时间,那么恭喜你,apache+tomcat配置成功。

刷新页面,刷新页面,会在2个Tomcat的控制台看到:“loadbalance test”字样交替出现。表明负载均衡配置成功。

附录:

部分so不放开注释的报错提示与其他报错的解决方法:

[Tue Feb 03 19:58:24.046875 2015] [proxy_balancer:emerg] [pid 4644:tid 1724] AH01177: Failed to lookup provider 'shm' for 'slotmem': is mod_slotmem_shm loaded?? 需放开mod_slotmem_shm注释

[Tue Feb 03 19:59:57.437500 2015] [proxy:crit] [pid 6896:tid 1716] AH02432: Cannot find LB Method: byrequests

[Tue Feb 03 19:59:57.437500 2015] [proxy_balancer:emerg] [pid 6896:tid 1716] (22)Invalid argument: AH01183: Cannot share balancer

需放开lbmethod_byrequests_module

[Tue Feb 03 19:55:35.640625 2015] [core:warn] [pid 5980:tid 1736] AH00098: pid file F:/Apache24/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run? 删掉pid文件可解决

tomcat手动配置部署

Tomcat手动配置部署 刘晓涛讲授,孙娟总结 手动创建JSP项目 1.将外置Tomcat解压出来后,在Tomcat里面的webapps文件夹创建一个放JSP项目的文 件夹“MyWeb”,如图: 2.在“MyWeb”JSP项目中创建必须的WEB-INF文件夹,如图: 3.在WEB-INF文件夹中也要必须创建lib文件夹,classes文件夹与web.xml文件, 如图:

4.当我们创建好JSP项目必须的WEB-INF文件夹后,我们开始创建我们在项目中所需要 的静态文件,现在我们只创建一个jsp文件夹(此文件夹跟WEB-INF在同一目录下),用来存放jsp文件,如图: 5.在jsp文件夹中创建一个jsp文件,如图: 现在我们手动创建的JSP项目就创建成功了 如何将Tomcat中的文件进行修改 1.为了保护资源的安全,我们需要有用户通过验证才可以进入我们的程序,所以我们要将 Tomcat中的conf文件夹中的tomcat-users.xml文件进行修改,如图: 说明: Rolename:是角色 Username:用户名 Password:用户名的密码 整体讲:在XXX角色下,用户可以通过用户名及密码可以访问程序中的资源

修改完后,我们就有一个用户“shmily”可以进入程序了,密码是”shmily” 2.当我们设置了用户登陆后,我们还要返回到我们的JSP项目中去,修改我们的web.xml 文件,与我们刚刚设计好的用户登陆设置相关联,如图: 注意:有注释的地方都是需要修改的地方,也就是我们刚才在tomcat-users.xml中设置的角色名

现在我们就修改完成了,那么现在我们就开始运行我们的JSP项目了 如何运行JSP项目 1.在运行JSP项目之前我们要启动tomcat(在tomcat中的bin文件夹中的startup.bat),如 图: 2.启动完后,我们开始浏览器,输入http://localhose:8080/如图:

服务器集群实验

2003服务器集群实验 一、服务器集群简介 什么是服务器群集?有何作用? 服务器群集是一组协同工作并运行Microsoft群集服务(Microsoft Cl uster Service,MSCS)的独立服务器。它为资源和应用程序提供高可用性、故障恢复、可伸缩性和可管理性。它允许客户端在出现故障和计划中的暂停时,依然能够访问应用程序和资源。如果群集中的某一台服务器由于故障或维护需要而无法使用,资源和应用程序将转移到可用的群集节点上。 服务器群集不同于NLB群集,服务器群集是有独立计算机系统(节点)构成的组,不同节点协同工作,就像单个系统一样,从而确保关键的应用程序和资源始终可由客户端使用。用于访问量较少的企业内网的服务器的冗余和可靠性。 哪些版本的操作系统支持服务器群集? 只有两个版本的windows server 2003系统支持该技术:企业版和数据中心版。 服务器群集的应用范围? 服务器群集最多可以支持8个节点,可实现DHCP、文件共享、后台打印、MS SQL server、exchange server等服务的可靠性。 二、群集专业术语 节点: 构建群集的物理计算机 群集服务: 运行群集管理器或运行群集必须启动的服务 资源: IP地址、磁盘、服务器应用程序等都可以叫做资源 共享磁盘: 群集节点之间通过光纤SCSI 电缆等共同连接的磁盘柜或存储 仲裁资源: 构建群集时,有一块磁盘会用来仲裁信息,其中包括当前的服务状态各个节点的状态以及群集转移时的一些日志 资源状态: 主要指资源目前是处于联机状态还是脱机状态 资源依赖: 资源之间的依存关系 组: 故障转移的最小单位 虚拟服务器: 提供一组服务--如数据库文件和打印共享等 故障转移: 应用从宕机的节点切换到正常联机的节点

tomcat集群

用apache和tomcat搭建集群,实现负载均衡 一、集群和负载均衡的概念 (一)集群的概念 集群(Cluster)是由两台或多台节点机(服务器)构成的一种松散耦合的计算节点集合,为用户提供网络服务或应用程序(包括数据库、Web服务和文件服务等)的单一客户视图,同时提供接近容错机的故障恢复能力。集群系统一般通过两台或多台节点服务器系统通过相应的硬件及软件互连,每个群集节点都是运行其自己进程的独立服务器。这些进程可以彼此通信,对网络客户机来说就像是形成了一个单一系统,协同起来向用户提供应用程序、系统资源和数据。除了作为单一系统提供服务,集群系统还具有恢复服务器级故障的能力。集群系统还可通过在集群中继续增加服务器的方式,从内部增加服务器的处理能力,并通过系统级的冗余提供固有的可靠性和可用性。 (二)集群的分类 1、高性能计算科学集群: 以解决复杂的科学计算问题为目的的IA集群系统。是并行计算的基础,它可以不使用专门的由十至上万个独立处理器组成的并行超级计算机,而是采用通过高速连接来链接的一组1/2/4 CPU的IA服务器,并且在公共消息传递层上进行通信以运行并行应用程序。这样的计算集群,其处理能力与真正超级并行机相等,并且具有优良的性价比。 2、负载均衡集群: 负载均衡集群为企业需求提供更实用的系统。该系统使各节点的负载流量可以在服务器集群中尽可能平均合理地分摊处理。该负载需要均衡计算的应用程序处理端口负载或网络流量负载。这样的系统非常适合于运行同一组应用程序的大量用户。每个节点都可以处理一部分负载,并且可以在节点之间动态分配负载,以实现平衡。对于网络流量也如此。通常,网络服务器应用程序接受了大量入网流量,无法迅速处理,这就需要将流量发送给在其它节点。负载均衡算法还可以根据每个节点不同的可用资源或网络的特殊环境来进行优化。 3、高可用性集群: 为保证集群整体服务的高可用,考虑计算硬件和软件的容错性。如果高可用性群集中的某个节点发生了故障,那么将由另外的节点代替它。整个系统环境对于用户是一致的。 实际应用的集群系统中,这三种基本类型经常会发生混合与交杂。 (三)典型集群 科学计算集群: 1、Beowulf 当谈到Linux 集群时,许多人的第一反映是Beowulf。那是最著名的Linux科学软件集群系统。实际上,它是一组适用于在Linux 内核上运行的公共软件包的通称。其中包括流行的软件消息传递API,如“消息传送接口”(MPI) 或“并行虚拟机”(PVM),对Linux 内核的修改,以允许结合几个以太网接口、高性能网络驱动器,对虚拟内存管理器的更改,以及分布式进程间通信(DIPC) 服务。公共全局进程标识空间允许使用DIPC 机制从任何节点访问任何进程。 2、MOSIX Beowulf类似于给系统安装的一个支持集群的外挂软件,提供了应用级的集群能力。而MOSIX 是彻底修改Linux的内核,从系统级提供了集群能力,它对应用而言是完全透明的,原有的应用程序,可以不经改动,就能正常运行在MOSIX系统之上。集群中的任何节点都可以自由地加入和移除,来接替其它节点的工作,或是扩充系统。MOSIX 使用自适应进程负载均衡和内存引导算法使整体性能最大化。应用程序进程可以在节点之间实现迁移,以利用最好

linux下tomcat的配置及项目的部署流程

Java的安装配置 1.在/etc/profile文件中配置相应的信息(如下) export JAVA_HOME=/usr/java/jdk1.6.0_20 export JRE_HOME=/usr/java/jdk1.6.0_20/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$PATH 2.是配置文件生效命令:Source /etc/profile 3.输入javac –version查看配置是否成功 TOMCAT安装配置 1.修改tomcat/bin文件夹下的catalina.sh文件,增加如下的内容: export JAVA_HOME=/usr/java/jdk1.5.0_08 export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin export CATALINA_HOME=/usr/local/tomcat (红色可选部分) usr/local/tomcat/bin/catalina.sh start 在/etc/rc.d/rc.local中加入: /usr/local/tomcat/bin/startup.sh(实现自动启动) 2.修改tomcat/conf文件夹下的tomcat-users.xml文件,添加相应的用户角色(manager)及用户信息(用户名及密码),具体的添加详见文件中的模板:

Tomcat集群与负载均衡

Tomcat集群与负载均衡(转载) 在单一的服务器上执行WEB应用程序有一些重大的问题,当网站成功建成并开始接受大量请求时,单一服务器终究无法满足需要处理的负荷量,所以就有点显得有点力不从心了。另外一个常见的问题是会产生单点故障,如果该服务器坏掉,那么网站就立刻无法运作了。不论是因为要有较佳的扩充性还是容错能力,我们都会想在一台以上的服务器计算机上执行WEB应用程序。所以,这时候我们就需要用到集群这一门技术了。 在进入集群系统架构探讨之前,先定义一些专门术语: 1. 集群(Cluster):是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。 2. 负载均衡(Load Balance):先得从集群讲起,集群就是一组连在一起的计算机,从外部看它是一个系统,各节点可以是不同的操作系统或不同硬件构成的计算机。如一个提供Web服务的集群,对外界来看是一个大Web服务器。不过集群的节点也可以单独提供服务。 3. 特点:在现有网络结构之上,负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。集群系统(Cluster)主要解决下面几个问题: 高可靠性(HA):利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。 高性能计算(HP):即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域,比如基因分析,化学分析等。 负载平衡:即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。 目前比较常用的负载均衡技术主要有: 1. 基于DNS的负载均衡 通过DNS服务中的随机名字解析来实现负载均衡,在DNS服务器中,可以为多个不同的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时得到其中一个地址。因此,对于同一个名字,不同的客户机会得到不同的地址,他们也就访问不同地址上的Web服务器,从而达到负载均衡的目的。 2. 反向代理负载均衡(如Apache+JK2+Tomcat这种组合) 使用代理服务器可以将请求转发给内部的Web服务器,让代理服务器将请求均匀地转发给多台内部Web服务器之一上,从而达到负载均衡的目的。这种代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部Web服务器,而这种代理方式是多个客户使用它访问内部Web服务器,因此也被称为反向代理模式。 3. 基于NAT(Network Address Translation)的负载均衡技术(如Linux Virtual Server,简称LVS)

服务器集群设计

服务器集群设计 服务器集群技术随着服务器硬件系统与网络操作系统的发展而产生的,在可用性、高可靠性、系统冗余等方面越来越发挥重要中用,是核心系统必不可少的。数据库保存者抄表系统的数据,是整个信息系统的关键所在。 解决系统可靠性的措施通常是备份和群集。备份不能快速恢复,主要用于安全保存,数据库和系统的快速故障恢复通常采用HA(高可用)群集模式, HA 能提供不间断的系统服务,在线系统发生故障时,离线系统能立即发现故障并立即进行接管,继续对外提供服务。HA技术可以有效防止关键业务主机宕机而造成的系统停止运行,被广泛采用。HA技术有两种模式: 具有公共存储系统的HA 数据存储在公共的存储系统上,服务器1为活动服务器,服务器2为待机服务器(备份服务器),当服务器1发生故障时(软或硬件故障),服务器2通过私有网络(心跳路径)侦测到服务器1的故障并自动接管服务器1上所有的资源(如IP地址、存储系统、数据库服务、计算机名等),继续为客户机提供数据或其他应用服务。 独立存储系统的HA数据存储在各自服务器的独占存储设备上(内置磁盘或磁盘阵列) ,没有共享存储系统,数据保存在每个服务器独占的存储设备上。通过镜像技术使每台服务器的数据保持同步,切换时间更短,可靠性比共享存储系统的方案更高,并避免了单点崩溃的可能性,增加了数据的安全性及系统的可用性。两台服务器之间的距离不受外部存储设备连接线的限制,因而可以将两台服务器放置在不同位置。

根据上述分析、系统要求、应用软件采用三层结构的优势以及艾因泰克在发电企业几十家的建设经验,方案采用独立存储系统的HA模式。 由于两套数据库服务器只有一台在线工作,方案本着最大限度节约资源的原则,充分高性能服务器的性能,在备用服务器上运行系统的WEB应用。采用双机双应用,互为备用结构。即在线数据库服务器是 WEB应用服务器的备用服务器,在线WEB应用服务器是数据库服务器的备用服务器。这种结构不但充分发挥性能服务器的优势,又保证关键服务器具有自动备用服务器。不但节约了成本,而且避免了采用共用存储设备单点故障带来的数据丢失的灾难,是最佳的选择。 数据库和应用服务器集群结构如下图: 服务器采用2台PowerEdge R900,配置7块146G磁盘,2块磁盘组成RAID 1镜像,作为操作系统盘。5块组成磁盘组成RAID 5,作为数据盘。 集群镜像软件选用RoseMirrorHA。RoseMirrorHA是一个可靠的、稳定的、高性能的应用高可用保护解决方案,实现应用程序的保护,保证了业务的持续运

自动化运维项目总结报告

自动化运维系统研发项目 总结报告 一、项目背景 随着信息时代的持续发展,IT运维已经成为IT服务内涵中重要的组成部分。面对越来越多复杂的业务、多样化的用户需求,不断扩展的IT应用需要越来越合理的模式来保障IT服务能灵活便捷、安全稳定地持续保障,从初期的几台服务器发展到庞大的数据中心,单靠人工已无法满足在技术、业务、管理等方面的需求,那么标准化、自动化、架构优化、过程优化等降低IT服务成本的因素越来越被广大行业客户重视。 二、自动化运维研发阶段性 经过对市场背景的分析,在公司高层资源的支持下,2016年7月完成项目立项及成立研发项目团队,12月已完成初步框架认定工作,在对市场需求、业务环境调研过程中,认为自动化运维需满足架构独立、部署友好、可运维性、容错容灾、质量监控、性能成本、用户体验等特点。项目组经过半年的研发努力,项目研发有了阶段性的突破成果。 2.1架构独立 任何架构的产生都是为了满足特定的业务诉求,如果我们在满足

业务需求的同时,能够兼顾运维对架构管理的非功能性要求。那么我们有理由认为这样的架构是对运维友好的。站在运维的角度,所诉求的架构独立包含四个方面:独立部署、独立测试、组件规范、技术解耦等。 2.2部署友好 希望从端到端打通开发、测试、运维的所有技术环节,以实现快速部署和交付价值的目标。实现高效可靠的部署能力,要做好全局规划,要保证部署以及运营阶段的全方位运维掌控,从以上要求分析,有五个维度是对部署友好相关的:CMDB配置、环境配置、依赖管理、部署方式、发布自测等。 2.3可运维性 运维从脑海中是最理想的服务架构,首先想到的事可运维性强的那种类型。不具可运维的应用或架构,对运维团队带来的不仅仅是难题,还有阻止运维人员职业发展前进堵绊脚石,因为维护一个没有可运维性的架构,简直就是在浪费运维人员的时间。因为可运维性按操作和管理规范应归纳为以下几点:配置管理、版本管理、标准操作、进程管理、空间管理、日志管理、集中管控等。 2.4容错容灾 运维的四大职责:质量、效率、成本、安全。安全是一个运维团队首要保障的,运维人员立项的高可用架构设计应该包含以下几点:

多台服务器tomcat集群

多台服务器tomcat集群 集群背景介绍 1.1 术语定义 服务软体是b/s或c/s结构的s部分,是为b或c提供服务的服务性软件系统。服务硬体指提供计算服务的硬件、比如pc机、pc服务器。服务实体通指服务软体和服务硬体。客户端指接受服务实体服务的软件或硬件。 1.2 两大关键特性 集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与可用性的服务平台。在客户端看来,一个集群就象是一个服务实体,但事实上集群由一组服务实体组成。与单一服务实体相比较,集群提供了以下两个关键特性: 可扩展性--集群的性能不限于单一的服务实体,新的服务实体可以动态地加入到集群,从而增强集群的性能。 高可用性--集群通过服务实体冗余使客户端免于轻易遇到out of service的警告。在集群中,同样的服务可以由多个服务实体提供。如果一个服务实体失败了,另一个服务实体会接管失败的服务实体。集群提供的从一个出错的服务实体恢复到另一个服务实体的功能增

强了应用的可用性。 1.3 两大能力 为了具有可扩展性和高可用性特点,集群的必须具备以下两大能力:负载均衡--负载均衡能把任务比较均衡地分布到集群环境下的计算和网络资源。 错误恢复--由于某种原因,执行某个任务的资源出现故障,另一服务实体中执行同一任务的资源接着完成任务。这种由于一个实体中的资源不能工作,另一个实体中的资源透明的继续完成任务的过程叫错误恢复。 负载均衡和错误恢复都要求各服务实体中有执行同一任务的资源存在,而且对于同一任务的各个资源来说,执行任务所需的信息视图(信息上下文)必须是一样的。 1.4 两大技术 实现集群务必要有以下两大技术: 集群地址--集群由多个服务实体组成,集群客户端通过访问集群的集群地址获取集群内部各服务实体的功能。具有单一集群地址(也叫单一影像)是集群的一个基本特征。维护集群地址的设置被称为负载均衡器。负载均衡器内部负责管理各个服务实体的加入和退出,外部负责集群地址向内部服务实体地址的转换。有的负载均衡器实现真正的负载均衡算法,有的只支持任务的转换。只实现任务转换的负载均

两台服务器的集群方案

本文由szg81贡献 doc1。 七台服务器的集群方案 在传统的终端/主机的网络模式时代,终端功能简单,无需维护工作,在主机一端进行专门的管理与维护,具有资源共享、便于 管理的特点。但是,主机造价昂贵,终端没有处理能力,限制了网络的规模化发展。之后的客户机/服务器模式推进了计算产业 的标准化和开发化的发展,为系统提供了相当大的灵活性,但是随着分布系统规模的规模扩大,系统的维护和管理带来了巨大 的开销。面向 Internet 的服务型应用,需要高性能的硬件平台作为支持,将并行技术应用在服务器领域中,是计算机发展的必然 趋势。并行处理技术在高性能计算领域中,高可用和高性能是集群服务器系统发展的两个重要方向。 集群的概念 集群英文名称是 CLUSTER,是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管 理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。和传统的高性能计算 机技术相比,集群技术可以利用各档次的服务器作为节点,系统造价低,可以实现很高的运算速度,完成大运算量的计算,具 有较高的响应能力,能够满足当今日益增长的信息服务的需求。 集群技术应用的需求 Internet 用户数量呈几何级数增长和科学计算的复杂性要求计算机有更高的处理能力,而 CPU 的发展无法跟上不断增长的需求, 于是我们面临以下问题: ●大规模计算如基因数据的分析、气象预报、石油勘探需要极高的计算性能。 ●应用规模的发展使单个服务器难以承担负载。 ●不断增长的需求需要硬件有灵活的可扩展性。 ●关键性的业务需要可靠的容错机制。 IA 集群系统(CLUSTER)的特点 ●由若干完整的计算机互联组成一个统一的计算机系统; ●可以采用现成的通用硬件设备或特殊应用的硬件设备,例如专用的通讯设备; ●需要特殊软件支持,例如支持集群技术的操作系统或数据库等等; ●可实现单一系统映像,即操作控制、IP 登录点、文件结构、存储空间、I/O 空间、作业管理系统等等的单一化; ●在集群系统中可以动态地加入新的服务器和删除需要淘汰的服务器, 从而能够最大限度地扩展系统以满足不断增长的应用的需 要; ●可用性是集群系统应用中最重要的因素,是评价和衡量系统的一个重要指标; ●能够为用户提供不间断的服务,由于系统中包括了多个结点,当一个结点出现故障的时候,整个系统仍然能够继续为用户提供 服务; ●具有极高的性能价格比,和传统的大型主机相比,具有很大的价格优势; ●资源可充分利用,集群系统的每个结点都是相对独立的机器,当这些机器不提供服务或者不需要使用的时候,仍然能够被充分 利用。而大型主机上更新下来的配件就难以被重新利用了。 实现服务器集群的硬件配置 ●网络服务器 七台 ●服务器操作系统硬盘 七块 ●ULTRA 160 LVD SCSI 磁盘阵列 一个 ●18G SCSI 硬盘 十块 ●网络服务网卡 十四块 服务器集群的实践步骤 ●在安装机群服务之前的准备: 1、 十四块 18G SCSI 硬盘组成磁盘阵列,做 RAID5。 2、 两台服务器要求都配置双网卡,分别安装 Microsoft Windows Server2008 操作系统,并配置网络。 3、 所有磁盘必须设置成基本盘,阵列磁盘分区必须大于 7 个。 4、 每台服务器都要加入域当中,成为域成员,并且在每台服务器上都要有管理员权限。 ●安装配置服务器网络要点 1、在这一部分,每个服务器需要两个网络适配器,一个连接公众网,一个连接内部网(它只包含了群集节点) 内部网适配器 。 建立点对点的通信、群集状态信号和群集管理。每个节点的公众网适配器连接该群集到公众网上,并在此驻留客户。 2、安装 Microsoft Windows 2000 Adwance Server 操作系统后,开始配置每台服务器的网络。在网络连接中我们给连接公众网的 命名为"外网",连接内部网的命名为"内网"并分别指定 IP 地址为:节点 1:内网:ip:10.10.10.11 外网 ip:192.168.0.192 子网 掩码:255.255.255.0 网关:192.168.0.191(主域控制器 ip) ;节点 2:内网:ip:10.10.10.12 外网 ip:192.168.0.193 子网掩码: 255.255.255.0 网关:192.168.0.191;节点 3:内网:ip:10.10.10.13 外网 ip:192.168.0.194 子网掩码:255.255.255.0 网关: 192.168.0.191;节点 4:内网:ip:10.10.10.14 外网 ip:192.168.0.195 子网掩码:255.255.255.0 网关:192.168.0.191;节点 5: 内

FineReport关于tomcat集群部署的方案

FineReport关于tomcat集群部署的方案

多台服务器集群后,配置权限、数据连接、模板、定时调度等,只能每台服务器一个个配置,不会自动同步到所有服务器。 针对上述情况,在FineReport中提供新集群部署插件,将xml配置文件、finedb/logdb 数据(定时任务、报表目录管理、批量导入、统计信息)的修改都对主机生效。其他辅机的信息读取也都从主机读取,保证了数据同步。 实现了灾备,即主机当即后,次主机会上位接替主机的工作,保证系统正常运作。 同时还增加了集群灾备之文件同步,会将主机的finedb、xml、模板、jar包、插件等等备份到其他节点的应用上。支持可以手动同步和自动同步。 插件介绍 设计器插件、服务器插件安装好之后,新集群部署,有主机、次主机、辅机之分,配置文件都从主机读取,辅机只能用作计算引擎分担压力,有点事当改配置文件的时候,不需要每个节点都去修改,直接改主机即可。 分布式集群 分布式集群文件系统:每台计算机各自提供自己的存储空间,并各自协调管理所有计算机节点中的文件。 这里测试修改主机的报表管理目录树平台标题,然后可以看到辅机会同步修改的配置。其中报表管理目录树存在finedb中,平台样式的平台标题存在fsconfig.xml中。 ?环境准备设置tomcat1、tomcat2、tomcat3集群,tomcat1为主机,tomcat2为辅机,tomcat3为次主机,tomcat集群。 WebReport工程分别放在tomcat下的webapps文件夹里 配置文件集群配置完成之后,修改将配置包resource文件夹下的cluster.xml打 开,如果没有这个文件的话,就新建一个,基本内容如下:

Java Web项目开发总结

1、In Action (1)根据添加信息(insert)来考虑表中的字段,进行建表。使用PD画出ER图。要注意字段的数据类型的确定以及建表要满足三范式,减少数据冗余; (2)表建好后,根据表中各个字段来建pojo中的属性。要注意属性的数据类型和字段的数据类型要一致; (3)根据pojo中的属性确定bean的属性,直接拷贝即可,用于页面展示。在bean中,统一使用String类型变量接收前台页面传递的参数;每个HTML表单对应一个bean。HTML 表单中的字段和bean中的属性一一对应。 (4)自顶向下,依次定出action、manager、dao。先写出轮廓,跑通整个流程,再写具体实现,一点点累加,便于调试错误; (5)根据数据实体和具体业务逻辑,使用StarUML画类图,进行OOA和OOD,灵活运用设计模式。 (6)API命名: CRUD:add,get,update,delete,[list] 严格区分单复数形式,单数表示对象,复数表示对象集合。 对象、属性最好单个单词。 (7)前后台都要校验。 (8)按照资源方式组织数据接口,对前端开发帮助很大。即通过REST来实现资源的增、删、改、查。 (9)软件开发,思路最重要!代码开发多了,思路就有了。 a、一个版本一个版本递增的开发;每个版本增加一点内容; b、总结开发思路;第一步怎么做,下一步怎么做? c、用文档记录开发的思路,即第一个版本开发实现了什么功能以及开发步骤,下一个版本实现了什么功能等等?

d、程序员进行程序开发时,不要仅仅停留在代码,要深入到底层的运行机制,才可以对程序的运行机制有更准备的把握; (10)网页模板 request到template.jsp文件(此文件假设包括三个部分,即title、banner、body) web客户——> title banner———————>include:banner.jsp body————————>include:showcart.jsp (11)一步一步的定位。根据结果进行分析。 (12)分页控件 假分页: 基本思想是将所有的数据从数据库中取出,只显示有用的部分。靠的是程序的算法,实际上就是在ResultSet上进行操作。 真分页:(数据库中的一种实现) 任何数据库都会提供分页的函数操作:Oracle、MySQL(limit,即limit 开始的记录, 要查询的行数)、SQL Server(top) 基本思想是在数据库中编写特定的SQL语句。程序中只读取有用的部分,没用的部分不会加载到内存中。 (13) 2、TIPS

通过Terracotta实现基于Tomcat的Web应用集群

本文介绍如何配置Tomcat和Terracotta服务器将普通的Web应用部署到集群中,实现跨Tomcat节点的session复制,以达到负载均衡、提高系统吞吐量和灾难恢复的效果。 基本原理简介 一般利用Tomcat搭建Web应用集群有如下几种方法: 1、利用负载均衡器的粘session的方式把所有同一session的请求都发送到相同的Tomcat节点。这样不同用户的请求就被平均分配到集群中各个tomcat节点上,实现负载均衡的能力。这样做的缺点是没有灾难恢复的能力。一旦一个节点发生故障,这个节点上所有的session信息全部丢失; 2、利用Tomcat session复制的机制使得所有session在所有Tomcat节点中保持一致。当一个节点修改一个session数据的时候,该节点会把这个session的所有内容序列化,然后广播给所有其它节点。这样当下一个用户请求被负载均衡器分配到另外一个节点的时候,那个节点上有完备的session信息可以用来服务该请求。这种做法的问题是对session哪怕有一点点修改,也要把整个sessions数据全部序列化(serialize),还要广播给集群中所有节点,不管该节点到底需不需要这个session。这样很容易会造成大量的网络通信,导致网络阻塞。一般采用这种方式,当Tomcat节点超过4个时候,整个集群的吞吐量就不能再上升了; 3、第三种方式是通过cookie保存用户信息的一个或几个关键字,每一个http请求到达web应用的时候,web程序拿这个关键字到数据库中读取相关的数据,然后对其进行处理。也就是说把session数据保存到了数据库中。这样以来在内存中的session就完全不需要了。这样做的缺点就是加大了数据库的负载,使得数据库变成了集群的瓶颈。而通过构造数据库集群提高负载能力往往需要高额的成本。 Terracotta的基本原理是对于集群间共享的数据,当在一个节点发生变化的时候,Terracotta只把变化的部分发送给Terracotta服务器,然后由服务器把它转发给真正需要这个数据的节点。这样对网络的压力就非常小,各个节点也不必浪费CPU时间和内存进行大量的序列化操作。把这种集群间数据共享的机制应用在session同步上,相当于对tomcat第二种集群实现机制进行了优化,既避免了对数据库的依赖,又能达到负载均衡和灾难恢复的效果。在对比测试中,采用Terracotta搭建Tomcat集群,节点达到8个时候,整个集群的吞吐量还一直是线性增长的。 为了方便使用Terracotta搭建Tomcat集群,Terracotta提供了专门的插件tim-tomcat。下面将对集群的搭建进行详细描述。 准备工作 首先需要下载如下软件: Apache Tomcat 目前Terracotta官方支持的Tomcat版本为: Apache Tomcat Apache Tomcat Apache Tomcat Terracotta 或更高版本 安装过程 在所有机器上安装Java 请参考目前支持的软硬件平台 在所有机器上安装Terracotta 选一台机器作为Terracotta服务器

搭建一个服务器集群

搭建一个服务器集群 包含负载均衡,HA高可用,MySQL主从复制,备份服务器,和监控服务器,服务用discuz 论坛演示 服务器配置如下 服务器名服务器ip服务器作用 backup192.168.199.180备份+zabbix监控+NFS Nginx1192.168.199.142主Director Nginx2192.168.199.145从Director Apache1192.168.199.200Apache1 Apache2192.168.199.210Apache2 Apache3192.168.199.233Apache3 Mysql1192.168.199.126主mysql Mysql2192.168.199.131从mysql Mysql3192.168.199.197从mysql VIP192.168.199.3Apache负载均衡VIP 在所有服务器上操作 #关闭selinux sed-i's/SELINUX=enforcing/SELINUX=disabled/'/etc/selinux/config&&setenforce0; #清空iptables iptables-F&&service iptables save; #安装nfs服务 yum install-y nfs-utils epel-release 配置backup服务器 mkdir-p/data/discuz#建立discuz应用目录 mkdir/opt/backup#建立backup目录 #设置目录的属主和属组 chown-R shared:shared/data/discuz chown-R shared:shared/opt/backup vi/etc/exports#设置共享目录 /data/discuz/192.168.199.0/24(rw,sync,all_squash,anonuid=500,anongid=500) /opt/backup/192.168.199.0/24(rw,sync,all_squash,anonuid=500,anongid=500) /etc/init.d/rpcbind start;/etc/init.d/nfs start#启动NFS服务 配置mysql服务器 #挂载NFS服务器backup目录 mount-t nfs-onolock192.168.199.180:/opt/backup/opt vi/etc/fstab 192.168.199.180:/opt/backup/opt nfs nolock00 安装MySQL #在3台mysql服务器上下载mysql5.7的二进制安装文件

windows下Tomcat负载均衡和集群配置

轻松实现Apache,Tomcat集群和负载均衡 作者:罗代均 ldj_work#https://www.doczj.com/doc/fe374807.html,,转载请保持完整性 0,环境说明 Apache :apache_2.0.55 1 个 Tomcat: apache-tomcat-5.5.17 (zip版) 2个 mod_jk:: mod_jk-apache-2.0.55.so 1个 第一部分:负载均衡 负载均衡,就是apache将客户请求均衡的分给tomcat1,tomcat2....去处理 1.安装apche,tomcat https://www.doczj.com/doc/fe374807.html,/下载Apache 2.0.55 https://www.doczj.com/doc/fe374807.html,/download-55.cgi下载tomcat5.5 zip版本(解压即可,绿色版) https://www.doczj.com/doc/fe374807.html,/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.15/下载mod_jk,注意和 apache版本匹配 按照jdk,我的路径为:E:\ide\apache\Apache2 解压两份Tomcat, 路径分别为 E:\ide\tomcat1,E:\ide\tomcat2

下载mod_jk

2.修改Apache配置文件http.conf 在apache安装目录下conf目录中找到http.conf 在文件最后加上下面一句话就可以了 include "E:\ide\apache\Apache2\conf\mod_jk.conf"

2. http.conf 同目录下新建mod_jk.conf文件,内容如下 #加载mod_jk Module LoadModule jk_module modules/mod_jk-apache-2.0.55.so #指定 workers.properties文件路径 JkWorkersFile conf/workers.properties #指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器JkMount /*.jsp controller 3.在http.conf同目录下新建 workers.properties文件,内容如下 worker.list = controller,tomcat1,tomcat2 #server 列表 #========tomcat1======== worker.tomcat1.port=8009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址 worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多 #========tomcat2======== worker.tomcat2.port=9009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat2.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址 worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor = 1 #server的加权比重,值越高,分得的请求越多

Tomcat部署项目时启动报错总结

Tomcat部署项目时启动报错总结 1、虚拟机报错端口被占用 tomcat的默认端口是8080(或者其他自己设置的),可能已经被其他占用。 解决方法:在tomcat安装路径下conf文件夹中的server.xml中把断口号改掉!如果一台机 器上使用多个tomcat,则改掉所有相关的端口避免重复了,包括想如下 在server.xml中找到如下地方改掉port的值 ● ●(改完后看看和本机上正在用 的tomcat是不是有重复的port) 2、tomcat的启动窗口一闪而过 Tomcat启动的dos窗口一闪而过,如何看出错信息? 在DOS窗口运行STARTUP.BAT文件, 另外,吧startup.bat文件最后的 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 改成: call "%EXECUTABLE%" run %CMD_LINE_ARGS% 分析原因1:jdk的环境变量没有配置好 解决方法:检查jdk环境变量的配置是否正确,或者重新配置jdk的系统环境变量JDK环境变量配置的步骤如下: 1.我的电脑-->属性-->高级-->环境变量. 2.配置用户变量: a.新建JAVA_HOME C:\Program Files\Java\j2sdk1.5.0(JDK的安装路径) b.新建 PATH (注意:把java的配置放在path的最前面) %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin c.新建CLASSPATH .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar 3.测试环境变量配置是否成功: 开始-->运行--〉CMD 键盘敲入:JAVAC JAVA 出现相应的命令,而不是出错信息,即表示配置成功! 环境变量配置的理解: 1. PATH环境变量。作用是指定命令搜索路径,在i命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin 目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。 2. CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。 3. JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。

售后服务集群服务器安装

(售后服务)集群服务器安 装

WIN2Kadvanceserver集群服务器安装 壹:安装要求 1.软件要求 于群集里的所有计算机上,均安装了MicrosoftWindows2000AdvancedServer或 Windows2000DataCenterServer。 2.硬件要求 群集服务节点的硬件,必须满足Windows2000AdvancedServer或Windows2000DataCenterServer的硬件要求。这些要求可于产品兼容性查找页面找到。 群集硬件必须是于群集服务硬件兼容性列表里的(HCL)。到Windows硬件兼容性列 表中,查询群集,就能够找到最新的群集服务HCL。 俩台满足HCL的计算机,分别具有如下配置: 有所安装的Windows2000AdvancedServer或 Windows2000DataCenterServer的启动盘。该启动盘不能位于下面 所描述的共享存储总线上。 共享的磁盘有独立的PCI存储适配器(SCSI或光纤)。启动盘适配器 除外。 群集里的每台计算机有俩块PCI网络适配器。 有HCL兼容的外部存储单元,它跟所有的计算机相连。它被作为群 集磁盘使用。建议使用独立磁盘冗余阵列(RAID)。 用存储线缆,将共享设备连接到所有的计算机。可参考制造商的指南, 配置存储设备。 3.网络要求 唯壹的NetBIOS群集名。 五个独立的、静态的IP地址:俩个用于内部网的网络适配器(192.0.0.1、192.0.0.2), 俩个用于外接公众网的网络适配器(10.10.100.1、10.10.100.2),壹个用于群集本身 (10.10.100.3)。

WAS集群部署方案及安装配置手册

W A S集群部署方案及安装 配置手册 Prepared on 24 November 2020

1. 部署方案参考 如上图所示,中间件平台主要包括两大部分: ●负载分发层 ?包括两台服务器,通过Heartbeat实现HA,提供浮动IP给客户 端,保证了系统不存在单点故障问题 ?负载分发软件采用IBM HTTP Server实现 ?通过IBM HTTP Server配置虚拟主机,实现对不同应用的请求进行 分发到不同的后台WAS中间件集群。 ●WAS中间件集群 ?包括两台4CPU(每CPU 4Core)服务,每个服务器上通过水平扩展可 以启动多个WAS服务器。 ?基于应用部署要求,为每个应用建立一个集群,逻辑上实现应用之 间的隔离。 ?每个集群可以根据应用的负载,动态分配WAS服务器实例数。如 HR应用访问量较大则分配4个WAS实例。

?但最小要保证一个集群至少包括2个WAS实现,并且这两个实例 分别在不同的物理服务器上,这样才能保证不出现单点故障。 ?部署管理器,部署在WAS Server1上。 2. WebSphere 7安装及配置 此安装配置说明仅供参考,还需要根据现场实现情况进行调整。 2.1.WAS安装 一、四台服务器拓朴结构 四台机器IP地址,名称与安装内容 主机名IP 安装软件(组件)

其中DM控制台管理用户admin,口令 两个web服务器的管理用户也是admin,口令 二、安装后验收 可打开应用服务器主机的控制管理台,管理用户admin,口令****** 服务器->集群下建有应用集群 服务器->应用服务器下建有两个WEB服务 节点共有五个,分别是一个控制节点(一个dmgr节点),两个受控节点(两个app 节点),两个非受控节点(两个web节点) 集群下各受控节点已同步,并启动服务;两个WEB服务已生成插件、传播插件并启动。 在DMGR控制管理台可直接控制两个WEB的启动与停止。 三、安装前系统检查 ?群集安装时,确认所有机子的日期要一致 ?确认磁盘空间足够 两个应用服务器的安装文件放在/was_install 两个WEB服务器的安装文件放在/http_install 安装目录都是安装于默认的/opt目录下

相关主题
文本预览
相关文档 最新文档