lvs是一种负载均衡技术.注意区分负载均衡和高可用的区别.

keepalive是lvs的管理工具

ipvsadm也是lvs的管理工具

keepalive借助ipvsadm管理lvs.所以通常说lvs+keepalive

lvs支持多种负载方式.

理论及配置说明:

http://www.cnblogs.com/edisonchou/p/4281978.html

lvs:DR模式wrr负载:

拓扑

    KA1    LAMP-1

pc------|

    KA2  LAMP-2

VIP:192.168.14.100

KA1:192.168.14.134

KA1:192.168.14.135

LAMP-1:192.168.141

LAMP-2:192.168.142

安装软件:

lvs:

yum install ipvsadm -y
rpm -qa ipvsadm

KA:

yum install keepalived -y

lamp:配置

RS绑定VIP:
ip addr add 192.168.14.100/ dev lo label lo:
route add -host 192.168.14.100 dev lo
抑制ARP:
echo "" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/all/arp_announce

前期准备:

KA的配置文件:主KA

/etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {
router_id LVS_19
vrrp_mcast_group4 224.0.1.18
} vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.14.100/ dev eth0 label eth0:
}
} #ipvsadm -A -t 192.168.14.100: -s rr -p
virtual_server 192.168.14.100 {
delay_loop
lb_algo wrr
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout
protocol TCP #ipvsadm -a -t 192.168.14.100: -r 10.0.1.6: -g
real_server 192.168.14.141 {
weight
TCP_CHECK {
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
} real_server 192.168.14.142 {
weight
TCP_CHECK {
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
}

备:KA:

! Configuration File for keepalived

global_defs {
router_id LVS_19
vrrp_mcast_group4 224.0.1.18
} vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.14.100/ dev eth0 label eth0:
}
} #ipvsadm -A -t 192.168.14.100: -s rr -p
virtual_server 192.168.14.100 {
delay_loop
lb_algo wrr
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout
protocol TCP #ipvsadm -a -t 192.168.14.100: -r 10.0.1.6: -g
real_server 192.168.14.141 {
weight
TCP_CHECK {
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
} real_server 192.168.14.142 {
weight
TCP_CHECK {
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
}

检查:如果一台down了,另一台通过ifconfig就会出现绑定的VIP了

ip add |egrep  "134|135"

理论笔记:

集群--一组服务器
lvs harproxy nginx,keepalive heartbeat
负载均衡 高可用

负载模型:
nginx 7层负载
lvs 4层负载
lvs---nginx---webserver

负载:
1,7*24h服务
2,一台机器扛不住

lvs底层原理底层原理:
ipvs
ipvsadm自带
keepalive

名词介绍:
CIP(Client ip address)
DIP(Director IP address)
VIP(virtual ip address)
RIP(Real Server Ip address)=RS

负载的3种模式:
NAT
DR(direct route)
TUN(ip tunnel)
fullnat

DR
RIP
1,绑定VIP
2,抑制arp回应
主要:
LB通过修改目的mac,因此无法改写端口
2000W pv
请求10000一下都可以用haproxy/nginx

NAT模式:
LB要打开转发:
net.ipv4_forward=1

[svc][op]LVS+keepalived的更多相关文章

  1. 【大型网站技术实践】初级篇:借助LVS+Keepalived实现负载均衡

    一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务 ...

  2. 配置LVS + Keepalived高可用负载均衡集群之图文教程

    负载均衡系统可以选用LVS方案,而为避免Director Server单点故障引起系统崩溃,我们可以选用LVS+Keepalived组合保证高可用性.  重点:每个节点时间都同步哈! C++代码 [r ...

  3. lvs+keepalived

    一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2.6.32-279.el6.i686 LVS版本:ipvsadm-1.26 keepalive ...

  4. LVS+Keepalived搭建MyCAT高可用负载均衡集群

    LVS+Keepalived 介绍 LVS LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国 ...

  5. LVS+Keepalived+Squid+Nginx+MySQL主从高性能集群架构部署方案

    方案一,在tomcat的workers.properties里面配置相关条件 worker.tomcat.lbfactor= worker.tomcat.cachesize= worker.tomca ...

  6. lvs+keepalived+nginx实现高性能负载均衡集群

    一.为什么要使用负载均衡技术? 1.系统高可用性 2.  系统可扩展性 3.  负载均衡能力 LVS+keepalived能很好的实现以上的要求,LVS提供负载均衡,keepalived提供健康检查, ...

  7. lvs + keepalived 介绍及安装

    LVS介绍 lvs 核心ipvs      Ipvs(IP Virtual Server)是整个负载均衡的基础,如果没有这个基础,故障隔离与失败切换就毫无意义了.Ipvs 具体实现是由ipvsadm ...

  8. LVS + Keepalived + Nginx安装及配置

    1.概述 上篇文章<架构设计:负载均衡层设计方案(6)——Nginx + Keepalived构建高可用的负载层>(http://blog.csdn.net/yinwenjie/artic ...

  9. 测试LVS+Keepalived高可用负载均衡集群

    测试LVS+Keepalived高可用负载均衡集群 1. 启动LVS高可用集群服务 此时查看Keepalived服务的系统日志信息如下: [root@localhost ~]# tail -f /va ...

随机推荐

  1. 栅格计算器函数之Con

    Con函数是condition(条件)的缩写,其作用 语法是: Con(条件,条件为真执行语句,条件为假执行语句[可选]) 或Con(输入栅格,条件为真执行语句,条件为假执行语句[可选],逻辑表达式) ...

  2. android studio中使用adb wifi插件无线调试程序

    使用android studio中使用adb wifi插件无线调试程序的前提条件电脑和手机在同一个无线网 1.下载adb wifi插件 File->Settings->Plugins Br ...

  3. cybergarage-upnp

    官网: http://www.cybergarage.org/twiki/bin/view/Main/UPnPFramework Open Source Frameworks for UPnP Cyb ...

  4. PyQt5教程——组件(7)

    PyQt5中的组件(widgets) 组件(widgets)是构建一个应用的基础模块.PyQt5有广泛的各式各样的组件,包含按钮,复选按钮,滑块条,和列表框.在这个部分的教程中,我们将学习几种有用的组 ...

  5. 栈溢出笔记1.3 准备Shellcode

    经过1.1和1.2节的讲述,我们已经知道了怎样更改EIP的值. 程序运行函数之后将跳转到我们设定的位置開始运行,因此,我们须要准备一个自己的程序,接手后面的工作.这是一个什么样的程序?是一个C语言编写 ...

  6. tar 归档中找不到

    今天在解压tar.gz包时遇到的错误: 刚开始以为是路径的问题,然后感觉是tar.gz包的问题,后来查了一下才知道,记录一下: 一定要加上那个-C   参数表示更换目录的意识 -C    --dire ...

  7. 文本框只支持数字、小数点、退格符、负号、Del键

    Public Function OnlyNumberAndDot(inKeyAscii As Integer) As Integer '函数说明:文本框只支持数字.小数点.退格符.负号.Del键 '入 ...

  8. 几款Android开发人员必备小工具

    在这里我介绍一下我常常在Android Studio里面使用的小工具吧,这些工具都能够在plugin里面搜索到. (当然了哈.我也是从网上找的.用着挺方便的,在这里总结一下) Gsonformat: ...

  9. 使用Python创建MySQL数据库实现字段动态添加以及动态的插入数据

    应用场景: 我们须要设计一个数据库来保存多个文档中每一个文档的keyword. 假如我们每一个文档字符都超过了1000,取当中出现频率最大的为我们的keyword. 如果每个文档的keyword都超过 ...

  10. spring aop的两种写法aspect和advisor

    本文转自:https://www.cnblogs.com/leiOOlei/p/3709607.html 首先看个例子,如下 接口代码: package com.lei.demo.aop.schema ...