hostname

ip 说明
proxy-01 172.0.5.108 keepalived主节点nginx主负载均衡
proxy-02 172.0.5.39 keepalived备节点nginx辅负载均衡
VIP 172.0.5.199 客户机

1、在所有节点上配置

# systemctl stop firewalld         //关闭防火墙
# sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/sysconfig/selinux    //关闭selinux,重启生效
# setenforce 0                //关闭selinux,临时生效
# ntpdate 0.centos.pool.ntp.org    //时间同步
# yum install nginx -y           //安装nginx

2、在两个节点上安装nginx

安装步骤参考:Liunx 安装Nginx

3、安装keepalived

yum install -y keepalived

4、修改两个节点的hosts

[root@172-0-5-239 keepalived]# vim /etc/hosts
[root@172-0-5-239 keepalived]# 127.0.0.1   proxy-01
[root@172-0-5-108 keepalived]# vim /etc/hosts
[root@172-0-5-108 keepalived]# 127.0.0.1   proxy-02

5、防止脑裂产生问题,主备都采用不争抢模式nopreempt

且本质为先启动的keepalived节点即为主节点

! Configuration File for keepalivedglobal_defs {router_id edu-proxy-01
}vrrp_instance VI_1 {state BACKUP            #主备都是backupnopreempt                #备没有这个interface ens33virtual_router_id 51mcast_src_ip 172.0.5.239priority 110            #备要小于110advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.0.5.199/24 dev ens33 label ens33:1}
}
virtual_server 172.0.5.199 80 {delay_loop 3lb_algo rrlb_kind DR# persistence_timeout 1protocol TCPreal_server 172.0.5.239 80 {weight 1TCP_CHECK {connect_timeout 10nb_get_retry 3delay_before_retry 3connect_port 80}}real_server 172.0.5.108 80 {weight 1TCP_CHECK {connect_timeout 10nb_get_retry 3delay_before_retry 3connect_port 80}}
}

6、启动keepalived并加入开机自启、查看keepalived状态

systemctl start keepalived
systemctl enable keepalived
systemctl status keepalived 

7、查看ip,主节点多了inet 172.0.5.199/24 scope global secondary ens33:1

[root@172-0-5-239 sbin]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 00:0c:29:58:8f:95 brd ff:ff:ff:ff:ff:ffinet 172.0.5.239/24 brd 172.0.5.255 scope global dynamic ens33valid_lft 72248sec preferred_lft 72248secinet 172.0.5.199/24 scope global secondary ens33:1valid_lft forever preferred_lft foreverinet6 fe80::c64c:250:9d45:6317/64 scope link valid_lft forever preferred_lft forever
[root@172-0-5-239 sbin]# 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 00:0c:29:a3:1b:55 brd ff:ff:ff:ff:ff:ffinet 172.0.5.108/24 brd 172.0.5.255 scope global dynamic ens33valid_lft 72209sec preferred_lft 72209secinet6 fe80::393e:4b07:bc68:157f/64 scope link valid_lft forever preferred_lft forever
[root@172-0-5-108 keepalived]#

8、通过虚拟VIP访问

9、当主节点keepalived挂了之后,虚拟VIP会飘到备用keepalived节点上

[root@172-0-5-108 keepalived]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 00:0c:29:a3:1b:55 brd ff:ff:ff:ff:ff:ffinet 172.0.5.108/24 brd 172.0.5.255 scope global dynamic ens33valid_lft 72087sec preferred_lft 72087secinet 172.0.5.199/24 scope global secondary ens33:1valid_lft forever preferred_lft foreverinet6 fe80::393e:4b07:bc68:157f/64 scope link valid_lft forever preferred_lft forever
[root@172-0-5-108 keepalived]#

10、检测nginx脚本

[root@172-0-5-108 nginx]# cat chk_web.sh
#!/bin/bash
while true
do
if [ `ps -ef | grep nginx | grep -v grep | wc -l`  -lt 2 ]thensystemctl stop keepalived
fi
sleep 10
done[root@172-0-5-108 nginx]# chmod 755 chk_web.sh [root@172-0-5-108 nginx]# sh chk_web.sh &

参考链接:

企业级Nginx负载均衡与keepalived高可用实战视频教程

Nginx-keepalived+Nginx实现高可用集群

split-brain 脑裂问题(Keepalived)

18.3/18.4/18.5 用keepalived配置高可用集群

keepalived的抢占与非抢占模式

keepalived之vrrp_script详解

高可用实践——Keepalived踩坑记录

nginx keepalived高可用集群主从模式相关推荐

  1. Nginx+Keepalived高可用集群应用实践

    Nginx+Keepalived高可用集群应用实践 1.Keepalived高可用软件 1.1 Keepalived服务的三个重要功能 1.1.1管理LVS负载均衡软件 早期的LVS软件,需要通过命令 ...

  2. keepalived高可用集群技术介绍及实战演练

    一.Keepalived是什么 Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务 ...

  3. Keepalived高可用集群来实现web服务器负载均衡集群

    Keepalived高可用集群来实现web服务器负载均衡集群 一.Keepalived的介绍 Keepalived是一个提供HA重要的底层工具,最早期的作用是为ipvs提供HA功能的,还是一个可以提供 ...

  4. Haproxy+keepalived高可用集群实战

    前言 随着互联网火热的发展,开源负载均衡器的大量的应用,企业主流软件负载均衡如LVS.Haproxy.Nginx等,各方面性能不亚于硬件负载均衡F5,Haproxy提供高可用性.负载均衡以及基于TCP ...

  5. Web服务器群集——LVS-DR+Keepalived高可用集群

    LVS-DR+Keepalived高可用集群 什么是高可用集群? 高可用集群的衡量标准 自动切换/故障转移(FailOver) 自动侦测 脑裂 常见解决方案 Keepalived Keepalived ...

  6. Java架构师成长直通车:LVS+Nginx实现高可用集群

    LVS+Nginx实现高可用集群 常见服务器 安装 Nginx(CentOS) Nginx 的进程模型 Nginx 事件处理 nginx.conf 核心配置文件 Nginx 的跨域配置和防盗链 负载均 ...

  7. LVS+Nginx实现高可用集群

    LVS+Nginx实现高可用集群 常见服务器 [安装 Nginx(CentOS)](#安装 Nginx(CentOS)) [Nginx 的进程模型](#Nginx 的进程模型) [Nginx 事件处理 ...

  8. Keepalived 高可用集群的使用

    Keepalived 高可用集群的使用 Keepalived 高可用集群的使用 Keepalived介绍 Keepalived 服务的三个重要功能 Keepalived 高可用故障切换转移原理(重点) ...

  9. keepalived vip mysql_mysql+keepalived高可用集群

    mysql+keepalived高可用集群 我们了解在LVS集群当中,LVS是整个机群的唯一入口!如果LVS出现故障的话,那么整个集群都将无法访问!像这种重要的服务器只有一台服务器在工作的情况,如果出 ...

最新文章

  1. 深入理解JDK动态代理
  2. 计算机病毒攻防技术研究,计算机网络病毒辐射攻防技术研究.pdf
  3. Nature『大脑废物清除系统』已上线,从“痴呆”变聪明或成可能
  4. java spring怎么运行_java – 如何使用spring异步运行方法?
  5. oracle中查看pga大小,oracle调整sga、pga大小
  6. 有道精品课python-有道精品课-Python小咖养成计划
  7. Solr6.7 学习笔记(01) -- 目录结构
  8. springboot启动后controller访问404
  9. 鸿蒙是单线程还是多线程,鸿蒙 RT-Thread 两者之间究竟是不是竞争关系呢
  10. PyTorch随笔-4
  11. 《信息检索导论》第七章总结
  12. 用Dojo实现Ajax请求:XH“.NET研究”R、跨域、及其他
  13. 用 Nginx 禁止国外 IP 访问我的网站..
  14. android mp3 lrc歌词文件utf-8歌词显示为乱码,Android访问Tomcat错误以及mp3player项目乱码问题解决...
  15. 学校计算机组管理制度,校园一卡通管理结算中心机房管理制度
  16. 随着无人机将承担更多的作战任务,“AI辅助空战”或将应运而生
  17. 安装ie9提示未能完成安装_win10系统安装iE提示“internet Explorer未能完成安装”的方法介绍...
  18. tensorboard 2.0可视化 —浏览器中输入http://ip:6006 - 无法访问此网站——有效解决
  19. Serverless开源框架对比
  20. eNSP:实现不同网段不同vlan主机之间的互访(配置单臂路由)

热门文章

  1. 唤起qq聊天,拨打电话等
  2. Axure RP 8来回旋转
  3. Chef 的安装与使用
  4. NUMERIC(10,4) 和DECIMAL(10, 4) 的区别和用法?
  5. 强烈推荐国内几款优秀的开源电商系统
  6. ssm+easyUI之分页查询
  7. English--基础知识点--2--独立主格
  8. 差分隐私相关论文(2) —— Deep Learning with Differential Privacy, Abadi 2016
  9. 松滋覃氏家族是明皇子朱棣的御林指挥使卢振的后裔
  10. 考研小助手 Mathematica 麦酱教你算不定积分 wolfram alpha