83

LVS负载均衡群集(NAT模式)-xuewenchang-51CTO博客

 6 years ago
source link: http://blog.51cto.com/982439641/2066637
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

一、群集技术概述

1、群集的类型
1)负载均衡群集:主要的功能将来自客户机的访问请求分流给多台服务器,从而缓单台服务器的负载压力,例如京东淘宝的购物节的时候,当天的并发量是分常大的,单台服务器是无法承载的。
2)高可用群集:高可用群集和hsrp原理基本一样,服务器有主从之分,实现故障切换,当一台服务器发生故障的时候,另一台服务器马上提供工作。
3)高性能运算群集:这种群集主要用在“云计算”中,就是将多台服务器的硬件整合到一起,实现高性能运算能力。

2、负载均衡的分层结构
第一层:负载调度器,是群集系统的唯一入口,对外使用所有服务器共有的虚拟ip地址,通常会配置主从两台调度器实现热备份,确保高可用性。
第二层:服务器池,也就是提供各种服务的服务器,例如web服务器,ftp服务器,数据库服务器等,处理调度器发来的请求。
第三层:共享存储,主要存储服务器池中应用程序的数据,一般会采用nas或者san设备,我们今天就使用NFS搭建一台nas服务器,工作中也可以购买硬件nas和san。
3、负载均衡的工作模式

LVS负载均衡群集1(NAT模式)

1)地址转换,简称nat模式,负载均衡调度器作为网关,服务器和负载调度器在同一个私有网络,安全性较好。
2)Ip隧道,简称tun模式,负载调度器仅作为客户机的访问入口,各节点通过各自的internet连接直接回应客户机,不在经过负载调度器,服务器的节点分散在互联网的不同位置,具有独立的共有ip地址,通过专用的ip隧道与负载调度器相互通信。
3)直接路由,简称DR模式,与TUN模式类似,但各节点不是分散在各地,而是与调度器位于同一个物理网络,负载调度器与各节点服务器通过本地网络连接,不需要建立专用的ip隧道。
以上三种模式中,nat方式只需要一个公网地址,从而成为最容易的一种负载均衡模式,安全性也比较好,许多硬件负载均衡设备就是采用这种方式,性比较而言,DR模式和TUN模式的负载能力更强大,使用范围更广,但节点的安全性要稍差一些。

二、LVS虚拟服务器

Lvs是linux内核的一部分,由我国的章文嵩博士在1998年创建,也是极少数由中国人开发的优秀软件之一,我们可以直接手动加载ip_vs模块
-----并查看当前系统中ip_vs模块的版本信息,命令如下:

LVS负载均衡群集1(NAT模式)

1、lvs的负载调度算法
1)轮询:将受到的访问请求按顺序轮流分配给群集中的各节点,不管服务器的连接数和系统负载。
2)加权轮询:也是轮流分配,但是可以调整权重,让处理性能强的服务器承担更多的访问流量。
3)最少连接:根据连接数分配,分配给连接数少的节点。
4)加权最少连接:权重高的节点将承担更大比例的负载

2、使用ipvsadm管理工具
Ipvsadm是在负载调度器上使用的lvs群集管理工具,通过调用ip_vs模块来添加、删除服务器节点。需要手动安装。
yum -y install ipvsadm
-------命令试验中演示。

3、NFS共享存储服务
NFS与我们之前讲过的openfiler、nas、san设备相似,都是属于存储设备,其实NFS就是一种nas存储。
我们在学习虚拟化的时候就使用过openfiler搭建过存储,其实在exsi上也可以使用NFS作为存储。
接下来用一个综合实验详细介绍安装和使用。

三、综合案例:搭建LVS群集(NAT模式)

LVS负载均衡群集1(NAT模式)

-------实验目标:搭建lvs群集,lvs负载调度器有两块网卡,是所有内部web服务器的网关服务器,需要为负载调度器配置SNAT,以便内部的服务器可以访问internet,所有的节点服务器、共享存储位于私有网络,网关指向负载调度器的192.168.7.254
在虚拟机上实验环境如下:
LVS负载均衡群集1(NAT模式)

--------实验步骤:
1、搭建NFS服务器
1)安装nfs-utils(用来发布共享和访问)和rpcbind(用于RPC支持)

LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)

2)设置共享目录
将文件夹/opt/wwwroot共享给内部的web服务器节点使用,命令如下:

LVS负载均衡群集1(NAT模式)

打开/etc/exports文件,在里面设置共享

LVS负载均衡群集1(NAT模式)

-----rw:读写,sync:允许同步写入,no_root_squash:客户机以root身份访问时赋予本地root权限。---

3)启动NFS服务程序

LVS负载均衡群集1(NAT模式)

4)查看本机发布的NFS共享目录

LVS负载均衡群集1(NAT模式)

5)在web节点A上访问NFS共享资源
若要正常访问NFS共享资源,客户机中也需要安装rpcbind软件包,并启动服务器,如果想使用showmount查询共享,也需要安装nfs-utils软件包。
LVS负载均衡群集1(NAT模式)
然后在NFS上面关闭防火墙 service iptables stop
在web节点A上连接

LVS负载均衡群集1(NAT模式)

6)在两台节点服务器上安装nginx,并开启nginx服务

LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)

7)在web节点A上挂载共享目录到本地的nginx网站主目录

LVS负载均衡群集1(NAT模式)

8)在NFS服务器的/opt/wwwroot里面制作网页index.html,然后到web节点A的/usr/local/nginx/html中查看,如果有index.html就说明挂载成功。

LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)

9)设置自动挂载
Vi /etc/fstab

LVS负载均衡群集1(NAT模式)

-----注意:在web节点B上做和web节点A相同的操作,为了显示负载均衡,在web1 挂载了nfs,web2的网站默认是nginx首页。

2、配置负载调度器

1)在调度器上安装ipvsadm软件包

LVS负载均衡群集1(NAT模式)

2)配置SNAT转发规则

LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)

3)配置负载分配策略,主要目的是把web节点添加到调度器里面

LVS负载均衡群集1(NAT模式)

3、测试LVS群集,查看负载调度器

LVS负载均衡群集1(NAT模式)

注意:为了方便测试效果,web节点B的就不挂载NFS了,保持默认的nginx主页,然后在客户端上测试,访问两次,网页都不一样,实现了负载均衡群集。注意测试的时候把两台web节点的网关指向调度器,防火墙开启80端口或者关闭,然后把调度器的防火墙开启FORWARD和INPUT允许80端口。

LVS负载均衡群集1(NAT模式)
LVS负载均衡群集1(NAT模式)

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK