集群及LVS-NAT/DR的配置

集群及LVS
一、集群
服务器资源:CPU,内存,网络,硬盘I/O
⦁ 概述
⦁ 什么是集群?
— 一组通过高速网络互连的计算组,并以单一系统的模式加以管理
— 将很多服务器集中起来一起,提供同一种服务,在客户端看来就像是只有一个服务器
— 可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益
— 任务调度是集群系统中的核心技术
b) 集群的目的
⦁ 提高性能
— 如计算密集型应用,如:天气预报、核试验模拟
⦁ 降低成本
— 相对百万美元级的超级计算机,价格便宜
⦁ 提高可扩展性
— 只要增加集群节点即可
⦁ 增强可靠性
— 多个节点完成相同功能,避免单点失败
c) 集群分类
1.HPC:高性能计算,为了解决计算量
— 通过以集群开发的并行应用程序,解决复杂的科学问题
⦁ LB:负载均衡,为了解决并发量(LVS软件 Haproxy软件)
— 客户端负载在计算机集群中尽可能平均分摊
3.HA:高可用,为了解决单点故障(Keepalived软件)
— 避免单点故障,当一个系统发生故障时,可以快速迁移

二、LVS软件
⦁ 概述
⦁ LVS项目介绍
⦁ Linux虚拟服务器(LVS)是张文嵩在国防科技大学就读博士期间创建的
⦁ LVS可以是想高可用的、可伸缩的Web、Mail、Cacge和Media等网络服务
⦁ 最终目标是利用Linux操作系统和LVS集群软件实现一个高可用、高性能、低成本的服务器应用集群
b) LVS集群组成
i. 前端:负载均衡层
— 由一台或多台负载调度器构成
ii. 中间:服务器群组层
— 由一组实际运行应用服务的服务器组成
iii. 底端:数据共享存储层
— 提供共享存储空间的存储区域
c) LVS术语
i. Director Server:调度服务器
— 将负载分发到Real Server的服务器
ii. Real Server:真实服务器
— 真正提供应用服务的服务器
iii. VIP:虚拟IP地址
— 公布给用户访问的虚拟IP地址
iiii. RIP:真实IP地址
— 集群节点上使用的IP地址
iiiii. DIP : 调度器连接节点服务器的IP地址
iiiiii.CIP : 客户端IP
d) LVS工作模式
⦁ VS/NAT
⦁ 通过网络地址转换实现的虚拟服务器
⦁ 大并发访问时,调度器的性能成文瓶颈
⦁ VS/DR
⦁ 直接使用路由技术实现虚拟服务器
⦁ 节点服务器需要配置VIP,注意MAC地址广播
⦁ VS/TUN
⦁ 通过隧道方式实现虚拟服务器
e) 负载均衡调度算法
⦁ LVS目前实现了10种调度算法
⦁ 常用调度算法由4种(a-d)
⦁ 轮询(Round Robin)
— 将客户端请求平均分发到RealServer
⦁ 加权轮询(Weighted Round Robin)
— 根据Real Server权重值进行轮询调度
⦁ 最少连接(Least Connections)
— 选择连接数最少的服务器
⦁ 加权最少连接(Weighted Least Connections)
— 根据Real Server权重值,选择连接数量少的服务器
e) 源地址散列(Source Hashing)
— 根据请求的目标IP地址,作为散列键(Hash Key)从静态分配的散列表i找出对应的服务器
f) 其他调度算法(5种)
— 基于局部性的最少链接
— 带复制的基于局部性最少链接
— 目标地址散列(Destination Hashing)
— 最短的期望的延迟
— 最少队列调度
⦁ 配置LVS/NAT模式集群
主机角色:
real server : 主机52 和 53
分发器 : 主机54
客户端 : 主机50
1.1 准备实验环境环境
分发器 : 主机54
eth0 私有网络 IP 地址 : 192.168.4.54
eth1 公有网络 IP 地址 : 192.168.2.54
开启内核路由转发功能,使其能够收发不同网段的IP包

#	sysctl -a  |  grep  ip_forward
#	vim /etc/sysctl.conf
net.ipv4.ip_forward = 1(在最后追加)
#	sysctl -p	(查看内核是否开启路由转发功能,默认是开启的,将结果显示出来)

real server :
主机52
eth0 192.168.4.52
网关地址 : 192.168.4.54

# systemctl stop NetworkManager
# route  add  default  gw   192.168.4.54
# route  -n

主机 53
eth0 192.168.4.53
网关地址 : 192.168.4.54

# systemctl stop NetworkManager					//关闭网络管理器
# route  add  default  gw   192.168.4.54		//增加网关
# route  -n									//查看网关

客户端 50
eth1 192.168.2.50
网关指向 192.168.2.54

# systemctl stop NetworkManager
# route  add  default  gw   192.168.2.54
# route  -n

删除网关地址命令

# route  del  default  gw   192.168.2.54

1.2 配置网站服务52/53
运行网站服务并编写网页文件

1.3 配置分发器54
安装提供LVS服务的软件包——>创建虚拟服务——>添加real server——>保存配置——>查看配置信息
LVS的IP负载 均衡技术是通过IPVS模块实现的
IPVS模块已成为Linux组成部分

#  yum -y install ipvsadm

Ipvsadm 用法
创建虚拟服务器

—	-A  添加虚拟服务器
—	-t	 设置群集地址
—	-s 	 指定负载调度算法

添加、删除服务器节点

—	-a	 添加真实服务器
—	-d	 删除真实服务器
—	-r	 指定真实服务器;-g、-i分别对应DR、TUN模式
—	-w	  为节点服务器设置权重,默认为1
—	-C  删除全部配置
—	-D  删除虚拟服务器

创建虚拟服务:

# ipvsadm  -A  -t  192.168.2.54:80  -s  rr

添加real server

# ipvsadm  -a  -t  192.168.2.54:80  -r  192.168.4.52:80  -m
# ipvsadm  -a  -t  192.168.2.54:80  -r  192.168.4.53:80  -m

保存配置

# ipvsadm  -S

查看配置信息

# ipvsadm  -Ln(基本)
#  ipvsadm  -Ln  --stats  (详细)

在这里插入图片描述

1.4客户端测试配置
客户端连接VIP地址 访问网站服务
主机54监控:

# watch  ipvsadm -Ln --stats(动态查看)

在这里插入图片描述

客户机50访问

#curl http://192.168.2.54/test.html

1.5 管理集群
删除real server

# ipvsadm -d -t  192.168.2.54:80  -r  192.168.4.53

添加real server

# ipvsadm -a -t  192.168.2.54:80  -r  192.168.4.53:80 -m

修改调度算法

# ipvsadm -E  -t  192.168.2.54:80  -s wrr

修改real server 权重值

# ipvsadm -e -t  192.168.2.54:80  -r  192.168.4.53:80  -w  3  -m

清空计数器

# ipvsadm -Z

把策略保存到服务的配置文件里

# ipvsadm -Ln > /etc/sysconfig/ipvsadm 

把服务设置为开启启动

# systemctl enable  ipvsadm

⦁ 配置LVS-DR
工作原理
客户端: 50 cip
调度器: 54 vip 192.168.4.253
dip 192.168.4.54
realserver 52和53 rip 192.168.4.52/53
需求:客户端访问VIP地址 192.168.4.253 访问网站集群
配置步骤

  1. 配置分发器 54
    ⦁ 本机eth0接口绑定VIP地址

    # ifconfig  eth0:1  192.168.4.253
    # vim /etc/rc.local(追加)
    ifconfig  eth0:1  192.168.4.253
    

⦁ 创建虚拟服务

# ipvsadm -A -t  192.168.4.253:80  -s  rr

⦁ 添加real server

# ipvsadm -a -t   192.168.4.253:80  -r  192.168.4.52:80  -g
# ipvsadm -a -t   192.168.4.253:80  -r  192.168.4.53:80  -g

⦁ 保存配置

# ipvsadm -S

⦁ 查看状态信息

# ipvsadm -S  >  /etc/sysconfig/ipvsadm
  1. 配置real server 52 和 53
    a) 修改网络接口的内核参数

    #cd /proc/sys/net/ipv4/conf/
    # echo 1 > lo/arp_ignore
    # echo 2  > lo/arp_announce
    # echo 1  > all/arp_ignore 
    # echo 2  > all/arp_announce 
    

a) 在本机的lo接口绑定VIP地址192.168.4.253

# ifconfig  lo:1 192.168.4.253/32

删除绑定的VIP地址

# ifdown  lo:1

a) 运行网站服务并编写网页文件

52号机# echo  web52   >  /var/www/html/test.html
53号机# echo  web53  >  /var/www/html/test.html

client50

# curl   http://192.168.4.253/test.html

内核参数说明:
arp_ignore(定义回复ARP广播的方式)

	—	0 (默认值)
回应所有的本地地址ARP广播,本地地址可以配置在任意接口
	—	1
只回应配置在入站网卡接口上的任意IP地址的ARP广播

arp_announce

—	0(默认)
	使用配置在任意网卡接口上的本地IP地址
—	2
	对查询目标使用最适当的本地地址

ARP防火墙
使用ARP防火墙也可以禁止对VIP的ARP请求

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值