集群简介
什么是集群
一组是通过高速网络互联的计算组,并以单一系统的模式加以管理。
将很多服务器集中起来一起,提供同一种服务,在客户端看来就像是只有一个服务器
可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益
任务调度是集群系统中的核心技术
集群:由一组机器提供相同的服务通过网线连接
集群目的:
提高性能
降低成本
提高可扩展性
增强可靠性
集群的分类:
高性能计算集群HPC(主要用于科学)
负载均衡集群LB(平均分摊)
高可用集群HA(需要两台服务器一个主一个备,避免单点故障)
LB的实现:LVS软件 Haproxy软件 (nginx)
HA的实现:Keepalived软件
LVS软件介绍:主要实现高可用的、可伸缩的web、mail、cache、和media等网络服务。
LVS集群组成
前端:负载均衡层
中间:服务器群组层
底端:数据共享存储层
LVS术语
Diector Server 调试服务器
Real Server 真实服务器
VIP 虚拟ip地址
RIP 真实IP地址
DIP 调试器连接节点服务器的ip地址
cip 客户ip地址
LVS工作模式
VS/NAT 网络地址转换模式(有两个网段的IP一个私有和一个公有)
VS/DR直接路由模式(分发器在发请求给服务器时,不直接回包给分发器,而是直接发给客户,但客户端必须要有VIP)
VS/TUN隧道模式(用来做LB集群时服务器在不同地点)
负载均衡调试算法
轮询 :平均分配(rr)
加权轮询:根据权重值轮询,根据比例值(wrr)
最少连接:看谁的连接数少就分发给谁(lc)
加权最少连接:根据权重值去选择最少的连接数(wlc)
LVS-NAT集群
安装软件
LVS的ip负载均衡技术是通过IPVS模块实现的
IPVS模块已成为Linux组成部分
sysctl命令被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录/proc/sys中。它包含一些TCP/ip堆栈和虚拟内存系统的高级选项, 这可以让有经验的管理员提高引人注目的系统性能。用sysctl可以读取设置超过五百个系统变量。
语法
sysctl(选项)(参数)
查看所有可读变量:
sysctl -a
开启内核路由转发功能
sysctl -a | grep ip_forward
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
sysctl -p 开启路由转发
添加网关:
route add default gw 网关地址
删除网关:
route del default gw 网关地址
查看网关:
route -n
注:做这些之前需要将NetworkManager关了在生产环境一般也不开
配置分发器:
安装软件包
ipvsadm
服务名和软包同名
命名是ipvsadm创建集群管理集群
创建虚拟服务器
查看集群ipvsadm -Ln(加n以数字显示)
添加虚拟服务器 -A
设置群集地址(VIP,Virtual IP) -t
指定负载调度算法 -s
ipvsadm用法:
添加、删除服务器节点
-a 添加真实服务器
-d删除真实服务器
-r指定真实服务器(Real Server)的地址
-m 使用NAT模式;-g、-i 分别对就DR、TUN模式
-w为节点服务器设置权重,默认为1
保存配置ipvsadm -S
清除所有配置ipvsadm -C
ipvsadm -Ln --stats 查看详细信息
conns接收连接数 InPkts 输入数据包outpkts输出数据包 inbytes输入字节数 outbytes输出字节数
watch -n 1 ipvsadm -Ln --status 每隔一秒显示信息
清空计数器ipvsadm -Z
/etc/sysconfig/ipvsadm-config
保存到自己的主配置文件里让它开机启动:ipvsadm -S > /etc/sysconfig/ipvsadm-config
IPVS_SAVE_ON_STOP="no" 默认配置文件不保存
缺点:一旦调度器坏了服务集群就没法用了,成为了数据传输的瓶颈。为了解决这问题我们需要用LVS/DR技术
LVS-DR集群
设置分发器
ifconfig eth0:1 192.168.4.254 绑定接口如何想让他开机生效可以放在/etc/rc.local
保存当前配置到主配置文件里
ipvsadm -S > /etc/sysconfig/
创建虚拟服务
ipvsadm -A -t 192.168.4.253:80 -s rr
添加realserver
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(默认不写-g就是DR模式)
保存配置
ipvsadm -S > /etc/sysconig/ipvsadm-config
查看状态信息
ipvsadm -Ln
如果出现Route字样就表示是DR模式
二、配置realserver
1、修改网络接口的内核参数
cd /proc/sys/net/ipv4/conf/
lo/arp_ignore将这里面的值改为1
lo/arp_announce将这里面的值改为2
all/arp_ignore将这里面的值改为1
all/arp_announce将这里面的值改为2
如果要永久生效记到写到/etc/rc.local写绝对路径
2、在本机的lo接口绑定vip地址每台都要设置
删除绑定的vip地址 ifdown lo:1
ifconfig lo:1 192.168.4.253/32要永久生效写到/etc/rc.local
3、运行网站服务编写网页文件