千家信息网

LVS虚拟云服务器、负载调度算法及其它

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,下文给大家带来LVS虚拟云服务器、负载调度算法及其它,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验来做一个解答。LVS
千家信息网最后更新 2024年09月22日LVS虚拟云服务器、负载调度算法及其它

下文给大家带来LVS虚拟云服务器、负载调度算法及其它,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验做一个解答。

LVS虚拟云服务器

Linux Virtual Server(LVS)是针对 Linux内核开发的一个负载均衡项目,由我国
的章文嵩博土在1998年5月创建,官方站点位于http://www.linuxvirtualserver.org/.

LVS实际上相当于基于IP地址的虚拟化应用,为基于IP地址和内容请求分发的负载均衡提出了一种高效的解决方法。

LVS现在已成为Linux内核的一部分,默认编译为ip_vs模块,必要时能够自动调用。

LVS的负载调度算法

针对不同的网络服务和配置需要,LVS调度器提供多种不同的负载调度算法,其中最常用的四种算法包括轮询、加权轮询、最少连接和加权最少连接。

轮询( RoundRobin):将收到的访问请求按照顺序轮流分配给群集中的各节
点(真实服务器)。

加权轮询( WeightedRoundRobin):根据真实服务器的处理能力轮流分配收到的访问请求,调度器可以自动查询各节点的负载情况,并动态调整其权重。这样可以保证处理能力强的服务器承担更多的访问流量。

最少连接( LeastConnections):根据真实服务器已建立的连接数进行分配,将收到的访问请求优先分配给连接数最少的节点。

加权最少连接(WeightedLeastConnections):在服务器节点的性能差异较大的情况下,可以为真实服务器自动调整权重,权重较高的节点将承担更大比例的活动连接负载。

使用ipvsadm管理工具

ipvsadm是在负载调度器上使用的LVS群集管理工具,通过调用ip_vs模块添加、删除服务器节点,以及查看群集的运行状态。在Centos6系统中,需要手动安装ipvsadm软件包。在centos7中直接安装就可以。

地址转换模式

地址转换( NetworkAddressTranslation)简称NAT模式,类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口。服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式。

图解


说明:节点服务器作用在私网,而客户端作用在公网,此时LVS就作为网关,节点服务器反馈信息给客户端时,会经过LVS。

实验环境
角色IP
LVS192.168.100.1 / 12.0.0.1
apache1192.168.100.110
apache2192.168.100.120
NFS192.168.100.130
步骤
在两台节点服务器上搭建httpd服务
# yum install httpd -y# systemctl stop firewalld.service# setenforce 0
在NFS服务器上搭建NFS服务
  • 安装服务
    # rpm -q nfs-utils# rpm -q rpcbind   //看是否安装,服务已安装
  • 编辑配置文件
    # vim /etc/exports/usr/share *(ro,sync)/opt/benet 192.168.100.0/24(rw,sync)//创建目录benet,192.168.100.0网段的可以进行读写和同步操作/opt/accp 192.168.100.0/24(rw,sync)//创建目录accp,192.168.100.0网段的可以进行读写和同步操作
  • 创建目录并赋予权限
    # mkdir /opt/benet /opt/accp# chmod 777  /opt/benet /opt/accp
  • 开启nfs服务并发布共享
    # systemctl start nfs.service# exportfs -rv  //发布共享

    节点服务器挂载nfs服务器的共享文件
  • apache1将/opt/benet挂载到站点目录下
    # showmount -e 192.168.100.130  //查看共享文件# mount.nfs 192.168.100.130:/opt/benet /var/www/html  //挂载# cd /var/www/html/# echo "this is benet" > index.html# systemctl start httpd.service 

  • apache2将/opt/accp挂载到站点目录下
    # showmount -e 192.168.100.130  //查看共享文件# mount.nfs 192.168.100.130:/opt/accp /var/www/html  //挂载# echo "this is accp" > index.html# systemctl start httpd.service 


    LVS服务器(注意是双网卡)
  • 安装ipvsadm管理工具
    # yum install ipvsadm -y
  • 加载内核模块
    # modprobe ip_vs
  • 设置路由转发(因为是双网卡)
    # vim /etc/sysctl.conf末尾添加:net.ipv4.ip_forward = 1# sysctl -p  //立即生效

  • 防火墙设置
    iptables -F  # iptables -t nat -F# iptables -L//清空所有规则# iptables -t nat -I POSTROUTING -s 192.168.100.0/24 -o ens36 -j SNAT --to-source 12.0.0.1   //设置SNAT转发,将所有192.168.100.0段的都转换为12.0.0.1,然后进行访问client

  • 开启ipvsadm
    # systemctl start ipvsadm.service注:此时开启可能会出现问题# ipvsadm --save  > /etc/sysconfig/ipvsadm  //输入该行即可

  • 编写可执行的脚本
    # cd /opt# vi net.sh#!/bin/bashipvsadm -Cipvsadm -A -t 12.0.0.1:80 -s rripvsadm -a -t 12.0.0.1:80 -r 192.168.100.110:80 -mipvsadm -a -t 12.0.0.1:80 -r 192.168.100.120:80 -mipvsadm# chmod +x net.sh# ./net.sh解释如下:ipvsadm -C //清除内核虚拟服务器表中的所有记录//-A:添加虚拟服务器-s:指定调度算法rr:轮询算法-a:添加真实服务器-t:指定外网网关及TCP端口-r:指定节点服务器的地址及TCP端口-m:使用NAT集群模式



    打开一台win7进行检测


    注:当两次连续访问12.0.0.1时,可能一时间切换不过来,显示的还是原来的界面,这时候就必须清除缓存,才能看到两个不同的界面。当然了,如果这时关掉其中一台节点服务器的httpd服务,那么再去访问12.0.0.1时,显示的就是另一台的网页界面啦。

  • 看了以上关于LVS虚拟云服务器、负载调度算法及其它,如果大家还有什么地方需要了解的可以在行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,技术工程师在行业内拥有十几年的经验了。


服务 服务器 节点 调度 算法 地址 目录 内核 客户 文件 分配 不同 均衡 工具 权重 模块 模式 界面 管理工具 网关 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 成都软件开发在哪个地区 前置机需要安装数据库吗 嘉峪关网络安全演练 邢台市锦泽软件开发 普陀区优势软件开发服务装饰 2021年国家网络安全教育视频 ftp服务器访问网络问题 电脑共享文件夹做成文本服务器 软件开发技能创新内容 数据库建表的5大约束 中国网络安全员工资 网络安全专员考核指标 轻量服务器远程连接提示密码错误 安徽多功能软件开发平均价格 mysql建本地数据库 医疗软件开发需要什么技术 高考填报数据库excel 塞尔达传说中国服务器 虚拟服务器不需要物理服务器吗 第五人格的服务器维修 潮州软件开发制作 方舟服务器不小心删除了设置 苏州阿里云服务器中小型 数据库索引 博客园 我的世界正版1.17服务器 做软件开发的出路在哪 星际争霸服务器没有响应 在网络安全厂商做渠道经理 第一届国家网络安全宣传 网吧用的是云服务器吗
0