一、LVS1服务器配置

安装ipvsadm,keepalived

[root@localhost ~]# yum -y install ipvsadm keepalived

配置keepalivedde配置文件

[root@localhost ~]# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.200.1
smtp_connect_timeout
router_id LVS_MASTER
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval
vrrp_gna_interval
} vrrp_instance VI_1 {
state MASTER
interface eno16777728
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.200.201
}
}
virtual_server 192.168.200.201 {
delay_loop
lb_algo rr
lb_kind DR
persistence_timeout
protocol TCP real_server 192.168.200.113 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
} real_server 192.168.200.11 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
}
#############################################################
vrrp_instance VI_2 {
state BACKUP
interface eno16777728
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.200.202
}
}
virtual_server 192.168.200.202 {
delay_loop
lb_algo rr
lb_kind DR
persistence_timeout
protocol TCP real_server 192.168.200.113 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
} real_server 192.168.200.11 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
}

关闭防火墙,安全策略,启动服务并查看

#关闭防火墙,安全策略
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# iptables -F
[root@localhost ~]# setenforce
#启动keepalived服务
[root@localhost ~]# systemctl start keepalived
#查看VIP
[root@localhost ~]# ip a | grep inet
inet 127.0.0.1/ scope host lo
inet6 ::/ scope host
inet 192.168.200.111/ brd 192.168.200.255 scope global eno16777728
inet 192.168.200.201/ scope global eno16777728
inet6 fe80::20c:29ff:fef0:/ scope link
#查看策略
[root@localhost ~]# ipvsadm -Ln
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.200.201: rr persistent #发现服务器192.168.200.11有问题
-> 192.168.200.113: Route
TCP 192.168.200.202: rr persistent
-> 192.168.200.113: Route

二、LVS2服务器配置

安装ipvsadm,keepalived

[root@localhost ~]# yum -y install ipvsadm keepalived

配置keepalivedde配置文件

[root@localhost ~]# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.200.1
smtp_connect_timeout
router_id LVS_MASTER
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval
vrrp_gna_interval
} vrrp_instance VI_1 {
state BACKUP
interface eno16777728
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.200.201
}
}
virtual_server 192.168.200.201 {
delay_loop
lb_algo rr
lb_kind DR
persistence_timeout
protocol TCP real_server 192.168.200.113 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
} real_server 192.168.200.11 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
}
#############################################################
vrrp_instance VI_2 {
state MASTER
interface eno16777728
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.200.202
}
}
virtual_server 192.168.200.202 {
delay_loop
lb_algo rr
lb_kind DR
persistence_timeout
protocol TCP real_server 192.168.200.113 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
} real_server 192.168.200.11 {
weight TCP_CHECK{
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
}

关闭防火墙,安全策略,启动服务并查看

#关闭防火墙,安全策略
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# iptables -F
[root@localhost ~]# setenforce
#启动keepalived服务
[root@localhost ~]# systemctl start keepalived
#查看VIP
[root@localhost ~]# ip a | grep inet
inet 127.0.0.1/ scope host lo
inet6 ::/ scope host
inet 192.168.200.112/ brd 192.168.200.255 scope global eno16777728
inet 192.168.200.202/ scope global eno16777728
inet6 fe80::20c:29ff:fe96:8ef5/ scope link
#查看策略
[root@localhost ~]# ipvsadm -Ln
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.200.201: rr persistent
-> 192.168.200.113: Route
TCP 192.168.200.202: rr persistent
-> 192.168.200.113: Route

四、Apache服务器的配置(相同)

[root@localhost ~]# ifconfig lo: 192.168.200.201 netmask 255.255.255.255
[root@localhost ~]# ifconfig lo: 192.168.200.202 netmask 255.255.255.255
#查看配置
[root@localhost ~]# ip a
: lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN
link/loopback ::::: brd :::::
inet 127.0.0.1/ scope host lo
valid_lft forever preferred_lft forever
inet 192.168.200.201/ scope global lo:
valid_lft forever preferred_lft forever
inet 192.168.200.202/ scope global lo:
valid_lft forever preferred_lft forever
inet6 ::/ scope host
valid_lft forever preferred_lft forever
: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::fb:c6:2d brd ff:ff:ff:ff:ff:ff
inet 192.168.200.113/ brd 192.168.200.255 scope global eno16777728
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fefb:c62d/ scope link
valid_lft forever preferred_lft forever

路由配置

[root@localhost ~]# route add -host 192.168.200.201 dev lo:
[root@localhost ~]# route add -host 192.168.200.202 dev lo:

参数配置

[root@localhost ~]# vim /etc/sysctl.conf
net.ipv4.conf.all.arp_ignore=
net.ipv4.conf.all.arp_announce =
net.ipv4.conf.default.arp_ignore =
net.ipv4.conf.default.arp_announce =
net.ipv4.conf.lo.arp_ignore =
net.ipv4.conf.lo.arp_announce =
#启用参数
[root@localhost ~]# sysctl -p
net.ipv4.conf.all.arp_ignore =
net.ipv4.conf.all.arp_announce =
net.ipv4.conf.default.arp_ignore =
net.ipv4.conf.default.arp_announce =
net.ipv4.conf.lo.arp_ignore =
net.ipv4.conf.lo.arp_announce =

安装httpd服务

[root@localhost ~]# yum -y install httpd
#准备测试页
[root@localhost ~]# echo "" > /var/www/html/index.html
#启动服务,关闭防火墙
[root@localhost ~]# systemctl restart httpd
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# iptables -F
[root@localhost ~]# setenforce

五、测试

LVS负载均衡实现双向热备的更多相关文章

  1. Haproxy/LVS负载均衡实现+keepalived实现高可用

    haproxy+keepalived 集群高可用集群转发 环境介绍 #内核版本 Ubuntu 18.04.4 LTS \n \l 107-Ubuntu SMP Thu Jun 4 11:27:52 U ...

  2. 20.LVS负载均衡群集—NAT模式实例

    LVS负载均衡群集-NAT模式实例 目录 LVS负载均衡群集-NAT模式实例 群集引用概述 群集的含义 问题 解决方法 企业群集分类 群集的三种类型 负载均衡群集(Load Balance Clust ...

  3. 观nginx与lvs负载均衡的较量

    在技术工作者中,常用到的就是lvs负载均衡和Nginx负载均衡了.这两者也是比较普及的.那么,根据不同的需求,两者存在着不同的优势.具体选择哪一个,还要看您的要求了.那么我们在此为大家分享一篇文章,对 ...

  4. 高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群

    高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群 libnet软件包<-依赖-heartbeat(包含ldirectord插件(需要perl-MailTools的rpm包)) l ...

  5. 大数据高并发系统架构实战方案(LVS负载均衡、Nginx、共享存储、海量数据、队列缓存)

    课程简介: 随着互联网的发展,高并发.大数据量的网站要求越来越高.而这些高要求都是基础的技术和细节组合而成的.本课程就从实际案例出发给大家原景重现高并发架构常用技术点及详细演练. 通过该课程的学习,普 ...

  6. LVS 负载均衡解决方案 (windows IIS)

    LVS 负载均衡解决方案 因为我们的产品运行的主流平台是WINDOWS+IIS+SQLSERVER(2000以上版本),而LVS+KEEPALIVED是LINUX下的四层负载均衡软件.其有如下特点: ...

  7. 实现基于LVS负载均衡集群的电商网站架构

    背景 上一期我们搭建了小米网站,随着业务的发展,网站的访问量越来越大,网站访问量已经从原来的1000QPS,变为3000QPS,网站已经不堪重负,响应缓慢,面对此场景,单纯靠单台LNMP的架构已经无法 ...

  8. 十 LVS 负载均衡

    回顾nginx 反向代理负载均衡 负载均衡的妙用 负载均衡(Load Balance)集群提供了一种廉价.有效.透明的方法, 来扩展网络设备和服务器的负载.带宽.增加吞吐量.加强网络数据处理能力. 提 ...

  9. LVS负载均衡集群

    回顾-Nginx反向代理型负载 负载均衡(load balance)集群,提供了一种廉价.有效.透明的方法,来扩展网络设备和服务器的负载.带宽.增加吞吐量.加强网络数据处理能力.提高网络的灵活性和可用 ...

随机推荐

  1. Redis 实现美团的外卖派单系统“附近的人”筛选实战原理分析

    针对“附近的人”这一位置服务领域的应用场景,常见的可使用PG.MySQL和MongoDB等多种DB的空间索引进行实现.而Redis另辟蹊径,结合其有序队列zset以及geohash编码,实现了空间搜索 ...

  2. python yield关键词使用总结

    python yield关键词使用总结 by:授客 QQ:1033553122 测试环境 win10 python 3.5 yield功能简介 简单来说,yield 的作用就是把一个函数变成一个 ge ...

  3. 分析Android APK-砸壳-Fdex2

    砸壳的工具千千万,但是FDex2 是最有能耐的,我尝试过各种壳,都是秒砸的.特别说明一下,360的壳,oncreated 方法还是空的,但是其他大部分内容还是有的,反正是可以参考一下的. 安装环境: ...

  4. Android五大布局详解——TableLayout(表格布局)

    TableLayout 前面所学的LinearLayout和RelativeLayout两大布局已经完全适用于各种开发条件下,其他的布局仅供参考学习,毕竟知识就是力量,以后的开发过程中万一遇到也能游刃 ...

  5. Spring Boot与ActiveMQ整合

    Spring Boot与ActiveMQ整合 1使用内嵌服务 (1)在pom.xml中引入ActiveMQ起步依赖 <dependency> <groupId>org.spri ...

  6. [20191125]oracel SQL parsing function qcplgte 2.txt

    [20191125]oracel SQL parsing function qcplgte 2.txt --//参考前面的测试:http://blog.itpub.net/267265/viewspa ...

  7. Redis & memcached PK

    redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  8. MySQL数据库~~~~~索引

    1. 索引 索引在MySQL中也叫"键"或者"key",是存储引擎于快速找到记录的一种数据结构. 索引的数据结构: B+树 B+树性质: 索引字段要尽量小; 索 ...

  9. Java之StringBuilder类

    StringBuilder类的由来 由于String类的对象内容不可改变(底层是一个被final修饰的数组),所以每当我们进行字符串拼接时,总是会在内存中创建一个新的对象.如果对字符串进行拼接操作,每 ...

  10. 关于大数据T+1执行流程

    关于大数据T+1执行流程 前提: 搭建好大数据环境(hadoop hive hbase sqoop zookeeper oozie hue) 1.将所有数据库的数据汇总到hive (这里有三种数据源 ...