`

负载均衡 + SSL

    博客分类:
  • Java
阅读更多

最近在尝试架构WEB/AP,API服务器,整理一下。

 

1. WEB(Apache) + AP(Tomcat)

1.1 安装

1.安装或者解压压缩包到d:\Server\Apache2.2

2.测试:打开浏览器,输入localhost:80,显示[It's works!]

 

1.2 Load-Blancing

1.Tomcat集群:安装或解压压缩包到d:\Server\Tomcat1,d:\Server\Tomcat2

 

2.下载jk模块[mod_jk.so],放到:d:\Server\Apache2.2\modules

 

3.新建[d:\Server\Apache2.2\conf\\workers.properties]文件

#server
worker.list = controller      #控制器名称一览,逗号分隔。Web服务插件会初始化它。
#========tomcat1 连接指令========
# worker.<worker name>.<directive>=<value>
worker.tomcat1.port=8009      #ajp协议的端口,如果2个tomcat部署在同一个服务器中,那个ajp端口需要不同
worker.tomcat1.host=127.0.0.1 #tomcat的所在主机的ip,如果是本机,则写本机的ip即可
worker.tomcat1.type=ajp13     #worker类型,ajp13是JK用于Web服务器和Tomcat之间通信的首选worker类型
worker.tomcat1.lbfactor=1     #负载因子
 
#========tomcat2========
worker.tomcat2.port=9009
worker.tomcat2.host=127.0.0.1
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=1 
  
#======== 负载均衡指令 ========
worker.controller.type=lb    #worker类型,定义了可用于worker的指令。lb用于负载均衡
worker.controller.retries=3  #请求失败以后重试次数
worker.controller.balance_workers=tomcat1,tomcat2   #参与负载均衡的Tomcat名,
worker.controller.sticky_session=false    #会话是否有粘性,false表示无粘性,同一个会话的请求会到不同的tomcat中处理
worker.controller.sticky_session_force=false #当一个节点蹦了,如果设值为true,那么服务器返回500错误给客户端,如果设值为false,则转发给其他的tomcat,但是会丢失回话信息

 

4.新建[d:\Server\Apache2.2\conf\mod_jk.conf]文件

JkWorkersFile "D:/Server/Apache2.2/conf/workers.properties"
JkMount /* controller
jkLogFile "D:/Server/Apache2.2/logs/mod_jk.log"

 

5.修改[d:\Server\Apache2.2\conf\httpd.conf]文件

在最后增加下面两行,加载jk模块和配置

LoadModule jk_module d:/Server/Apache2.2/modules/mod_jk.so
Include "d:/Server/Apache2.2/conf/mod_jk.conf"

6)配置Tomcat

修改[D:\Server\tomcat1\conf\server.xml]文件,修改[AJP/1.3]connector,加入jvmRoute(参与负载均衡的worker名):

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

 Tomcat2里面的server.xml也修改,为了port不重复,

<Connector port="9009" protocol="AJP/1.3" redirectPort="8443" jvmRoute="tomcat2"/>

7)测试

 分别在Tomcat1和Tomcat2里创建同样webapp,通过浏览器访问,会发现根据负载因子的定义,分别访问Tomcat1,Tomcat2。

 

1.3 SSL

1.修改[d:\Server\Apache2.2\conf\httpd.conf]文件

 把下面两行的注释删除

Include conf/extra/httpd-ssl.conf  
LoadModule ssl_module modules/mod_ssl.so  

 

2.修改[d:\Server\Apache2.2\conf\httpd-ssl.conf]文件

 修改证书字段[SSLCertificateFile]和证书key字段[SSLCertificateKeyFile]的文件地址

SSLCertificateFile "d:/Server/Apache2.2/conf/server.crt"
SSLCertificateKeyFile "d:/Server/Apache2.2/conf/server.key"

    (这里省略证书的作成)

 

3.测试

访问https://localhost,出现页面就OK。

 

4.需要负载均衡的话,需要在httpd-ssl.conf文件里加入

JkMount /* controller  # controller是控制器名

 

2. API(Tomcat)

2.1 SSL

1.在提供AP服务的Tomcat实例的server.xml里,加入以下内容:

<Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
    disableUploadTimeout="true" enableLookups="false" maxThreads="25"
    port="8443" keystoreFile="d:\Server\tomcat.keystore" keystorePass="NNNNNN"
    protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
    secure="true" sslProtocol="TLS" />

(这里省略tomcat.keystore的生成)

还有注意修改ajp协议的port,不要和负载均衡的Tomcat里的ajp协议port重复。

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

 

2.测试

访问https://localhost:8443,可以看到Tomcat首页。

 

3.Reference:

1.Apache Tomcat Connectors:

https://tomcat.apache.org/connectors-doc/index.html

 

2.jk(Tomcat-Apache 插件,用来处理Tomcat 和 Apache之间的通信)

https://tomcat.apache.org/connectors-doc-archive/jk2/index.html

 

3.Tomcat SSL

https://tomcat.apache.org/tomcat-9.0-doc/ssl-howto.html#SSL_and_Tomcat

 

4.Tomcat集群

http://www.iteye.com/topic/1017961

 

5.Apache SSL

http://blog.csdn.net/happyqyt/article/details/9335397

 

6.Tomcat SSL

http://www.oschina.net/question/12_23148

 

End

 

分享到:
评论

相关推荐

    nginx配置 +负载均衡+https协议

    通过生成SSL证书、重新编译Nginx以添加SSL模块,以及编辑Nginx配置文件实现HTTPS支持和负载均衡功能。此外,还提供了Nginx的基本操作命令,包括启动、停止和重启等。这些步骤和配置为构建安全可靠的Web服务器提供了...

    nginx+tomcat+ssl实现负载均衡

    【Nginx+Tomcat+SSL 实现负载均衡】是一个常见的Web服务器架构,用于提高网站的可用性和响应速度。Nginx作为前端反向代理服务器,处理静态内容和客户端请求,将动态请求转发到后端的Tomcat应用服务器,同时通过SSL...

    Linux源码安装MySQL+MySQL主从+Nginx+Nginx负载均衡+redis+php+phpredis+tomcat

    在本教程中,我们将深入探讨如何在Linux环境中源码安装MySQL、MySQL主从复制、Nginx、Nginx负载均衡、Redis、PHP、phpredis以及Tomcat。这些技术是构建高效、可扩展的Web应用架构的基础。让我们逐一了解安装过程。 ...

    tomcat整合nginx负载均衡+memcache共享session全部程序包

    这个程序包“tomcat7+nginx+memcached”旨在实现通过Nginx进行负载均衡,以及利用Memcache来共享Tomcat服务器之间的Session数据。以下是关于这个集成方案的详细解释: 1. **Nginx**: - **功能**:Nginx是一款高...

    部署haproxy+ssl+keepalived

    在IT行业中,构建高可用和安全的Web服务是至关重要的,而"部署haproxy+ssl+keepalived"正是实现这一...总的来说,haproxy+ssl+keepalived的组合为Web服务提供了强大的负载均衡和高可用性保障,是企业级应用的常见选择。

    Apache与Tomcat整合教程(服务器负载均衡)

    当两者整合时,可以实现更高效、灵活的Web服务架构,特别是在处理高并发和负载均衡方面。 Apache以其稳定性和丰富的模块扩展性著称,能够处理静态内容,如HTML、CSS、JavaScript等,以及反向代理和负载均衡等功能。...

    Netty.rar+微服务架构+集群与负载均衡+编解码器设计与实现等教程

    Netty基础架构与核心组件 Netty事件模型与处理 ...Netty的集群与负载均衡策略 Netty在微服务架构中的应用 Netty与HTTP协议的交互 Netty的安全性与SSL/TLS集成 Netty的性能调优与监控 Netty实战:构建高性能服务器

    nginx负载均衡ssl证书认证强制跳转https+keeplived+apache

    在构建高可用性和安全性的网络服务时,"nginx负载均衡ssl证书认证强制跳转https+keeplived+apache"是一个常见的架构模式。该模式结合了Nginx的反向代理和负载均衡能力、Keepalived的高可用性保证以及SSL证书来确保...

    深信服负载均衡AD5.3用户手册

    负载均衡的关键技术包括但不限于:会话保持、健康检查、负载均衡算法、SSL卸载等。 - **会话保持**:确保同一用户的多个请求被转发到相同的服务器上。 - **健康检查**:定期检查后端服务器的状态,确保只有健康的...

    Linux下面配置Apache2 + tomcat7.0 + ssl 集群安装与配置

    在Linux环境下,构建一个基于Apache2和Tomcat7.0的SSL集群是一项关键任务,它涉及到网站的安全性和负载均衡。Apache作为前端服务器处理HTTPS请求,而Tomcat则作为后端应用服务器处理Java应用。以下是对这个配置过程...

    nginx负载均衡 nginx+tomcat tomcat实现负责均衡

    ### Nginx与Tomcat实现负载均衡的知识点详解 #### Nginx简介及特性 Nginx是一款由Igor Sysoev开发的高性能HTTP服务器和反向代理服务器,以其出色的稳定性和低系统资源消耗而著称。最初是为俄罗斯访问量排名第二的...

    NLB+ARR搭载负载均衡方案.docx

    "NLB+ARR 搭载负载均衡方案" NLB(Network Load Balancing)和 ARR(Application Request Routing)是两种不同的负载均衡技术,NLB 是一种基于网络层面的负载均衡技术,而 ARR 是一种基于应用层面的负载均衡技术。...

    Apache+tomcat+ssl配置+相关插件

    对于大型环境,可能还需要使用负载均衡器,如Nginx,来分发SSL终止和请求转发。 总的来说,Apache+Tomcat+SSL配置是一个涉及多方面知识的过程,包括网络协议、服务器配置、安全策略等。通过正确配置和使用相关插件...

    nginx+tomcat+ssl_https

    4. 集群配置:对于HTTP集群,可以通过负载均衡配置,比如轮询、权重分配等策略,将请求分发到多个Tomcat实例。对于HTTPS集群,配置过程类似,但所有HTTPS请求都通过Nginx进行加密和解密。 5. 测试和优化:启动Nginx...

    oracle WEB服务负载均衡

    ### Oracle WEB服务负载均衡知识点详解 #### 一、负载均衡的重要性及应用场景 负载均衡技术在现代互联网服务中扮演着至关重要的角色,特别是在Oracle环境中。随着电子商务的快速发展,企业越来越依赖其官方网站与...

    F5负载均衡会话保持

    【F5负载均衡会话保持】是网络架构中一种关键的技术,主要应用于大型网络环境,尤其是需要处理大量并发用户请求的场景,例如电子商务网站、银行系统等。F5的BIG-IP产品是一款强大的负载均衡器,它能够有效地管理和...

    负载均衡软件、硬件实现方案

    ### 负载均衡原理与实现方案 #### 一、负载均衡原理 负载均衡是一种用于在网络中分散工作负载的技术,其主要目的是优化资源利用、提高响应速度和避免单点故障。负载均衡通常应用于多服务器环境,通过对服务器之间...

    A10负载均衡模拟器 SoftAX 学习A10必备

    2. **全面的功能体验**:SoftAX包含了A10负载均衡器的主要特性,如会话持久性、健康检查、SSL卸载、应用加速以及多种负载分配算法等,用户可以深入理解和实践这些功能。 3. **教学与实验**:对于学习者,SoftAX提供...

    美国F5负载均衡器(负载均衡世界第一品牌).pdf

    F5负载均衡器BIG-IP LTM 1500技术参数指标和性能备注 F5负载均衡器BIG-IP LTM 1500是美国F5公司出品的一种高性能的负载均衡器设备。该设备具有强大的处理能力、高速的网络传输速度和高可用性,能够满足大规模网络...

    lvs四层的负载均衡和七层负载均衡的区别

    - 七层负载均衡如Nginx和HAproxy则适合需要更复杂路由策略的情况,如基于URL的路由或者需要进行SSL卸载等高级功能。 - 实际部署中应根据具体需求选择合适的负载均衡方案,同时考虑到性能、可维护性和成本等因素。

Global site tag (gtag.js) - Google Analytics