lvs1
来源:互联网 发布:网络制作软件扑克 编辑:程序博客网 时间:2024/05/29 18:13
lvs配置
—-lvs虚拟服务器是一个高度可扩展性和高可用性的服务器,建立在一个集群的服务器中
4层Load Balance(负载均衡)
– 基于传输层信息进行 调度
– 调度算法:WRR/WLC 等
– 工作模式:NAT/DR/TUNNEL
– 传输协议:TCP/UDP
nginx–>七层
DR模式的工作原理:
client –> vs –> rs(也有vip,需要nonArp,不接受直接访问vip) –> client
1.vs的数据包中包含cip和vip
2.vs和rs在同一个vlan中
3.在vs中做了二层链路的mac地址的转化
4.rs中mac向上解析得到vip和cip
ipvs(内核层面)ipvsadm(用户管理层面)
netfilter+ipvs (怎么区别fileter表到ipvs还是防火墙)
ipvs
—–LVS的IP负载平衡技术就是通过IPVS模块来实现的,IPVS是LVS集群系统的核心软件,它的主要作用是:安装在Director Server上,同时>在Director Server上虚拟出一个IP地址,用户必须通过这个虚拟的IP地址访问服务。这个虚拟IP一般称为LVS的VIP,即Virtual IP。访问的请求首先经过VIP到达负载调度器,然>后由负载调度器从Real Server列表中选取一个服务节点响应用户的请求。
server1(调度器):
/etc/init.d/heartbeat stop 将hearbeat停止(手动去实现调度)
yum install -y ldirectord-3.9.5-3.1.x86_64.rpm 下载使用ld进行可以对rs进行健康检查
yum install -y ipvsadm 下载lvs管理命令
ipvsadm -A -t 172.25.31.100:80 -s rr -A 追加策略,-t tcp服务,-s 算法,rr 轮询
ip addr add 172.25.31.100/24 dev eth0 添加虚拟主机ip
ipvsadm -a -t 172.25.31.100:80 -r 172.25.31.2:80 -g 添加rs的ip地址,保证端口一致为80
ipvsadm -a -t 172.25.31.100:80 -r 172.25.31.3:80 -g
ipvsadm -l 查看当前主机的调度策略
/etc/init.d/ipvsadm save 保存策略
server4:
/etc/init.d/heartbeat stop 将heartbeat停止
server2:(real server)
/etc/init.d/httpd start 开启httpd服务
ip addr add 172.25.31.100/32 dev eth0 添加vip
yum install -y arptables_jf 下载arp包
arptables -A IN -d 172.25.31.100 -j DROP 追加策略,丢弃100的包,不允许直接在rs上访问到vip
arptables -A OUT -s 172.25.31.100 -j mangle –mangle-ip-s 172.25.31.2 arp协议将vs的mac转换为rs的mac
/etc/init.d/arptables_jf save 保存策略
arptables -nL 查看arptables规则
server3:(real server)
/etc/init.d/httpd restart 开启httpd服务
ip addr add 172.25.31.100/32 dev eth0 添加vip
vim /etc/httpd/conf/httpd.conf 查看是否监听80端口
yum install -y arptables_jf 下载arp包
arptables -A IN -d 172.25.31.100 -j DROP 追加策略,丢弃100的包,不允许直接在rs上访问到vip
arptables -A OUT -s 172.25.31.100 -j mangle –mangle-ip-s 172.25.31.3 arp协议将vs的mac转换为rs的mac
/etc/init.d/arptables_jf save
vim /etc/sysconfig/arptables 查看写入的策略
测试:
物理机: curl 172.25.31.100 轮询实现负载均衡
[kiosk@foundation31 Desktop]$ curl 172.25.31.100
<h1> server3-www.westos.org </h1>
[kiosk@foundation31 Desktop]$ curl 172.25.31.100
<h1> server2-www.westos.org </h1>
[kiosk@foundation31 Desktop]$ curl 172.25.31.100
<h1> server3-www.westos.org </h1>
[kiosk@foundation31 Desktop]$ curl 172.25.31.100
<h1> server2-www.westos.org</h1>
[kiosk@foundation31 Desktop]$ curl 172.25.31.100
<h1> server3-www.westos.org</h1>
- lvs1
- 没有id没有name iframe中获取iframe本身dom元素
- Ubuntu下 嵌入式Qt开发环境的搭建
- 二进制中1的个数及其拓展
- StudyAI上MatConvNet框架课程学习笔记1:CPU编译入门
- C# GMT格式的字符串转时间
- lvs1
- 操作Access
- js类中的公有变量和私有变量
- 平衡二叉树
- MYSQL com.mysql.jdbc.PacketTooBigException错误
- 关于SQLServer建表过程中所报的类似"xx 附近有语法错误"
- ESP8266作为Client方法收发的问题(ERROR CLOSED或ERROR 0,CLOSED)
- iOS 快速只获取Http响应头
- Angular2上应用基于jQuery的Bootstrap 3