Centos 6.8 配置Lvs
LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。
宗旨:
使用集群技术和Linux操作系统实现一个高性能、高可用的服务器.
很好的可伸缩性(Scalability)
很好的可靠性(Reliability)
很好的可管理性(Manageability)。
特点:
可伸缩网络服务的几种结构,它们都需要一个前端的负载调度器(或者多个进行主从备份)。我们先分析实现虚拟网络服务的主要技术,指出IP负载均衡技术是在负载调度器的实现技术中效率最高的。在已有的IP负载均衡技术中,主要有通过网络地址转换(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器,我们称之为VS/NAT技术(Virtual Server via Network Address Translation)。在分析VS/NAT的缺点和网络服务的非对称性的基础上,我们提出了通过IP隧道实现虚拟服务器的方法VS/TUN (Virtual Server via IP Tunneling),和通过直接路由实现虚拟服务器的方法VS/DR(Virtual Server via Direct Routing),它们可以极大地提高系统的伸缩性。VS/NAT、VS/TUN和VS/DR技术是LVS集群中实现的三种IP负载均衡技术。
优点:
1、开源,免费
2、在网上能找到一些相关技术资源
3、具有软件负载均衡的一些优点
缺点:
1、最核心的就是没有可靠的支持服务,没有人对其结果负责;
2、功能比较简单,支持复杂应用的负载均衡能力较差,如算法较少等;
3、开启隧道方式需重编译内核;
4、配置复杂;
5、主要应用于LINUX,目前没有专门用于WINDOWS的版本,不过可以通过配置,使windows成为LVS集群中的real server(win2003、win2008中)。
环境:
Web-Server:Centos6.8 192.168.126.135
Web-Server:Centos6.8 192.168.126.134
在Web服务器上搭建web:
web1:
1、安装web系统
在centOS上可以使用命令yum install进行安装,-y 表示安装过程中全部选择yes,我这里做测试环境,所以简单安装
yum -y install httpd
2、设置httpd、mysqld为开机启动服务
chkconfig httpd on
3、启动服务、关闭防火墙
service httpd start
service iptables stop #为了测试方便,直接关闭防火墙
4、安装虚拟IP管理工具:ipvsadm
yum -y install ipvsadm
5、新建脚本:
#!/bin/bash VIP=192.168.126.100 #假设126.100是VIP RIP1=192.168.126.135 #web-1 RIP2=192.168.126.134 #web-2 case "$1" in start) echo "开始配置LVS Director Server" ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up route add -host $VIP dev eth0:0 echo "1">/proc/sys/net/ipv4/ip_forward ipvsadm -C ipvsadm -A -t $VIP:80 -s rr ipvsadm -a -t $VIP:80 -r $RIP1:80 -g ipvsadm -a -t $VIP:80 -r $RIP2:80 -g ipvsadm echo "配置成功" ;; stop) echo "正在关闭LVS Director Server" echo "0">/proc/sys/net/ipv4/ip_forward ipvsadm -C ifconfig eth0:0 down echo "关闭成功!" ;; *) echo "用法:$0 {start|stop}" exit 1 esac
6、赋予脚本权限并运行脚本
[root@localhost /]# sh lvs.sh start 开始配置LVS Director Server IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 192.168.126.100:http rr #虚拟IP -> 192.168.126.134:http Route 1 0 0 #WEB-1 -> 192.168.126.135:http Route 1 0 0 #WEB-2 配置成功
web2:
在另一台 Web服务器上搭建web:
1、安装web系统
在centOS上可以使用命令yum install进行安装,-y 表示安装过程中全部选择yes,我这里做测试环境,所以简单安装
yum -y install httpd
2、设置httpd、mysqld为开机启动服务
chkconfig httpd on
3、启动服务、关闭防火墙
service httpd start
service iptables stop #为了测试方便,直接关闭防火墙
4、安装虚拟IP管理工具:ipvsadm
yum -y install ipvsadm
5、新建脚本:
[root@localhost /]# vim lvs.sh #!/bin/bash VIP=192.168.126.100 #VIP case "$1" in start) echo "配置lvs Real Server开始..." ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up route add -host $VIP dev lo:0 echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce ;; stop) echo "正在关闭lvs Real server" ifconfig lo:0 down echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce ;; *) echo "用法:$0 {start|stop}" exit 1 esac [root@localhost /]# sh lvs.sh start 配置lvs Real Server开始...
配置完成!
打开浏览器访问VIP地址:http://192.168.126.100 持续刷新网页看会不会出现访问到两个web服务器地址的页面
如果你需要进一步配置LVS+Keepalived,可以参考:LVS+keepalived配置
分类:
Linux
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构