LVS三种模式搭建步骤,参考待操作。
http://my.oschina.net/jianbo/blog/192582#OSC_h2_3文章地址[*]
[*]
[*]
[*]
[*]
[*]
[*]
[*]
[*]
[*]
[*]首页
[*]开源项目
[*]Java 开源软件
[*]C# 开源软件
[*]PHP 开源软件
[*]C/C++ 开源软件
[*]Ruby 开源软件
[*]Python 开源软件
[*]Go开源软件
[*]JS开源软件
[*]问答
[*]技术问答 »
[*]技术分享 »
[*]IT大杂烩 »
[*]职业生涯 »
[*]站务/建议 »
[*]支付宝专区 »
[*]开源硬件专区 »
[*]代码
[*]博客
[*]翻译
[*]资讯
[*]移动开发
[*]Android开发专区
[*]iOS开发专区
[*]iOS代码库
[*]Windows Phone
[*]招聘
[*]城市圈
当前访客身份:游客 [ 登录 | 加入开源中国 ] 当前访客身份: 游客 [ 登录 | 加入开源中国 ]软件 代码 讨论区 新闻 博客 软件
[*]软件
[*]代码
[*]讨论区
[*]新闻
[*]博客
jianbo-zh关注此人关注(0)粉丝(2)积分(0) 这个人很懒,啥也没写.发送留言.请教问题博客分类
[*]工作日志(0)
[*]日常记录(1)
[*]转贴的文章(1)
阅读排行
[*]1. LVS 服务器集群三种实现模式配置
[*]2. Apache 针对 HTTP KeepAlive 功能配置
最新评论目前还没有任何评论
访客统计
[*]今日访问:0
[*]昨日访问:1
[*]本周访问:0
[*]本月访问:59
[*]所有访问:668
空间 »博客 »
[*]日常记录
[*]工作日志
[*]转贴的文章
[*]所有分类
原 LVS 服务器集群三种实现模式配置
发表于1年前(2014-01-13 15:24) 阅读(664) | 评论(0)3人收藏此文章, 我要收藏赞07.16,杭州,阿里巴巴。阿里百川无线开放大会报名开启,用技术驱动无线新商业
摘要 LVS (Linux Virtual Server) 服务器集群简单配置LVSIPVS LVS服务器集群 VS/NET模式 VS/TUN模式 VS/DR模式
目录[-]
LVS (Linux Virtual Server) Linux 服务器集群一,【VS/NET 模式】二,【VS/TUN】 IP隧道模式三,【VS/DR】直接路由模式四,三种模式优缺点五,ipvsadm管理工具使用参考LVS (Linux Virtual Server) Linux 服务器集群
LVS服务器集群中基于IP的负载均衡技术,有3种实现模式:VS/NET模式,VS/TUN模式(IP隧道模式),VS/DR模式(直接路由模式)
一,【VS/NET 模式】
1,配置Linux Director(前端负载调度器)IP,并打开IP数据包转发功能
123ifconfig eth0 192.168.1.2 broacast 192.168.1.255 netmask 255.255.255.0 upifconfig eth1 192.168.2.1 broacast 192.168.2.255 netmask 255.255.255.0 upecho 1 > /proc/sys/net/ipv4/ip_forward
2,创建并执行 ipvs.sh 脚本(该脚本需要设置为可执行)。为前端负载调度器添加虚拟服务器记录和调度算法(轮询,基于连接请求),以及为此虚拟服务器添加真实服务器记录(以net模式添加)
123456#!/bin/bash#ipvs.shipvsadm -C ipvsadm -A -t 192.168.2.1:80 -s rripvsadm -a -t 192.168.2.1:80 -r 192.168.2.2:80 -mipvsadm -a -t 192.168.2.1:80 -r 192.168.2.3:80 -m
3,配置 Real Server 真实服务器(192.168.2.2),默认网关指向负载调度器,保证数据正确返回
12ifconfig eth0 192.168.2.2 broadcast 192.168.2.255 netmask 255.255.255.0 uproute add default gw 192.168.2.1
4,配置 Real Server 真实服务器(192.168.2.3)
12ifconfig eth0 192.168.2.3 broadcast 192.168.2.255 netmask 255.255.255.0 uproute add default gw 192.168.2.1
二,【VS/TUN】 IP隧道模式
1,配置 Linux Director 负载调度器,设置 tunl0(隧道网卡)的IP为VIP,并添加到本地路由(注:VIP的子网掩码为255.255.255.255,,使该网段只有一个IP)
123ifconfig tunl0 192.168.1.3 netmask 255.255.255.255 uproute add -host 192.168.1.3 dev tunl0ifconfig eth0 192.168.1.2 broadcast 192.168.1.255 netmask 255.255.255.0 up
2,创建 ipvs.sh脚本并执行,为前端负载调度器添加虚拟服务器记录和调度算法(轮询),以及为此虚拟服务器添加真实服务器(以IP隧道模式添加)
123456#!/bin/bash#ipvs.shipvsadm -C ipvsadm -A -t 192.168.1.3:80 -s rripvsadm -a -t 192.168.1.3:80 -r 192.168.1.4:80 -iipvsadm -a -t 192.168.1.3:80 -r 192.168.1.5:80 -i
3,配置 Real Server 真实服务器(192.168.1.4),将VIP绑定到tunl0网卡上
123ifconfig tunl0 192.168.1.3 netmask 255.255.255.255 uproute add -host 192.168.1.3 dev tunl0ifconfig eth0 192.168.1.4 broadcast 192.168.1.255 netmask 255.255.255.0 up
4,创建arp.sh脚本并执行,实现当ARP询问VIP的MAC地址时,忽略应答
123456#!/bin/bash#arp.shecho 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announceecho 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announce
5,配置 Real Server 真实服务器(192.168.1.5),同样绑定VIP到tunl0网卡上
123ifconfig tunl0 192.168.1.3 netmask 255.255.255.255 uproute add -host 192.168.1.3 dev tunl0ifconfig eth0 192.168.1.5 broadcast 192.168.1.255 netmask 255.255.255.0 up
6,创建arp.sh脚本并执行
123456#!/bin/bash#arp.shecho 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announceecho 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announce
三,【VS/DR】直接路由模式
1,Linux Director 负载调度器
123ifconfig eth0 192.168.1.2 broadcast 192.168.1.255 netmask 255.255.255.0 upifconfig eth0:0 192.168.1.3 netmask 255.255.255.255 uproute add -host 192.168.1.3 dev eth0:0
2,创建 ipvs.sh 脚本,并执行
123456#!/bin/bash#ipvs.shipvsadm -C ipvsadm -A -t 192.168.1.3:80 -s rripvsadm -a -t 192.168.1.3:80 -r 192.168.1.4:80 -gipvsadm -a -t 192.168.1.3:80 -r 192.168.1.5:80 -g
3,配置 Real Server 真实服务器(192.168.1.4)
123ifconfig eth0 192.168.1.4 broadcast 192.168.1.255 netmask 255.255.255.0 upifconfig lo:0 192.168.1.3 netmask 255.255.255.255 uproute add -host 192.168.1.3 dev lo:0
4,创建 arp.sh脚本,并执行
123456#!/bin/bash#arp.shecho 1 > /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/lo/arp_announceecho 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announce
5,配置 Real Server 真实服务器(192.168.1.5)
123ifconfig eth0 192.168.1.5 broadcast 192.168.1.255 netmask 255.255.255.0 upifconfig lo:0 192.168.1.3 netmask 255.255.255.255 uproute add -host 192.168.1.3 dev lo:0
6,创建 arp.sh 脚本,并执行
123456#!/bin/bash#arp.shecho 1 > /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/lo/arp_announceecho 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announce
四,三种模式优缺点
【 NET模式 】
优点:只需要一个公网IP
缺点:请求和响应都需要经过负载调度器,访问量达到一定量后负载调度器可能成为瓶颈。(原因:请求/响应报文会被修改,请求的目标IP/Mac,响应的源IP/Mac)
【 TUN模式 】
优点:
1,可以设置跨域的真实服务器
2,响应报文直接从后端服务器返回给客户,较NET模式有更高的吞吐量
缺点:
1,需要IP隧道。负载调度器、真实服务器必须支持隧道协议的网卡
2,需要多个公网IP
3,建立IP隧道需要额外开销
【 DR直接路由模式 】
优点: 响应报文直接从后端服务器返回给客户,吞吐量同TUN模式差不多,或更高
缺点: 真实服务器需要同负载调度器在同一个网段
五,ipvsadm管理工具使用参考
ipvsadm 的用法和格式如下:
ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheduler] [-p
] [-M netmask]
ipvsadm -D -t|u|f virtual-service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port
[-g|i|m] [-w weight]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface]
ipvsadm --stop-daemon
ipvsadm -h
命令选项解释:
有两种命令选项格式,长的和短的,具有相同的意思。在实际使用时,两种都可
以。
-A --add-service 在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也
就是增加一台新的虚拟服务器。
-E --edit-service 编辑内核虚拟服务器表中的一条虚拟服务器记录。
-D --delete-service 删除内核虚拟服务器表中的一条虚拟服务器记录。
-C --clear 清除内核虚拟服务器表中的所有记录。
-R --restore 恢复虚拟服务器规则
-S --save 保存虚拟服务器规则,输出为-R 选项可读的格式
-a --add-server 在内核虚拟服务器表的一条记录里添加一条新的真实服务器
记录。也就是在一个虚拟服务器中增加一台新的真实服务器
-e --edit-server 编辑一条虚拟服务器记录中的某条真实服务器记录
-d --delete-server 删除一条虚拟服务器记录中的某条真实服务器记录
-L|-l --list 显示内核虚拟服务器表
-Z --zero 虚拟服务表计数器清零(清空当前的连接数量等)
--set tcp tcpfin udp 设置连接超时值
--start-daemon 启动同步守护进程。他后面可以是master 或backup,用来说
明LVS Router 是master 或是backup。在这个功能上也可以采用keepalived 的
VRRP 功能。
--stop-daemon 停止同步守护进程
-h --help 显示帮助信息
其他的选项:
-t --tcp-service service-address 说明虚拟服务器提供的是tcp 的服务
or
-u --udp-service service-address 说明虚拟服务器提供的是udp 的服务
or
-f --fwmark-service fwmark 说明是经过iptables 标记过的服务类型。
-s --scheduler scheduler 使用的调度算法,有这样几个选项
rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,
默认的调度算法是: wlc.
-p --persistent 持久稳固的服务。这个选项的意思是来自同一个客
户的多次请求,将被同一台真实的服务器处理。timeout 的默认值为300 秒。
-M --netmask netmask persistent granularity mask
-r --real-server server-address 真实的服务器
-g --gatewaying 指定LVS 的工作模式为直接路由模式(也是LVS 默认的模式)
-i --ipip 指定LVS 的工作模式为隧道模式
-m --masquerading 指定LVS 的工作模式为NAT 模式
-w --weight weight 真实服务器的权值
--mcast-interface interface 指定组播的同步接口
-c --connection 显示LVS 目前的连接 如:ipvsadm -L -c
--timeout 显示tcp tcpfin udp 的timeout 值 如:ipvsadm -L --timeout
--daemon 显示同步守护进程状态
--stats 显示统计信息
--rate 显示速率信息
--sort 对虚拟服务器和真实服务器排序输出
--numeric -n 输出IP 地址和端口的数字形式
分享到: 0赞声明:OSCHINA 博客文章版权属于作者,受法律保护。未经作者同意不得转载。
[*]下一篇 »
评论0
插入: 表情 开源软件
发表评论 插入:表情开源软件
关闭插入表情关闭相关文章阅读
[*]2012/07/16 lvs 集群配置
[*]2014/09/24 Linux负载均衡软件LVS
[*]2013/09/26 LVS-Director Server...
[*]2013/09/26 LVS-Real Server
[*]2012/09/11 CTDB与LVS搭建集群
© 开源中国(OSChina.NET) | 关于我们 | 广告联系 | @新浪微博 | 开源中国手机版 | 粤ICP备12009483号-3开源中国手机客户端: Android iPhone WP7开源中国社区(OSChina.net)是工信部 开源软件推进联盟 指定的官方社区
页:
[1]