Keepalived+Nginx+tomcat实现系统的高可用
Keepalived+Nginx+tomcat实现系统的高可用
1:安装vmware虚拟机
2:安装linux系统,我自己下载的centos6.5
3:安装JDK,tomcat
解压tomcat到/usr/local
配置tomcat的首页
vim /usr/local/apache-tomcat-7.0.84/webapps/ROOT/index.jsp
配置防火墙
vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
启动tomcat
/usr/local/apache-tomcat-7.0.84/bin/startup.sh
4:安装nginx的依赖包和nginx
4.1:安装依赖pcre包
cd /usr/local/src
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz
tar -zxvf pcre-8.37.tar.gz
cd pcre-8.34
./configure&&make&&make install
4.2:安装依赖zlib包
cd /usr/local/src
wget http://zlib.net/zlib-1.2.11.tar.gz
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure&&make&&make install
4.3:安装依赖openssl包
cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.0.1t.tar.gz
tar -zxvf openssl-1.0.1t.tar.gz
./config --prefix=/usr/local/openssl && make && make install
4.4:nginx安装(以上三个依赖安装完后)
cd /usr/local
wget http://nginx.org/download/nginx-1.9.0.tar.gz
或curl -O http://nginx.org/download/nginx-1.9.0.tar.gz . 下载
tar -zxvf nginx-1.9.0.tar.gz
cd nginx-1.9.0
./configure && make && make install
#相当于 先执行./configure 再执行make 最后执行make install
配置nginx反向代理两个tomcat服务器
vim /usr/local/nginx/conf/nginx.conf
1)配置location和里面的proxy_pass
2)配置upstream
3)将配置文件发送到另外一个nginx服务器上去,使用scp命令
scp /usr/local/nginx/conf/nginx.conf root@192.168.182.129:/usr/local/nginx/conf/
启动/usr/local/nginx/sbin/nginx
重启nginx的命令/usr/local/nginx/sbin/nginx -s reload
nginx的访问日志
tail -f /usr/local/nginx/logs/access.log
5:安装keepalived
下载地址:https://pan.baidu.com/s/1G7sLL-YkZGSMu8G76yz1Rw 密码:adbw
./configure --prefix=/data/program/keepalived --sysconf=/etc
make && make install
或者通过yum安装keepalived
yum install keepalived -y
1)编辑keepalived配置文件
vim /etc/keepalived/keepalived.conf
--------------------------------------------------------------------------------------------------------
vrrp_instance VI_1 {
state MASTER # 配置为主MASTER为主,BACKUP为备
interface eno16777736 # 设置网卡
virtual_router_id 51 # 虚拟路由ID,全局唯一
priority 100 # 优先级,权重值
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
10.10.10.50 # VIP地址
}
}
---------------------------------------------------------------------------------------------------------
2)配置防火墙让keepalived可以组播进行心跳检测
centos 6下面修改防火墙
vi /etc/sysconfig/iptables
-A INPUT -p vrrp -d 192.168.182.128 -j ACCEPT
-A INPUT -p vrrp -d 192.168.182.129 -j ACCEPT
-A INPUT -p 112 -d 192.168.182.128 -j ACCEPT
-A INPUT -p 112 -d 192.168.182.129 -j ACCEPT
注意很多网上的会加上-i参数,-i表示你的网卡,比如-i eth0表示eth0这个网卡
#-p 112指定协议为112,也可-p vrrp即vrrp
centos7下面改防火墙
firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --in-interface enp4s0 --destination 192.168.182.128 --protocol vrrp -j ACCEPT
firewall-cmd --reload
启动keepalived
/etc/init.d/keepalived start
重启
/etc/init.d/keepalived restart
关闭keepalived
/etc/init.d/keepalived stop
查看keepalived的运行日志
tail -f /var/log/messages
查看keepalived进程
ps aux|grep keepalived
6:配置vmware模拟公网环境
7:nginx+keepalive实现高可用的不足
nginx支持大概每秒1万的并发,如果超过1万的并发的,就需要使用其他的方式来实现高可用了,比如:
LVS+Keepalived+Nginx
F5+Nginx
附录1
Vim复制一整行和复制多行
1、复制
1)单行复制
在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制;
2)多行复制 在命令模式下,将光标移动到将要复制的首行处,按“nyy”复制n行;其中n为1、2、3……
2、粘贴
在命令模式下,将光标移动到将要粘贴的行处,按“p”进行粘贴
dd表示删除一行
u 撤销上一步的操作
Ctrl+r 恢复上一步被撤销的操作
vim跳到页首gg,跳到页尾G
跳到行首0,调到行尾$
附录2
重启防火墙
/etc/init.d/iptables restart
查看网卡上的ip地址
ip a show eth0
ip a show eth1
配置selinux
vim /etc/selinux/config
SELINUX=disabled #将该配置改为disabled,保存退出后reboot
Keepalived+Nginx+tomcat实现系统的高可用的更多相关文章
- LVS + Keepalived + Nginx基于DR模式构建高可用方案
在大型网站中一般服务端会做集群,同时利用负载均衡器做负载均衡.这样有利于将大量的请求分散到各个服务器上,提升网站的响应速度.当然为了解决单点故障的问题,还会做热备份方案.这里演示利用LVS做负载均衡器 ...
- 高可用高性能分布式文件系统FastDFS进阶keepalived+nginx对多tracker进行高可用热备
在上一篇 分布式文件系统FastDFS如何做到高可用 中已经介绍了FastDFS的原理和怎么搭建一个简单的高可用的分布式文件系统及怎么访问. 高可用是实现了,但由于我们只设置了一个group,如果现在 ...
- keepalived+nginx负载均衡+ApacheWeb实现高可用
1.Keepalived高可用软件 Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能.因此,kee ...
- Keepalived+Nginx+Tomcat配置高可用负载均衡系统示例
前言 此示例为keepalived+nginx+tomcat的基础配置示例,某些特定配置此例中不会出现,在示例中会用到三个虚拟机:两个纯命令行用于模拟服务端配置,一个带桌面环境的用于模拟客户端访问,这 ...
- 搭建 Keepalived + Nginx + Tomcat 的高可用负载均衡架构
1 概述 初期的互联网企业由于业务量较小,所以一般单机部署,实现单点访问即可满足业务的需求,这也是最简单的部署方式,但是随着业务的不断扩大,系统的访问量逐渐的上升,单机部署的模式已无法承载现有的业务量 ...
- [转]搭建Keepalived+Nginx+Tomcat高可用负载均衡架构
[原文]https://www.toutiao.com/i6591714650205716996/ 一.概述 初期的互联网企业由于业务量较小,所以一般单机部署,实现单点访问即可满足业务的需求,这也是最 ...
- 搭建Keepalived + Nginx + Tomcat的高可用负载均衡架构
1 概述 初期的互联网企业由于业务量较小,所以一般单机部署,实现单点访问即可满足业务的需求,这也是最简单的部署方式,但是随着业务的不断扩大,系统的访问量逐渐的上升,单机部署的模式已无法承载现有的业务量 ...
- Keepalived + Nginx + Tomcat 的高可用负载均衡架构搭建
Keepalived + Nginx + Tomcat 的高可用负载均衡架构搭建 Nginx 是一个高性能的 HTTP反向代理服务器 Keepalived 是一个基于VRRP协议来实现的LVS服务高可 ...
- Keepalived + Nginx + Tomcat 高可用负载均衡架构
环境: 1.centos7.3 2.虚拟ip:192.168.217.200 3.192.168.217.11.192.168.217.12上分别部署Nginx Keepalived Tomcat并进 ...
随机推荐
- python基础(三)——类的研究
class Employee: //定义类 以冒号结束 '所有员工的基类' //帮助信息 empCount = 0 def __init__(self, name, salary): //调用时初始化 ...
- MySQL--批量KILL连接
============================================== 使用SELECT INTO OUTFILE方式获取到要删除的连接ID并保存为文件,在通过SOURCE执行 ...
- Unity 资源的优化管理 学习
- 使用Managed Extensibility Framework方便的扩展应用程序
概述 Managed Extensibility Framework(MEF)是.NET平台下的一个扩展性管理框架,它是一系列特性的集合,包括依赖注入(DI)以及Duck Typing等.MEF为开发 ...
- SpringMVC请求体参数处理问题
如果请求定义为application/json格式,则要用Spring MVC中@RequestBody参数才能接受(用@RequestParam参数接受会报400错误),但SpringMVC的@Re ...
- webpack 3 升级到 webpack 4,遇到问题解决
报错:Error: Chunk.entrypoints: Use Chunks.groupsIterable and filter by instanceof Entrypoint instead 解 ...
- TypeScript 之 NPM包的类型
https://m.runoob.com/manual/gitbook/TypeScript/_book/doc/handbook/Typings%20for%20NPM%20Packages.htm ...
- Nginx浏览目录配置及美化
https://segmentfault.com/a/1190000012606305 在项目中有一个功能需要在浏览器页面中浏览服务器的目录.服务器使用Nginx,而Nginx提供了相应的ngx_ht ...
- 1、Nginx集群tomcat
一.准备工作 下载nginx,http://nginx.org/,本文采用nginx-1.8.0,下载之后直接解压,免安装 下载tomcat,以配置3台tomcat服务器做负载均衡为例 二.修改tom ...
- centos7上为什么不使用libcgroup进行资源限制
不使用libcgroup的原因 centos7上使用libcgroup进行资源限制可参考 https://blog.csdn.net/lanyang123456/article/details/814 ...