Keepalived实现LVS的高可用全解析
Keepalived实现LVS的高可用
一、概念引入:
keepalived作用:为lvs提供高可用集群
Keepalived的功能:1、将IP地址转移到另一个节点上;2、转移lvs规则;3、健康状况检查 即:health-check
Keepalived通过VRRP协议实现health-check,那么,什么叫做VRRP呢?
二、VRRP的定义
VRRP (Virtual Routing Redundent Protocol)是虚拟路由冗余协议,通过此协议我们可以把多个路由器做成一个虚拟路由器,从而来保证其中某个路由DOWN掉的时候不会造成我们内部外部网络的全部中断,其主要是实现地址漂移的
利用keepalive来实现lvs的Directory Server的高可用集群,然后在利用keepalive和lvs的高可用来实现web服务的负载均衡!
三、RS上相关软件的安装和配置
1、安装配置Web
web1和web2上分别配置相应的IP地址:
RIP1:192.16.0.210/16
RIP2:192.16.0.211/16
2、安装httpd
yum install httpd –y
echo "web1.yuanquan.com"> /var/www/html/index.html
3、配置脚本 startrs.sh 如下:
#!/bin/bash
#
# Script to start LVS DR real server.
# description: LVS DR real server
#
. /etc/rc.d/init.d/functions
VIP=192.168.0.212
host=`/bin/hostname`
case "$1" in
start)
# Start LVS-DR real server on this machine.
/sbin/ifconfig lo down
/sbin/ifconfig lo up
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:0
;;
stop)
# Stop LVS-DR real server loopback device(s).
/sbin/ifconfig lo:0 down
echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
;;
status)
# Status of LVS-DR real server.
islothere=`/sbin/ifconfig lo:0 | grep $VIP`
isrothere=`netstat -rn | grep "lo:0" | grep $VIP`
if [ ! "$islothere" -o ! "isrothere" ];then
# Either the route or the lo:0 device
# not found.
echo "LVS-DR real server Stopped."
else
echo "LVS-DR real server Running."
fi
;;
*)
# Invalid entry.
echo "$0: Usage: $0 {start|status|stop}"
exit 1
;;
esac
4、在web1上执行此脚本,来完成vip和arp参数的设置
sh startrs.sh
然后查看相关IP参数信息
ifconfig
5、将Web1配置复制到web2
然后查看相关IP参数信息
ifconfig
四、DR上相关软件的安装和配置
1、安装keepalive软件,这里使用的是已经制作好的rpm包进行安装
yum -y --nogpgcheck localinstall keepalived-1.2.7-5.el5.i386.rpm #不校验并自动安装
2、ipvsadm软件安装,用于后面的ipvs规则的查看。
yum –y install ipvsadm #安装用户空间工具ipvsadm
ipvsadm –L –n #查看系统ipvs规则
如此般,我们的keepalived就安装完毕!~
五、keepalive配置文件的详解
keepalive的配置文件是/etc/keepalived/keepalived.conf,其文件内分为:全局配置、vrrp配置、lvs配置、服务程序监控检查
(1)全局配置:
! Configuration File for keepalived
global_defs { #全局配置,配置参数为{}内的内容
notification_email { #keepalive服务服务信息通知邮箱,可以为多个
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 127.0.0.1 #smtp服务器
smtp_connect_timeout 30 #连接smtp超时时间
router_id LVS_DEVEL
(2):虚拟路由组
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 101
advert_int 1
authentication {
auth_type PASS
auth_pass password
}
virtual_ipaddress {
172.16.10.1
}
}
(3):Virtual_server与real_server设置
virtual_server 172.16.10.1 80 {
delay_loop 6
lb_algo wlc
Lb_kind DR
nat_mask 255.255.0.0
persistence_timeout 50
protocol TCP
real_server 192.168.0.210 80 {
weight 1
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
virtual_server 172.16.10.1 80 {
delay_loop 6
lb_algo rr
lb_kind DR
nat_mask 255.255.0.0
persistence_timeout 50
protocol TCP
real_server 192.168.0.211 80 {
weight 1
url {
path /
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
(4):更改完成后复制到DS2上相同的一份,并把其中的state改成BACKUP,priority修改为100,其他的保存不变
(5)至此我们的DS高可用已经设置完了,启动keepalive测试下效果吧
DS1和DS2上分别开启keepalive服务
service keepalived start
ip addr show
(6)
(7)下面用Vip访问一下我们的web,看是否能成功
刷新一下
(8)下面模拟一下DS1 down掉吧~看看其vip能否否自动漂移
在DS1上停止keepalive服务
service keepalived stop
此时再看DS2的IP
再用vip进行web访问:
以上就是keepalived所要实现的基于LVS高可用的一些功能,当然它的功能远不止这些,这里只讲了一小部分(其他以后会慢慢补充),希望对读者有所帮助哦!
转载于:https://blog.51cto.com/mg5211/1202942
Keepalived实现LVS的高可用全解析相关推荐
- linux 跨物理 集群,linux学习之使用keepalived结合lvs搭建高可用负载均衡集群
环境如下: 192.168.2.199 vm1.example.com HA主服务器 192.168.2.202vm2.example.com HA备服务器 192.168.2.205vm3.exam ...
- 在Linux基于Keepalived搭建LVS实现高可用负载均衡
文章目录 前言 搭建步骤 配置真实服务器(RS) 配置负载均衡服务器(DS主) 配置负载均衡服务器(DS备) 测试 查看DS主备配置 访问VIP验证负载均衡 查看虚拟路由冗余协议(VRRP)数据包 验 ...
- keepalive+nginx实现负载均衡高可用_超详细的LVS+keepalived+nginx实现高性能高可用负载均衡集群教程...
概述 前面已经介绍了前两部分内容,下面主要介绍在nginx服务器方面的配置和测试整个集群是否可用. 在realserver端配置VIP 1.两台nginx服务器都要执行下面脚本: #vi /etc/r ...
- LVS原理详解及部署之五:LVS+keepalived实现负载均衡高可用
本文我们主要讲解的是LVS通过keepalived来实现负载均衡和高可用,而不是我们第三篇文章介绍的通过手动的方式来进行配置.通过脚本的方式来显示RS节点的健康检查和LVS的故障切换.此文会通过一个实 ...
- RedHat 7配置keepalived+LVS实现高可用的Web负载均衡
上一篇博文中我们使用keepalived实现了haproxy的高可用,但keepalived问世之初却是为LVS而设计,与LVS高度整合,LVS与haproxy一样也是实现负载均衡,结合keepali ...
- LVS+Keepalived实现负载均衡高可用
使用脚本实现LVS负载均衡 环境: 3台主机 DS:192.168.100.1 RS1:192.168.100.11 RS2:192.168.100.12 VIP:192.168.100.100 安装 ...
- keepalived+lvs实现高可用的负载均衡
############################################### keepalived keepalived+lvs实现高可用的负载均衡 测试 ############# ...
- keepalived+Nginx实现Web高可用
环境准备:关闭防火墙.关闭SELinux.配置YUM源 一.部署keepalived服务 1.web4安装Keepalive [root@web4 ~]# yum -y install keepali ...
- Keepalived+LVS-DR模式配置高可用负载均衡集群
环境: 虚拟机:VMware Workstation 操作系统:CentOS 5.5 一.keepalived+lvs-DR模式配置高可用负载均衡 拓扑如下: 二.服务器ip配置信息 1. ip_lb ...
最新文章
- 特斯拉AI总监:我复现了LeCun 33年前的神经网络,发现和现在区别不大
- Saltstack Master 配置文件详解
- 《Python游戏编程快速上手》第五章--龙穴探险
- vue.js koa2 mysql_nodejs-koa2-mysql-sequelize-jwt
- ZBrush中如何实现智能对称
- OpenCV-浮雕雕刻效果
- Java面向对象:对象的概念及面向对象的三个基本特征
- OSPFv3中LSA详解(八)——Type5类LSA详解
- grep常见操作整理(更新)
- linux命令行翻页
- python强制删除文件夹_对Python各种删除文件失败的处理方式-强制删除文件
- 银尔达-----合宙Air724全网通4g DTU无线透传模块串口UART(TTL)+RS485核心板
- 01-运营可能是一种思维方式
- moles-packer_Hashicorp的Packer-是否适合PHP开发人员?
- 单点要信双点遥信区别
- 中国标准时间转换为yyyy-MM-dd
- Elliptic curve Diffie–Hellman
- RGB565转RGB888
- 2022年金属非金属矿山(地下矿山)安全管理人员特种作业证考试题库模拟考试平台操作
- 教练机飞行原理与操控方法
热门文章
- java创建主键自增表_oracle创建表时设置自增主键
- bstr java_BSTR详解一 -BSTR简介和内部结构
- 为什么有些xpath绝对路径拿不到数据_我写的Xpath 为什么爬取不到内容
- trunc 文字与格式与字符串不符_EXCEL字符串中间数字提取进阶
- 文本框换行_多行文本框的认识以及代码详解
- html 如何判断文本溢出,判断文本是否溢出
- 上如何刻字_校园石阶上被人刻了1700多个字?!这次网友却说好
- LoadRunner 测试Oracle数据库及Siebel性能
- TensorFlow迁移学习的识别花试验
- ubuntu安装vsftpd