keepalived+nginx主从配置
来源:互联网 发布:手机放线软件 编辑:程序博客网 时间:2024/06/04 23:24
准备环境4台虚拟机 环境LNMP ,参照:CentOS7 一键安装LNMP环境
IP地址分别为 192.168.0.201,202,203,204
201当master ,202当backup 203和204当web应用
201和202分别安装 keepalived
首先要安装依赖包
yum -y install gcc pcre-devel zlib-devel openssl-devel popt-devel
下载keepalived
wget http://www.keepalived.org/software/keepalived-1.2.7.tar.gz
解压
tar zxvf keepalived-1.2.7.tar.gz
编译安装
./configuremake make install
执行如下命令,主要是把keepalived加到系统配置中让系统识别和开机启动
cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/mkdir /etc/keepalivedcp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/cp /usr/local/sbin/keepalived /usr/sbin/echo "/etc/init.d/keepalived start" >> /etc/rc.local
开始配置201和202的nginx的一模一样的没有任何区别,如下:
编辑 /usr/local/nginx/conf/nginx.conf
在server之前加
upstream hq.com {# ip_hash; server 192.168.203:80; server 192.168.204:80; }
添加虚拟主机
server {listen 80;server_name hq.com;access_log off;index index.html index.htm index.php; location / { proxy_pass http://hq.com; }location ~ [^/]\.php(/|$) { #fastcgi_pass remote_php_ip:9000; fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; }location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ { expires 30d; access_log off; }location ~ .*\.(js|css)?$ { expires 7d; access_log off; }}
nginx配置完了,接下来配置keepalived
编辑201的配置 vi /etc/keepalived/keepalived.conf
只需要修改 global_defs 和 vrrp_instance VI_1的匹配段里面的内容如下就可以了
global_defs { router_id NGINX_UPSTREAM}vrrp_instance VI_1 { state MASTER #标识为主master interface eth1 #需要绑定的网卡,默认是eth0,我这里是eth1根据实际情况而定,ifconfig命令查看 virtual_router_id 51 #这个与backup里面的路由id配置一样都是51 priority 100 #优先级别是100一定要大于backup里面的值 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.0.110 #虚拟ip地址,我们设置为110 }}
编辑202的配置 vi /etc/keepalived/keepalived.conf
只需要修改 global_defs 和 vrrp_instance VI_1的匹配段里面的内容如下就可以了
global_defs { router_id NGINX_UPSTREAM}vrrp_instance VI_1 { state BACKUP #标识为从backup interface eth1 #需要绑定的网卡,默认是eth0,我这里是eth1根据实际情况而定,ifconfig命令查看 virtual_router_id 51 #这个与master里面的路由id配置一样都是51 priority 99 #优先级别是99一定要小于master里面的值 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.0.110 #虚拟ip地址,我们设置为110 }}
以上主从的配置区别只有两个地方:state MASTER/BACKUP 和 priority 100/99 优先级别
配置好以后,我们在201和202上分别启动keepalived
/etc/init.d/keepalived start
然后在201用命令 ip addr 结果如下:
我们发现多了一个ip为110,这个其实就是我们上面配置的虚拟ip
我们在202上面输入同样的命令 ip addr
并没有什么特殊的变化
我们把201的keepalived 停掉
[root@localhost conf]# /etc/init.d/keepalived stopStopping keepalived: [ OK ][root@localhost conf]#
再来202上输入 ip addr 如下:
会发现110的ip绑定到这边了。
然后去201上启动 keepalived 之后,再看ip绑定情况,发现201上又多了100,而202上没有了。
这样只是模拟故障的情况下,一台挂掉了,另外一台能继续工作。
203和204的web配置参考上一篇文章 :Nginx负载均衡
现在本机的hosts要指向到 192.168.0.110 hq.com
我们依然在本机浏览器中访问 hq.com
依然显示:this address is 204! 与 this address is 203! 的交替出现。
现在的架构就健壮一点了,201,202,203,204 现在我们关闭任何一台服务器。业务不会中断
这里只是简单介绍了 keeplived的基本的用途,有一定的了解。实际上并没有监控到nginx上,监控nginx需要脚本,请自行百度。。。
提示:可以用nmap 检查nginx的端口来判断状态。
- keepalived+nginx主从配置
- Nginx Keepalived 双主(互为主从)安装与配置
- centos7+nginx+keepalived互为主从
- centos7+nginx+keepalived互为主从
- keepalived+nginx(主从模式)
- keepalived nginx简单配置
- keepalived+nginx安装配置
- keepalived + nginx HA 配置
- Nginx + Keepalived 配置实例
- nginx keepalived安装配置
- nginx+keepalived配置负载
- Keepalived+Nginx架构配置
- keepalived +nginx 配置
- keepalived+nginx的配置
- nginx+keepalived安装配置
- keepalived + nginx 配置
- nginx + keepalived 实现HA 主从模式
- Lvs+Keepalived+Squid+Nginx+Mysql主从 高性能集群架构配置
- java菜鸟————————一个简单仓库管理系统
- HDU
- 异常处理
- 充满仪式感的生活
- 存储器层次结构示例
- keepalived+nginx主从配置
- JSP(一)
- 51nod 1574 排列转换(贪心)
- Md5加密
- HDU 3709 Balanced Number
- 基于FreeRTOS与MQTT的物联网技术应用系列——步进电机控制(一)前言
- 超越seo竞争对手的策略
- 今天开始,以后复习的方式改为写博客总结
- SpringBoot JPA接口使用方法