lvs keepalived 安装配置详解
前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较。F5相当的贵,真不是一般企业能负担的起的。负载均衡软件也用过不少,nginx,apache,haproxy等。下面说一下lvs配合keepalived实现高可用,配合heartbeat也行,看个人喜欢好了。
一,lvs和keepalived简单介绍
LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。
keepalived是一个类似于layer3, 4 & 5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web服务器。
二,安装前的说明
1,服务器介绍
- Master 192.168.1.11 //lvs主服务器
- BACKUP 192.168.1.12 //lvs从服务器
- VIP 192.168.1.8 //虚拟IP
- WEB1-Real 192.168.1.16 //WEB服务器
- WEB2-Real 192.168.1.17 //web服务器
2,内核比较,以及加软连接
/usr/src/kernels/下面内核版本要和所使用的内核版本要一样,如下图
内核是不是一样
ln -s /usr/src/kernels/2.6.32-71.el6.x86_64/ /usr/src/linux
如果没有linux文件夹建之。
我在网上找资料的时候,发现第2步,可以不要,不过我没有做测试。
三,安装配置
1,安装lvs,keepalived
yum install ipvsadm keepalived
2,lvs服务器主,从配置keepalived
- [root@localhost kernels]# cat /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 30
- router_id LVS_DEVEL //负载均衡器标识,同一网段内,可以相同
- }
- vrrp_sync_group VGM { //定义一个vrrp组
- group {
- VI_1
- }
- }
- vrrp_instance VI_1 { //定义vrrp实例
- state MASTER //主LVS是MASTER,从的BACKUP
- interface eth0 //LVS监控的网络接口
- virtual_router_id 51 //同一实例下virtual_router_id必须相同
- priority 100 //定义优先级,数字越大,优先级越高
- advert_int 5 //MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒
- authentication { //验证类型和密码
- auth_type PASS
- auth_pass 1111
- }
- virtual_ipaddress { //虚拟IP
- 192.168.1.8
- # 192.168.1.9 //如果有多个,往下加就行了
- # 192.168.1.7
- }
- }
- virtual_server 192.168.1.8 80 { //定义虚拟服务器
- delay_loop 6 //健康检查时间,单位是秒
- lb_algo rr //负载调度算法,这里设置为rr,即轮询算法
- lb_kind DR //LVS实现负载均衡的机制,可以有NAT、TUN和DR三个模式可选
- persistence_timeout 50 //会话保持时间,单位是秒
- protocol TCP //转发协议类型,有tcp和udp两种
- sorry_server 127.0.0.1 80 //web服务器全部失败,vip指向本机80端口
- real_server 192.168.1.16 80 { //定义WEB服务器
- weight 1 //权重
- TCP_CHECK { //通过tcpcheck判断RealServer的健康状态
- connect_timeout 5 //连接超时时间
- nb_get_retry 3 //重连次数
- delay_before_retry 3 //重连间隔时间
- connect_port 80 //检测端口
- }
- }
- real_server 192.168.1.17 80 {
- weight 1
- TCP_CHECK {
- connect_timeout 5
- nb_get_retry 3
- delay_before_retry 3
- connect_port 80
- }
- }
- }
从服务器只要改二个地方就行了,priority的权重调小一点,state改成BACKUP
3,WEB服务器配置脚本
- vim /etc/init.d/lvs //新增文件lvs
- #!/bin/bash
- VIP=192.168.1.8
- /etc/rc.d/init.d/functions
- case "$1" in
- start)
- ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP
- /sbin/route add -host $VIP dev lo:0
- 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
- sysctl -p >/dev/null 2>&1
- echo "RealServer Start OK"
- ;;
- stop)
- ifconfig lo:0 down
- route del $VIP >/dev/null 2>&1
- 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
- echo "RealServer Stoped"
- ;;
- *)
- echo "Usage: $0 {start|stop}"
- exit 1
- esac
- exit 0
添加可执行权限,
chmod +x /etc/init.d/lvs
chmod +x /etc/rc.d/init.d/functions
四,启动并查看
- /etc/init.d/keepalived start //LVS服务器
- /etc/init.d/lvs start //WEB服务器
- [root@localhost kernels]# watch ipvsadm
- Every 2.0s: ipvsadm Wed Jun 20 22:21:21 2012
- IP Virtual Server version 1.2.1 (size=4096)
- Prot LocalAddress:Port Scheduler Flags
- -> RemoteAddress:Port Forward Weight ActiveConn InActConn
- TCP 192.168.1.8:80 rr persistent 50
- -> 192.168.1.16:80 Route 1 0 0
- -> 192.168.1.17:80 Route 1 0 0
到这儿就安装配置好了。
lvs keepalived 安装配置详解的更多相关文章
- lvs keepalived 安装配置详解【转】
lvs keepalived 安装配置详解 张映 发表于 2012-06-20 分类目录: 服务器相关 前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较 ...
- (转)使用LVS实现负载均衡原理及安装配置详解
使用LVS实现负载均衡原理及安装配置详解 原文:https://www.cnblogs.com/liwei0526vip/p/6370103.html
- keepalived的配置详解(非常详细)
keepalived的配置详解(非常详细) 2017-01-22 15:24 2997人阅读 评论(0) 收藏 举报 分类: 运维学习(25) 转载自:http://blog.csdn.net ...
- Eclipse IDE for C/C++ Developers安装配置详解
Eclipse IDE for C/C++ Developers安装配置详解(转) 转自:http://hi.baidu.com/ltb6w/item/986532efd712460f570f1ddc ...
- Cloudera CDH 、Impala本地通过Parcel安装配置详解及什么是Parcel
本文引用自:Cloudera CDH .Impala本地通过Parcel安装配置详解及什么是Parcelhttp://www.aboutyun.com/forum.php?mod=viewthread ...
- ubuntu14.04 server ftp 服务安装配置详解
ubuntu14.04 server ftp 服务安装配置详解 cheungmine 2016-01-27 http://wiki.ubuntu.com.cn/Vsftpd 0 安装好vsftpd服务 ...
- JDK10安装配置详解
JDK10安装配置详解 1. 下载jdk10 1.1 官网下载jdk7的软件包: 地址:http://www.oracle.com/technetwork/java/javase/dow ...
- (转)python中调用R语言通过rpy2 进行交互安装配置详解
python中调用R语言通过rpy2 进行交互安装配置详解(R_USER.R_HOME配置) 2018年11月08日 10:00:11 luqin_ 阅读数:753 python中调用R语言通过r ...
- redis cluster 集群 安装 配置 详解
redis cluster 集群 安装 配置 详解 张映 发表于 2015-05-01 分类目录: nosql 标签:cluster, redis, 安装, 配置, 集群 Redis 集群是一个提供在 ...
随机推荐
- [Nginx 1] Nginx简介
导读:现在项目中用到这个Nginx了,本来是想着把代码调通了就得了.想想还是花点时间总结总结,就利用门卫思维吧.今天主要是一个整体的介绍,然后在学习的过程中,接着总结Nginx的其他使用事宜. 一.什 ...
- 【HTML/XML 12】URI、URN、URL的联系和区别
导读:在学习XML的时候,书中有很多个地方都提到URL等几个概念,再之前做项目的时候,重定向或是转发时,也用到了这个URL,在学习Ajax时,ajax破坏了统一资源定位(URN)都或多或少的接触到了这 ...
- 【HTML/XML 7】CSS层叠样式表
导读:上篇博客说到用XSL去实现XML文档的表现形式的美化,那么另外一种方式就是CSS的使用.本篇博客系统的介绍CSS,下篇博客,将系统的介绍XSL. 一.CSS的发展历史 1996年,层叠样式表(C ...
- web关键词搜索高亮代码
<script type="text/javascript"> /* * 参数说明: * obj: 对象, 要进行高亮显示的html标签节点. * hlWords: 字 ...
- 在PHP5.3以上版本运行ecshop和ecmall出现的问题及解决方案
ecshop 问题一:商城首页报错 Strict Standards: Only variables should be passed by reference in D:\wamp\ecshop\i ...
- IE6-IE9兼容性问题列表及解决办法总结
IE6-IE9兼容性问题列表及解决办法总结 概述 第一章:HTML. 3 第一节:IE7-IE8更新... 31.如果缺少结束标记的 P 元素后跟 TABLE.FORM.NOFRAMES 或 NOSC ...
- libpcap报文解析: ipv4、ipv6 @ 2014.7.2
#include <string.h> #include <stdlib.h> #include <pcap.h> #include <stdio.h> ...
- HTTP长连接200万尝试及调优
对于一个server,我们一般考虑他所能支撑的qps,但有那么一种应用, 我们需要关注的是它能支撑的连接数个数,而并非qps,当然qps也是我们需要考虑的性能点之一.这种应用常见于消息推送系统,也称为 ...
- 十、Struts2结果集
十.Struts2结果集 1.Struts.xml配置文件 result元素:指定动作类的动作方法执行完后的结果视图. 属性: name:字符串,与 ...
- 使用BootStrap制作用户登录UI
先看看劳动成果 布局 左右各一半(col-md-6) 左侧登录框占左侧一半的10/12 右侧是登录系统的注意事项 使用到的BootStrap元素 well 输入框组(input-group) 按钮(b ...