Linux搭建负载均衡集群,使用LVS的NAT模式
来源:互联网 发布:非农历史数据一览表 编辑:程序博客网 时间:2024/04/30 02:36
Linux Cluster
LB(负载均衡集群)
负载均衡集群,通常有两种实现方式,基于硬件或基于软件。
基于硬件:BIP
基于软件:
基于OSI第四层传输层:LVS(Linux Virtual Server)
基于OSI第期层传输层:nginx
1.LVS
1.1认识LVS
LVS,全称Linux Virtual Server,由国人章文嵩博士提出并实现。LVS有三种工作模式:DR直接路由模式、NAT地址转换模式、TUN隧道模式
2.基于LVS搭建 LB Linux Cluster
2.1 LVS的NAT模式实现
2.1.1 实验拓扑图
2.1.2 实验简介
Director具备两张网卡,一张连接外网,一张连接内网中的realserver。realserver单网卡配置内网IP,运行http服务,挂上简单的测试web。
2.1.3 实验准备
物理机上安装virtualbox软件上创建一台centos5.5,最小化安装即可,作为Director。桌面可装可不装,使用6.X,7.X也是可以的,这里使用centos5.5是因为my computer才8G内存virtualbox的虚拟介质管理,复制2台刚才安装好的centos5.5硬盘,明明为realserver1,realserver2新建虚拟机作为realserver时,选择存储介质选择现有的磁盘,路径指向刚才复制的centos5.5
2.1.4 实验步骤
0).ipvs在2.6.X版本后的内核中默认安装有,我们需要安装ipvsadm进行管理,**注意:ipvsadm与iptables不能同时使用,实验前需关闭iptables与selinux**关闭iptables:
setup或:service iptables stop #停止iptables服务chkconfig iptables off #iptables开机不自启
关闭selinux:
setup或:vim /etc/sysconfig/selinux #修改selinux的配置文件SELINUX=disabled #将SELINUX等号右边的值修改为disabled
1).Director设置双网卡,外网网卡选择桥接模式,内网网卡选择host-only模式2).为Director安装ipvsadm
yum -y install ipvsadm
检查是否安装成功只需输入ipvsadm,无输出则未安装有,若已安装则输出如下字样
IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn
3).配置director的IP地址,启动realserver,网卡模式选择host-only并配置IP地址,realserver网关指向director的内网IP4).配置测试网页 为每台realserver安装http,并启动httpd服务
yum install httpservice httpd startecho "this is realserver1 test web" > /var/www/html/index.htmlecho "this is realserver2 test web" > /var/www/html/index.htmlecho "this is realserver3 test web" > /var/www/html/index.html#分别创建测试页curl http://ipaddress #访问测试页
5).配置ipvsadm规则 在director上配置
ipvsadm -A -t 192.168.8.28:80 -s rr #添加集群服务 tcp服务类型 服务的ip与端口号 使用调度算法为 rripvsadm -a -t 192.168.8.28:80 -r 192.168.56.102 -m #添加服务器,工作模式为NATipvsadm -a -t 192.168.8.28:80 -r 192.168.56.103 -mipvsadm -a -t 192.168.8.28:80 -r 192.168.56.104 -m
ipvsadm -l -n #查看当前就群信息连接数等输出结果如下IP Virtual Server version 1.2.1 (size=4096)Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConnTCP 192.168.8.28:80 rr-> 192.168.56.103:80 Masq 1 0 0 -> 192.168.56.102:80 Masq 1 0 0
6).测试在director打开网卡转发
echo 1 > /proc/sys/net/ipv4/ip_forward #默认为0,不打开网卡转发
使用物理机的浏览器输入http://director的ip地址不断刷新即可看到效果
3.注意事项
在集群中服务器与director之间的时间误差不能超过一秒解决办法:办法一:运行ntp服务,与网络上的ntp服务器进行时间同步即可
service ntpd start
办法二:把director当作时间服务器使realserver与director进行时间同步
director运行service ntpd start
realserver运行ntpd directorIP,如ntpd 192.168.56.101
4.ipvsadm命令的用法
-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 显示内核虚拟服务器表 -t --tcp-service service-address 说明虚拟服务器提供的是tcp -u --udp-service service-address 说明虚拟服务器提供的是udp -s --scheduler scheduler 使用的调度算法,有这样几个选项rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,默认的调度算法是: wlc.#本节ipvsadm的用法来自http://linux.51yip.com/
5.常见的调度算法
director收到用户请求后,需要通过一定的调度算法来决定将请求分发给那台realserver处理。分为动态调度与静态调度,静态调度为 rr wrr,不考虑服务器性能与当前连接数,将请求轮流分发;动态调度为wlc|lblc|lblcr|dh|sh|sed|nq,若不指定调度算法默认为wlc,一句当前服务器的性能当前连接数与权重,进行运算,将用户请求分给相对较为空闲的realserver。
0 0
- Linux搭建负载均衡集群,使用LVS的NAT模式
- Linux搭建负载均衡集群,使用LVS的DR模式
- lvs负载均衡集群之NAT模式
- LVS负载均衡群集的搭建-(NAT模式)
- Linux-LVS负载均衡群集-NAT模式
- Linux下LVS搭建负载均衡集群
- Linux下LVS搭建负载均衡集群
- 使用LVS(Linux Virtual Server)在Linux上搭建负载均衡的集群服务
- 负载均衡集群企业级应用实战-LVS-nat模式:
- LVS负载均衡模式NAT模式实验搭建
- LVS 负载均衡集群搭建
- centos linux LVS -NAT 方式搭建负载均衡
- LINUX集群--均衡负载 LVS(二) NAT和DR的应用配置
- 使用虚拟机实现lvs nat模式负载均衡
- lvs集群nat模式搭建
- 用LVS在Linux上搭建负载均衡集群服务
- 负载均衡之LVS/NAT模式
- 负载均衡测试--LVS nat模式
- 5-18 银行业务队列简单模拟 (25分)
- JavaScript中用let语句声明作用域的用法讲解
- [vijos1456] 最小总代价
- 模板测试
- 说说那些我也不太懂的 Python 高阶函数
- Linux搭建负载均衡集群,使用LVS的NAT模式
- JDBC与JDBC-2、开发
- 函数式编程
- slf4j-api、slf4j-log4j12以及log4j之间什么关系?
- 【爬虫二】爬取豆瓣音乐榜单
- Linux内核使用位图为进程分配pid
- Oulipo POJ - 3461
- C++ 并发编程的一种思维
- (转)海外基金销售新模式 机器人投顾与人工相结合