LVS负载均衡简单配置
一、简单介绍
LVS是 Linux Virtual Server 的简称,也就是Linux虚拟服务器。这是一个由章文嵩博士发起的一个开源项目,它的官方网站是 http://www.linuxvirtualserver.org 现在 LVS 已经是 Linux 内核标准的一部分。使用 LVS 可以达到的技术目标是:通过 LVS 达到的负载均衡技术和 Linux 操作系统实现一个高性能高可用的 Linux 服务器集群,它具有良好的可靠性、可扩展性和可操作性。从而以低廉的成本实现最优的性能。LVS 是一个实现负载均衡集群的开源软件项目,LVS架构从逻辑上可分为调度层、Server集群层和共享存储。
二、配置实操
LVS VIP
--虚拟服务器配置子网卡,设置子网掩码为255.255.255.0
--删除一个子网卡 ifconfig eth0:8 down
ifconfig eth0:8 192.168.3.200/24
--0 表示禁止IP转发
--1 表示开启转发功能
-- 修改只能以重定向方式,不能vi/vim
-- 永久生效方式需要修改配置文件/etc/sysctl.conf中net.ipv4.ip_forward = 1
-- sysctl -p /etc/sysctl.conf
echo 1 > /proc/sys/net/ipv4/ip_forward
--安装ipvsadm(LVS只是一个技术名称,linux将此技术放到内核并成为ipvsadm功能模块)
yum install ipvsadm -y
--add-service -A add virtual service with option 在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器
--edit-service -E edit virtual service with options 编辑内核虚拟服务器表中的一条虚拟服务器记录
--delete-service -D delete virtual service 删除内核虚拟服务器表中的一条虚拟服务器记录
--clear -C clear the whole table 清除内核虚拟服务器表中的所有记录
--restore -R restore rules from stdin 恢复虚拟服务器规则
--save -S save rules to stdout 保存虚拟服务器规则,输出为-R 选项可读的格式
--add-server -a add real server with options 在内核虚拟服务器表的一条记录里添加一条新的真实服务器
--edit-server -e edit real server with options 编辑一条虚拟服务器记录中的某条真实服务器记录
--delete-server -d delete real server 删除一条虚拟服务器记录中的某条真实服务器记录
--list -L|-l list the table 显示内核虚拟服务器表
--zero -Z zero counters in a service or all services 虚拟服务表计数器清零
--set tcp tcpfin udp set connection timeout values 设置连接超时值
--start-daemon start connection sync daemon 启动同步守护进程。他后面可以是master 或backup,用来说明LVS Router 是master 或是backup。在这个功能上也可以采keepalived 的VRRP 功能。
--stop-daemon stop connection sync daemon 停止同步守护进程
--help -h display this help message 显示帮助信息
--tcp-service -t service-address service-address is host[:port] 说明虚拟服务器提供的是tcp 的服务[vip:port] or [real-server-ip:port]
--udp-service -u service-address service-address is host[:port] 说明虚拟服务器提供的是udp 的服务[vip:port] or [real-server-ip:port]
--fwmark-service -f fwmark fwmark is an integer greater than zero 说明是经过iptables 标记过的服务类型。
--scheduler -s scheduler one of rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,the default scheduler is wlc. 使用的调度算法,有这样几个选项,默认的调度算法是: wlc.
--persistent -p [timeout] persistent service 持久稳固的服务。这个选项的意思是来自同一个客户的多次请求,将被同一台真实的服务器处理。timeout 的默认值为300 秒
--netmask -M netmask persistent granularity mask
--real-server -r server-address server-address is host (and port) 真实的服务器[Real-Server:port]
--gatewaying -g gatewaying (direct routing) (default) 指定LVS 的工作模式为直接路由模式(也是LVS 默认的模式
--ipip -i ipip encapsulation (tunneling) 指定LVS 的工作模式为隧道模式
--masquerading -m masquerading (NAT) 指定LVS 的工作模式为NAT 模式
--weight -w weight capacity of real server 真实服务器的权值
--u-threshold -x uthreshold upper threshold of connections
--l-threshold -y lthreshold lower threshold of connections
--mcast-interface interface multicast interface for connection sync 指定组播的同步接口
--syncid sid syncid for connection sync (default=255)
--connection -c output of current IPVS connections 显示LVS 目前的连接 如:ipvsadm -L -c
--timeout output of timeout (tcp tcpfin udp) 显示tcp tcpfin udp 的timeout 值 如:ipvsadm -L
--timeout --daemon output of daemon information 显示同步守护进程状态
--stats output of statistics information 显示统计信息 --rate output of rate information 显示速率信息
--thresholds output of thresholds information --persistent-conn output of persistent connection info
--sort sorting output of service/server entries 对虚拟服务器和真实服务器排序输出
--ops -O one-packet scheduling --numeric -n numeric output of addresses and ports 输出IP 地址和端口的数字形式
--在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器
--rr 轮询算法
--wrr 加权轮训调度
--dh 目的地址哈希调度
--sh 源地址哈希调度
ipvsadm -A -t 192.168.3.200:80 -s rr
--在内核虚拟服务器表的一条记录里添加一条新的真实服务器
--[-g|i|m]: LVS类型
-- -g: DR
-- -i: TUN
-- -m: NAT
-- [-w weight]: 定义服务器权重
ipvsadm -a -t 192.168.3.200:80 -r 192.168.3.214 -g
ipvsadm -a -t 192.168.3.200:80 -r 192.168.3.215 -g
ipvsadm -lnc
-- 真实服务器配置
S-R1
--设置lo子网卡,掩码设置4个255
ifconfig lo:8 192.168.3.200 netmask 255.255.255.255
--arp_ignore参数的作用是控制系统在收到外部的arp请求时,是否要返回arp响应。
--0:响应任意网卡上接收到的对本机IP地址的arp请求(包括环回网卡上的地址),而不管该目的IP是否在接收网卡上。
--1:只响应目的IP地址为接收网卡上的本地地址的arp请求。
--2:只响应目的IP地址为接收网卡上的本地地址的arp请求,并且arp请求的源IP必须和接收网卡同网段。
--3:如果ARP请求数据包所请求的IP地址对应的本地地址其作用域(scope)为主机(host),则不回应ARP响应数据包,如果作用域为全局(global)或链路(link),则回应ARP响应数据包。
--4~7:保留未使用
--8:不回应所有的arp请求
--sysctl.conf中包含all和eth/lo(具体网卡)的arp_ignore参数,取其中较大的值生效。
echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
--arp_announce:定义将自己地址向外通告时的通告级别;
--0:允许使用任意网卡上的IP地址作为arp请求的源IP,通常就是使用数据包a的源IP。
--1:尽量避免使用不属于该发送网卡子网的本地地址作为发送arp请求的源IP地址。
--2:忽略IP数据包的源IP地址,选择该发送网卡上最合适的本地地址作为arp请求的源IP地址。
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
--安装httpd,启动服务,设置开机启动
yum install httpd -y
service httpd start
chkconfig httpd on
--添加主页
vi /var/www/html/index.html
LVS负载均衡简单配置的更多相关文章
- nginx负载均衡简单配置
nginx负载均衡简单配置准备三台虚拟机来做这个实验:192.168.232.132 web服务器192.168.232.133 web服务器192.168.232.134 ...
- nginx 负载均衡简单配置
配置要求: 三台服务器 127.0.0.1 主负载(把访问请求分给主机池) 127.0.0.2 主机2 127.0.0.3 主机3 第一步: 配置127.0.0.1 ...
- php nginx 负载均衡简单配置过程
负载均衡 负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解 ...
- Linux(CENTOS7) Nginx负载均衡简单配置
负载均衡的作用 1.转发功能 按照一定的算法[权重.轮询],将客户端请求转发到不同应用服务器上,减轻单个服务器压力,提高系统并发量. 2.故障移除 通过心跳检测的方式,判断应用服务器当前是否可以正常工 ...
- window下nginx负载均衡简单配置-----权重的实现
下面介绍一个在window下的nginx的负载均衡配置. 需要你在你的电脑上跑两个tomcat.一个8080,一个9080. 需要一个nginx服务器. 需要修改本机的host 注意:我们这里配置不会 ...
- LVS负载均衡机制之LVS-DR模式工作原理以及简单配置
本博文主要简单介绍一下LVS负载均衡集群的一个基本负载均衡机制:LVS-DR:如有汇总不当之处,请各位在评论中多多指出. LVS-DR原理: LVS的英文全称是Linux Virtual Server ...
- LVS负载均衡中arp_ignore和arp_annonuce参数配置的含义
先简单的介绍下关于LVS负载均衡 LVS(Linux Virtual Server)Linux服务器集群系统 针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Li ...
- LVS负载均衡中arp_ignore和arp_annonuce参数配置
先简单的介绍下关于LVS负载均衡 LVS(Linux Virtual Server)Linux服务器集群系统 针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Li ...
- LVS负载均衡IP隧道模式原理介绍以及配置实战
LVS 基本工作原理 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间 PREROUTING 链首先会接收到用户请求,判断目标 IP 确定是本机 IP,将数 ...
随机推荐
- Ubuntu 批量添加用户
#!/bin/bash cat user.txt | while read linedo user=$(echo $line | cut -d ' ' -f1) passwd=$(echo ...
- 统一集中管理系统cronsun简介,替代crontab
一.背景 crontab 是 Linux 系统里面最简单易用的定时任务管理工具,相信绝大多数开发和运维都用到过.在咱们公司,很多业务系统的定时任务都是通过 crontab 来定义的,时间长了后会发现存 ...
- 大数据学习笔记5 - Spark
Spark是一个基于内存计算的大数据并行计算框架.所以,Spark并不能完全替代Hadoop,主要用于替代Hadoop中的MapReduce计算模型. 在实际应用中,大数据处理无非是以下几个类型: 复 ...
- linux下查看动态链接库so文件的依赖的相关组建
我们很多c程序在windows下是以dll形式展现的,在linux则是以so 形式展现的. windows一般不会因为编译dll文件的编译器版本不同而出先dll文件不能执行. 但是linux下,不同版 ...
- gridview 选中某行后 某行的按钮显示,无选中则隐藏
如后面的加号,选中行时出现,未被选中的隐藏 解决: 在按钮中的visibility属性中绑定该item是否选中,再用转换器转换 <Button Name="btnA" Cli ...
- java8--List转为Map、分组、过滤、求和等操作----代码示例
Java 8 函数式编程风格 Java 迄今为止最令人激动的特征.这些新的语言特征允许采用函数式风格来进行编码,我们可以用这些特性完成许多有趣的功能.这些特性如此有趣以至于被认为是不合理的.他们说会影 ...
- day04-Servlet介绍(1)
1.servlet的概述 a.什么是servlet --servlet是javaWeb的三大组件(Listener,Filter)之一,他属于动态资源 --servlet的作用是(10086): 服务 ...
- Ax用Excel导出表的字段属性信息
static void CKT_ExportTableColnum(Args _args){ LJD_QaHalf_Figure _LJD_QaHalf_Figure; SysDictTable sd ...
- Python之路(第三十四篇) 网络编程:验证客户端合法性
一.验证客户端合法性 如果你想在分布式系统中实现一个简单的客户端链接认证功能,又不像SSL那么复杂,那么利用hmac+加盐的方式来实现. 客户端验证的总的思路是将服务端随机产生的指定位数的字节发送到客 ...
- 基于TeamCity的asp.net mvc/core,Vue 持续集成与自动部署
一 Web Server(Windows)端的配置 1.配置IIS,重要的是管理服务 1.1 配置FTP(前端NPM项目需要) 该步骤略,如果是在阿里云ESC上,需要开启端口21(用来FTP认证握手) ...