共计 832 个字符,预计需要花费 3 分钟才能阅读完成。
介绍
DPVS 是基于 DPDK 的高性能第 4 层负载均衡器。基于阿里巴巴 / LVS 修改而来,出于蓝而胜于蓝。
为了达到高性能,使用了多种不同技术
- 内核旁路(用户空间实现)
- 无 CPU,无密钥数据(无锁)
- RX 转向和 CPU 绑定(避免上下文切换)
- 批处理 TX / RX
- Zero 复制(避免数据包复制和系统调用)。
- 轮询替换中断。
- 高性能 ICP 的无锁信息。
- 其他技术由 DPDK 加强
DPVS 的主要特点包括:
L4 负载均衡器,包括 FNAT,DR 模式等
不同的调度算法,如 RR、WLC、WRR 等
用户空间 Lite IP 堆栈(IPv4,路由,ARP,ICMP …)。
SNAT 模式,用于从内部网络访问 Internet。
支持 KNI,VLAN,不同 IDC 环境的绑定。
安全方面,支持 TCP syn-proxy,Conn-Limit,黑名单。
QoS:流量控制(持续)
DPVS 功能模块如下图所示:
快速开始
测试环境
可以快速启动用下面的环境进行测试。
Linux 发行版:CentOS 7.2
内核:3.10.0-327.el7.x86_64
CPU:Intel(R)Xeon(R)CPU E5-2650 v3 @ 2.30GHz
NIC:Intel X540
内存:64G 和 NUMA 系统。
GCC:gcc 版本 4.8.5 20150623(红帽 4.8.5-4)
如果 DPDK 可以正常工作,其他环境也可以,请查看 dpdk.org 了解更多信息。
安装过程略,可以到官网查看详情。
测试 Full-NAT 负载均衡
测试拓扑图如下所示:
在 DPVS 上设置 VIP 和本地 IP(完全 NAT 模式所需的 LIP)。我们把命令放到 setup.sh 中。你可以通过./ipvsadm -ln,./dpip addr show 来检查一下。
从客户端访问 VIP,看起来正常!
性能测试
正文完
星哥玩云-微信公众号