| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> lvs负载均衡 -> 正文阅读 |
|
[系统运维]lvs负载均衡 |
1、LVS简介 ? ? ?LVS(Linux Virtual Server) 即Linux虚拟服务器,由章文嵩主导开源负载均衡项目,目前LVS已经被集成到Linux内核模块中。他是一个虚拟的四层交换器集群系统,根据目标地址和目标端口实现用户请求转发,目前是负载均衡性能最好的集群系统。 ? ? ?LVS是四层(传输层tcp/vdp),七层(应用层)的负载均衡工具,用的最多的是就是四层负载均衡功能的ipvs,七层的内容分发负载ktcpvs(kenrnel tcp virtual server),基于内容的调度,因为应用层交换处理复杂,但伸缩性有限,目前还不成熟 2、三种工作模式的解析 ? ?1、基于NAT的LVS模式负载均衡 ? ? ? ?类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式 ? ?2、TUN模式(IP隧道模式) ? ? ? ?IP Tunnel,简称TUN模式? 采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器 服务器节点分散在互联网中的不同位置,具有独立的公网IP地址,通过专用IP隧道与负载调度器相互通信 ? 3、DR模式(直接路由) ? ? ? ??Direct Routing,简称DR模式 采用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络 负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道 3、LVS的作用 1 主要用于多服务器的负载均衡。 2? 工作在网络层,可实现高性能,高可用的服务器集群技术廉价,可把许多低性能的服务器组合在一起形成一个超级服务器。 3 易用,配置简单,有多种负载均衡的方法。 4 稳定可靠,即使在集群的服务器中某台服务器无法正常工作,也不影响整体效果 5 可扩展性好 4、LVS的基础配置 首先在适配器上安装 ipvsadm 管理工具 ?添加vip: ?添加虚拟服务以及将其关联到真实服务器上 用 ipvsadm -ln 查看一下是否有实验结果? ?网络服务器配置 首先需要两台主机? ?server2? server3 并且接下来的实现两台主机的操作一模一样 先进行httpd的安装和启用 ?添加vip ? 这个时候我们在测试机 curl 5.0.0.125 会发现只有server2 或者server3 一种结果? 这是为什么呢? 因为我们在访问的时候绕过了server1的管理,直接访问了server2 或者server3 因此我们需要在server2和server3上进行优化 5、负载均衡的优化 安装arptables 管理工具 arptables作用 arp广播屏蔽的功能 设定IP进出时的功能 ?设置好后? 需要保存策略 ?测试 4、Keepalived - LVS管理软件 ? ? ?结合上面的内容? 我们可以思考 ? ? ? 当你的调度器 down了我们应该怎么办 ? ? ? LVS本身down了应该怎么办 这便需要 Keepalived - LVS来进行管理 KeepAlived,用于监控检查兼容性非常好,如果RS一个节点挂掉,keepalived会将此节点从管理列表中剔出,当节点恢复再拉回管理列表,但是此时的调度器存在单点故障的可能性,所以还必须使用其他软件来实现调度器的高可用,比如hearbeat。最好的方法是软硬件相结合,用router调用lvs,这样既能节省资源又能避免节点故障 在最开始的server1上 ? 使用 ipvsadm -C 清除记录 ? 下载安装httpd? ? 下载安装Keepalived服务 ?? ?在 vim /etc/keepalived/keepalived.conf 修改配置文件 ?使用 ipvsadm -ln 查看 再申请一个server5? 用来当作备用机 ? ? 注意? server5和server1的所有操作一样? 只有在? vim /etc/keepalived/keepalived.conf配置文件不同
? ? 实验成功!!!!!!!!
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 9:49:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |