Apache+Tomcat+keepalived的负载均衡session复制及HA

标签: apache tomcat keepalived | 发表时间:2014-09-09 19:38 | 作者:wiselyman
出处:http://www.iteye.com

1 Apache负载均衡

0、关闭防火墙(service iptables stop; chkconfig --level 35 iptables off),

   关闭selinux vi /etc/selinux/config   SELINUX=disabled

setenforce 0 生效

 

1、将mod_jk-1.2.31-httpd-2.2.x.so上传至/etc/httpd/modules目录下

 

 

2、

vi /etc/httpd/conf/httpd.conf

在Include conf.d/*.conf下

增加

Include /etc/httpd/conf/mod_jk.conf

 

配置

ServerName=192.168.1.X:80

 

3、

vi /etc/httpd/conf/mod_jk.conf

增加

 

LoadModule jk_module /etc/httpd/modules/mod_jk.so

 

JkWorkersFile /etc/httpd/conf/workers.properties

 

JkLogFile /etc/httpd/logs/mod_jk.log

 

JkLogLevel warn

 

JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

 

JkMount /*.* controller 

 

4、

vi /etc/httpd/conf/workers.properties

增加

 

 

worker.list=controller

 

worker.tomcat1.port=8009

worker.tomcat1.host=192.168.1.152

worker.tomcat1.type=ajp13

worker.tomcat1.lbfactor=1 



worker.tomcat2.port=8009 

worker.tomcat2.host=192.168.1.155

worker.tomcat2.type=ajp13

worker.tomcat2.lbfactor=1 

 

worker.tomcat3.port=8009 

worker.tomcat3.host=192.168.1.156

worker.tomcat3.type=ajp13

worker.tomcat3.lbfactor=1 

 

worker.controller.type=lb 

worker.retries=3

worker.controller.balance_workers=tomcat1,tomcat2,tomcat3

 

worker.controller.sticky_session=false

2 Tomcat session复制

1、对于每一个server.xml

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

 

2、在Engine标签内增加

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

 

3、在程序的web.xml的web-app结束前增加 <distributable/>

3 HA(高可用性)keepalived配置

1、apache安装在105和106上

 

2、两台apache配置保持一致,除了httpd.conf的SERVERNAME配置的ip地址

 

3、两台机器分别安装keepalived

yum -y install keepalived

 

4、配置keepalived(105)

vi /etc/keepalived/keepalived.conf

========================================================

! Configuration File for keepalived

 

global_defs {

   notification_email {

     acassen@firewall.loc

     failover@firewall.loc

     sysadmin@firewall.loc

   }

   notification_email_from admin@wisely.com

   smtp_server 192.168.1.0

   smtp_connect_timeout 30

   router_id LVS_DEVEL

}

 

vrrp_script chk_httpd {

    script "killall -0 httpd"

    interval 1

    weight -2

}

 

vrrp_instance httpd_1 {

    state MASTER

    interface eth0

    virtual_router_id 58

    priority 100           #priority 

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1058

    }

    virtual_ipaddress {

    192.168.1.101           #vip

    }

    track_script {

    chk_httpd

    }

}

=========================================================

service keepalived start  #启动keepalived服务

chkconfig keepalived on

 

5、配置keepalived(106)

vi /etc/keepalived/keepalived.conf

=========================================================

! Configuration File for keepalived

 

global_defs {

   notification_email {

     acassen@firewall.loc

     failover@firewall.loc

     sysadmin@firewall.loc

   }

   notification_email_from admin@wisely.com

   smtp_server 192.168.1.0

   smtp_connect_timeout 30

   router_id LVS_DEVEL

}

 

vrrp_script chk_httpd {

    script "killall -0 httpd"

    interval 1

    weight -2

}

 

vrrp_instance httpd_1 {

    state BACKUP

    interface eth0

    virtual_router_id 58

    priority 99            #priority 

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1058

    }

    virtual_ipaddress {

    192.168.1.101           #vip

    }

    track_script {

    chk_httpd

    }

}

========================================================

 

访问http://192.168.1.101

<!--EndFragment-->


已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [apache tomcat keepalived] 推荐:

Apache+Tomcat+keepalived的负载均衡session复制及HA

- - 开源软件 - ITeye博客
0、关闭防火墙(service iptables stop; chkconfig --level 35 iptables off),.    关闭selinux vi /etc/selinux/config   SELINUX=disabled. setenforce 0 生效. 1、将mod_jk-1.2.31-httpd-2.2.x.so上传至/etc/httpd/modules目录下.

Apache整合Tomcat、集群

- - ITeye博客
Apache 整合 Tomcat 、集群. 1.1     使用mod_proxy整合. 1.2     使用mod_jk整合. 1.3.1    Tomcat集群配置. 1.3.2    mod_proxy进行负载均衡. 1.3.3    mod_jk进行负载均衡.        Apache整合Tomcat主要有两种方式,通过mod_proxy整合和通过mod_jk整合.

Docker自动部署Apache Tomcat

- - 开源软件 - ITeye博客
本文是Docker的入门文章,推荐Java开发者阅读. 文章详细介绍了如何用Docker来安装部署Tomcat. 扩展Tomcat的官方Dockerfile. 在容器里部署RESTful的Web服务并测试. 使用docker search可以查到最流行的(和官方的)Docker Tomcat容器: .

Nginx+keepalived做双机热备加tomcat负载均衡

- - 开心平淡对待每一天。热爱生活
   Nginx+keepalived做双机热备加tomcat负载均衡. 一.Nginx配置. 1.安装Nginx所需pcre库. 2.安装Nginx. ./configure: error: SSL modules require the OpenSSL library.Centos需要安装openssl-devel Ubuntu则需要安装:sudo apt-get install libssl-dev.

apache与tomcat负载集群的3种方法

- dongsheng - BlogJava-首页技术区
花了两天时间学习apache与tomcat的集成方法,现在把学习成果记录下来. apache与tomcat负载集群集成方法有3种jk、jk_proxy、http_proxy. 本次测试是1个apache集成两个tomcat. 安装apache http server省略,访问地址为http://127.0.0.1:8081.

Apache Tomcat 6.0.35前有拒绝服务,信息泄露等漏洞

- - C1G军火库
Apache Tomcat 6.0.35前有信息泄露相关的一个漏洞(CVE-2011-3375),. 以及另一个在此前广受关注的哈希碰撞引发拒绝服务(DoS)漏洞(CVE-2012-0022),. Apache 建议用户对 Tomcat 进行升级从而规避此漏洞. 一.安装Oracle JRockit.

Apache与Tomcat的3种连接方式分析

- - 服务器运维与网站架构|Linux运维|互联网研究
首先我们先介绍一下为什么要让 Apache 与 Tomcat 之间进行连接. 事实上 Tomcat 本身已经提供了 HTTP 服务,该服务默认的端口是 8080,装好 tomcat 后通过 8080 端口可以直接使用 Tomcat 所运行的应用程序,你也可以将该端口改为 80. 既然 Tomcat 本身已经可以提供这样的服务,我们为什么还要引入 Apache 或者其他的一些专门的 HTTP 服务器呢.

Apache+Tomcat+Memcached共享Session的构架设计

- - CSDN博客架构设计推荐文章
一、       方案目标. 实现互动留言系统、后台发布系统的高可用性,有效解决高并发量对单台应用服务器的冲击,确保应用服务器单点故障不影响系统正常运行. 二、       部署架构. 采取Tomcat集群的部署方式,Apache通过proxy_module代理方式对用户的请求进行负载均衡,转发至tomcat集群中的某一实例进行处理,tomcat集群之间通过Memcached高性能缓存集群共享持久Session.

Apache Tomcat DIGEST身份验证多个安全漏洞(CVE-2012-3439)

- - C1G军火库
发布时间: 2012-11-05 (GMT+0800). Apache Tomcat是一个流行的开放源码的JSP应用服务器程序. Apache Tomcat 7.0.0-7.0.27、6.0.0-6.0.35、5.5.0-5.5.35存在多个安全漏洞,成功利用后可允许攻击者绕过安全限制并执行非法操作.

使用 Redis 来存储 Apache Tomcat 7 的 Session

- - 编程语言 - ITeye博客
使用  Redis 服务器来存储Session非常有优势. 首先它是一个NOSQL数据,第二它很容易扩展使用. This kind of setup would lead to a clear understanding of how  Redis can behave as cache as well as a session storing system.