关键词:
keepalived简介
它是由C语言编写的路由热备软件,主要提供简单高效的负载均衡及高可用解决方案。keepalived通过VRRP协议实现高可用架构。lvs实现集群分发,keepalived实现调度器的主备方案,两者结合实现集群系统的高负载高可用。
VRRP协议是为了防止单点故障而设计的主从灾备协议,VRRP将两台或者多台路由设备虚拟成一个设备,对外提供一个虚拟路由ip地址,主路由设备处于启用状态时,不断的发送自身信息到备用设备,以表明主路由状态正常,当备用设备收不到主设备的信息时,备用设备会根据自身的优先级选举出新的主设备,并保证提供所有业务功能。
LVS+keepalived实例
服务器名称 网络接口 IP地址
router | 外网接口eth1 | 122.126.152.183 |
内网接口eth0 | 192.168.1.1 | |
lvs_1.test.com | eth0 | 192.168.1.5 |
eth0 VIP | 192.168.1.2 | |
lvs_2.test.com | eth0 | 192.168.1.6 |
eth0 VIP | 192.168.1.2 | |
web1.test.com | eth0 | 192.168.1.7 |
lo:0 VIP | 192.168.1.2 | |
web1.test.com | eth0 | 192.168.1.8 |
lo:0 VIP | 192.168.1.2 |
首先安装配置web1和web2
设置web1网路参数及回环设备lo:0设置VIP
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.7
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
vim /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
BOOTPROTO=static
IPADDR=192.168.1.2
NETMASK=255.255.255.255
GATEWAY=192.168.1.1
ONBOOT=yes
修改ARP参数
vim /etc/sysctl.conf
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
执行 sysctl -p
service network restart
iptables -F
iptables -X
service iptables save
setenforce 0
sed -i s/enforcing/disabled/g /etc/sysconfig/selinux
yum install -y httpd
echo "web1 192.168.1.7" > /var/www/html/index.html
service httpd restart
chkconfig httpd on
web2机器上执行与web1相同步骤,注意修改部分参数
lvs_1调度器操作
首先设置网络
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.5
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
TYPE=Ethernet
service network restart
安装部署keepalived ipvsadm
yum install -y gcc openssl-devel popt-devel libnl libnl-devel kernel-devel ipvsadm
下载keepalived
wget http://www.keepalived.org/software/keepalived-1.3.0.tar.gz
tar zxf keepalived-1.3.0.tar.gz -C /usr/src/
cd /usr/src/keepalived-1.3.0/
./configure
make && make install
ln -s /usr/local/etc/keepalived/ /etc/
ln -s /usr/local/etc/rc.d/init.d/keepalived /etc/init.d/
ln -s /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
ln -s /usr/local/sbin/keepalived /usr/sbin/
lvs_1为主设备,lvs_2为从设备,下面修改配置文件
vim /etc/keepalived/keepalived.conf
global_defs {
notification_email {
}
notification_email_from [email protected]
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id lvs_1
}
vrrp_instance LVS_HA {
state MASTER #lvs_2为BACKUP
interface eth0
virtual_router_id 60 #lvs_2的VRID必须与lvs-1相同
priority 100 #lvs-2为从设备,必须小于 lvs-1的参数
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.2/24
}
}
virtual_server 192.168.1.2 80 {
delay_loop 6
lb_algo rr
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout 50
protocol TCP
real_server 192.168.1.7 80 {
weight 1
TCP_CHECK {
connect_timeout 20
connect_port 80
nb_get_retry 3
}
}
real_server 192.168.1.8 80 {
weight 1
TCP_CHECK {
connect_timeout 20
connect_port 80
nb_get_retry 3
}
}
}
service keepalived start
chkconfig keepalived on
ip addr show #查看虚拟ip
ipvsadm -Ln #查看lvs规则
iptables -F
iptables -X
service iptables save
setenforce 0
sed -i s/enforcing/disabled/g /etc/sysconfig/selinux
lvs_2机器上执行相同操作,注意修改部分参数
下面配置router机器,这里用做软路由,生产环境直接用硬件路由设备
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.1
NETMASK=255.255.255.0
ONBOOT=yes
DNS=8.8.8.8
vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=static
IPADDR=122.126.152.183
NETMASK=255.255.255.254
ONBOOT=yes
DNS=8.8.8.8
service network restart
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t nat -I PREROUTING -d 122.126.152.183 -p tcp -dport 80 -j DANT --to--destination 192.168.1.2:80
iptables -t nat -I PREROUTING -s 192.168.1.0/24 -p tcp -j SNAT --to-source 122.126.152.183
service iptables save
setenforce 0
sed -i s/enforcing/disabled/g /etc/sysconfig/selinux
vim /etc/sysctl.conf
net.ipv4..ip_forward = 1
sysctl -p
客户端测试
浏览器访问http://122.126.152.183 将得到不同real server的数据包
本文出自 “实用Linux知识技能分享” 博客,请务必保留此出处http://superleedo.blog.51cto.com/12164670/1894886
基于lvs负载均衡群集来实现keepalived的部署技术(代码片段)
目录摘要一、Keepalived案例分析二、Keepalived工具介绍三、Keepalived实现原理剖析四、Keepalived案例讲解4.1、双机热备的故障切换是由虚拟IP地址来实现,适用于各种应用服务器4.2、实现基于Web服务的双机热备4.3、环境(基于LVS-DR... 查看详情
keepalived双机热备
关于keepalived专为LVS和HA设计的一款健康检查工具支持故障自动切换(Failover)支持节点健康状态检查(HealthChecking)官方网站:http://www.keepalived.org/keepalived概述及安装keepalived的热备方式VRRP(VirtualRouterRedundancyProtocol,虚拟路由冗... 查看详情
浅谈keepalived双机热备(代码片段)
一、Keepalived双机热备的基础知识keepalived官方网站:www.keepalived.org/在非LVS环境中keepalived也可以作为热备软件使用。1、Keepalived作用keepalived最初是专门针对LVS设计的一款强大的辅助工具,主要用来提供故障切换和健康检查功能—... 查看详情
keepalived双机热备
...LVS设计的一款辅助工具,主要功能是实现故障切换1、LVS+Keepalived高可用群集实验的目的是实现双机热备的同时实现负载均衡群集,当主调度器发生故障的时候,从服务器会继续提供调度工作,保证用户的正常访问。两台从调度器... 查看详情
lvs+keepalived+nginx双机热备实现nginx高可用
参考技术A系统:Centos7MASTER192.168.1.124:安装Lvs+KeepalivedBACKUP192.168.1.126:安装Lvs+Keepalived192.168.1.127:安装Nginx192.168.1.128:安装Nginx虚拟ip(VIP):192.168.1.110,对外提供服务的ip,也可称作浮动iphttps://www.jianshu.com/p/b58b2767a92d分别为192.168.1.... 查看详情
keepalived双机热备
Keepalived双机热备keeplived是专门针对LVS设计的一款辅助工具,采用的是vrrp(虚拟路由冗余协议)热备协议,以软件的方式实现Linux服务器的多机热备。主要功能是实现故障切换,当一台路由器发生故障的时候,另一台马上接... 查看详情
lvs+keepalived高可用群集
LVS+Keepalived高可用群集 目录第一部分 环境准备第二部分 使用Keepalived搭建双机热备第三部分 配置Web节点服务器第四部分 测试LVS+Keepalived高可用群集 第一部分 环境准备一:调... 查看详情
keepalived双机热备(代码片段)
1、Keepalived:专为LVS和HA设计的一款健康检查工具功能:支持故障切换(调度器)支持节点健康检查(web服务器)使用VRRP(虚拟路由冗余协议),一主多备,共用同一个IP地址漂移地址,群集地址),但优先级不同。2、Keepalived的... 查看详情
keepalived双机热备(代码片段)
1、Keepalived:专为LVS和HA设计的一款健康检查工具功能:支持故障切换(调度器)支持jie‘dian节点健康检查(web服务器)使用VRRP(虚拟路由冗余协议),一主多备,共用同一个IP地址漂移地址,群集地址),但优先级不同。2、Kee... 查看详情
keepalived现实web双机热备(高可用)
Keepalived现实Web双机热备(高可用) 通过在两台主、备调度器上实现Keepalived高可用解决调度器单点失败问题 主、备调度器上配置LVS,正常情况下主调度器工... 查看详情
keepalived现实web双机热备(高可用)
Keepalived现实Web双机热备(高可用) 通过在两台主、备调度器上实现Keepalived高可用解决调度器单点失败问题 主、备调度器上配置LVS,正常情况下主调度器工... 查看详情
keepalived双机热备
前言:keeplived是专门针对LVS设计的一款辅助工具,主要功能是实现故障切换,类似于我们以前学习过的HSRP热备份路由协议,HSRP是思科的私有协议,而VRRP是通用协议,都是为了实现故障切换,当一台路由器发生故障的时候,另一... 查看详情
keepalived高可用群集与lvs群集结合搭建
keepalived双机热备1:keepalived双机热备,主要是用来提供故障切换,和对节点服务器的健康检查。当故障主机回复之后加入群集2:keepalived是基于vrrp协议的方式进行热备方式,... 查看详情
keepalived高可用群集与lvs群集结合搭建
keepalived双机热备1:keepalived双机热备,主要是用来提供故障切换,和对节点服务器的健康检查。当故障主机回复之后加入群集2:keepalived是基于vrrp协议的方式进行热备方式,... 查看详情
keepalived双机热备+lvs负载实验案例
...主页内容3)开启httpd服务并设置为开机自启二、搭建Keepalived1、搭建Keepalived11)安装Keepalived2)备份主配置文件3)修改主配置文件4)启动keepalived并设置为开机自启2、搭建Keepalived21)安装Keepalived2)备份... 查看详情
keepalived双机热备+lvs负载实验案例
...主页内容3)开启httpd服务并设置为开机自启二、搭建Keepalived1、搭建Keepalived11)安装Keepalived2)备份主配置文件3)修改主配置文件4)启动keepalived并设置为开机自启2、搭建Keepalived21)安装Keepalived2)备份... 查看详情
使用keepalived实现双机热备
...动接管并且提供服务,而且切换的时间非常短。下面来以keepalived结合tomcat来实现一个web服务器的双机热备。keepalived的工作原理是VRRP(VirtualRouterRedundancyProtocol)虚拟路由冗余协议。在VRRP中有两组重要的概念:VRR 查看详情
lvs负载均衡群集——keepalived+dr模式(实战!)(代码片段)
keepalived实现原理keepalived采用vrrp热备份协议,实现Linux服务器的多机热备功能vrrp,虚拟路由冗余协议,是针对路由器的一种备份解决方案keepalivd案列讲解keepalived可实现多机热备,每个热备组有多台服务器,最常用的就是双机热... 查看详情