1.基本概念
1.RHCS是red hat cluster suite的缩写。
2.三个核心功能:
自动快速切换到另一个节点。
负载均衡集群LVS(Linux Virtual Server),将客户端请求平均分配到各个服务节点。可以定义分配策略。
还会自动屏蔽故障节点。接着将失败节点从集群中剔除。
LVS还可以提供 存储集群功能。GFS(Global File System).
3.RHCS集群的组成:
1.集群构架管理器
2. 高可用服务管理器: 一个节点故障,将服务转移到另一个正常的节点。
3.集群配置管理工具
4.Linux virtual Server
定义:RHCS是一个能够提供高可用性、高可靠性、负载均衡、存储共享且经济廉价的集群工具集合,它将集群系统中三大集群架构融合一体,可以给web应用、数据库应用等提供安全、稳定的运行环境。更确切的说,RHCS是一个功能完备的集群应用解决方案,它从应用的前端访问到后端的数据存储都提供了一个行之有效的集群架构实现,通过RHCS提供的这种解决方案,不但能保证前端应用持久、稳定的提供服务,同时也保证了后端数据存储的安全。RHCS提供了集群系统中三种集群构架,分别是高可用性集群、负载均衡集群、存储集群。
5.RHCS提供的三个核心功能具体介绍:
高可用集群:
是RHCS的核心功能。当应用程序出现故障,或者系统硬件、网络出现故障时,应用可以通过RHCS提供的高可用性服务管理组件自动、快速从一个节点切换到另一个节点,节点故障转移功能对客户端来说是透明的,从而保证应用持续、不间断的对外提供服务,这就是RHCS高可用集群实现的功能。
负载均衡集群: RHCS通过LVS来提供负载均衡集群,而LVS是一个开源的、功能强大的基于IP的负载均衡技术,LVS由负载调度器和服务访问节点组成,通过LVS的负载调度功能,可以将客户端请求平均的分配到各个服务节点,同时,还可以定义多种负载分配策略,当一个请求进来时,集群系统根据调度算法来判断应该将请求分配到哪个服务节点,然后,由分配到的节点响应客户端请求,同时,LVS还提供了服务节点故障转移功能,也就是当某个服务节点不能提供服务时,LVS会自动屏蔽这个故障节点,接着将失败节点从集群中剔除,同时将新来此节点的请求平滑的转移到其它正常节点上来;而当此故障节点恢复正常后,LVS又会自动将此节点加入到集群中去。而这一系列切换动作,对用户来说,都是透明的,通过故障转移功能,保证了服务的不间断、稳定运行。
存储集群: RHCS通过GFS文件系统来提供存储集群功能,GFS是Global File System的缩写,它允许多个服务同时去读写一个单一的共享文件系统,存储集群通过将共享数据放到一个共享文件系统中从而消除了在应用程序间同步数据的麻烦,GFS是一个分布式文件系统,它通过锁管理机制,来协调和管理多个服务节点对同一个文件系统的读写操作。
6.集群套件的作用:
集群中luci的作用:
luci是用来配置和管理集群,监听在8084上
*集群中ricci的作用:
ricci是安装在每个后端的每个节点上的,luci管理集群上的各个节点就是通过和节点上的ricci进行通信,ricci监听在11111上
集群中fence的作用:
当意外原因导致主机异常或者宕机时,备机会首先调用FENCE设备,然后通过FENCE设备将异常主机重启或者从网络隔离,当FENCE操作成功执行后,返回信息给备机,备机在接到FENCE成功的信息后,开始接管主机的服务和资源。这样通过FENCE设备,将异常节点占据的资源进行了释放,保证了资源和服务始终运行在一个节点上。并且有效的阻止了“脑裂"的发生。
2.搭建RHCS环境
实验环境:
主机 | 提供服务 |
---|---|
server1:172.25.16.1 | ricci,luci,httpd |
server2:172.25.16.2 | ricci,httpd |
物理机:172.25.16.250 | 测试 |
1.配置server1和server2的yum源
vim /etc/yum.repos.d/rhel-source.repo
yum clean all
yum repolist
scp /etc/yum.repos.d/rhel-source.repo root@172.25.66.2:/etc/yum.repos.d/rhel-source.repo
2.在server1中下载rhcs图形网页管理工具,更改密码为westos后开启其服务
yum install ricci luci -y #ricci是高可用节点布置,高可用的图形界面管理
/etc/init.d/ricci start
/etc/init.d/luci start
passwd ricci #会自动生成用户ricci,修改密码
chkconfig luci on #设置开机自启动
chkconfig ricci on #设置开机自启动
chkconfig --list #查看是否是开机自启
3.在server2上下载ricci并设置为开机自启
yum install ricci -y #ricci是高可用节点布置,高可用的图形界面管理
/etc/init.d/ricci start
/etc/init.d/luci start
passwd ricci #会自动生成用户ricci,修改密码
chkconfig luci on #设置开机自启动
chkconfig ricci on #设置开机自启动
chkconfig --list #查看是否是开机自启
注意:
1.ricci:图形里的集群管理
2.luci:图形界面
3.创建高可用集群管理
1.在server1中重新启动luci服务,可以查看到其对应的端口号
2.浏览器访问
3.使用超级用户进行登陆(登陆帐号和密码是server1中的系统用户和密码,普通用户需要经过超级用户的审核才能登陆,所以一般使用超级用户登陆)。
4.创建集群
注意:
创建集群过程比较慢,要耐心等待。创建时会重启server1、server2,所以server1和server2的ricci、luci服务要设置为开机自启,否则会导致创建集群失败。
创建成功
在两个主机中利用clustat命令可以查看到节点的工作状态(也可以查看文件/etc/cluster/cluster.conf)
4.配置fence
1.在物理机上安装fence
yum search fence-virtd
yum install fence-virtd.x86_64 fence-virtd-libvirt.x86_64 fence-virtd-multicast.x86_64 -y
2.初始化fence
3.建立密钥目录,并生成密钥,再将密钥传给server1和server2
mkdir /etc/cluster
cd /etc/cluster
dd if=/dev/urandom of=/etc/cluster/fence_xvm.key bs=128 count=1
scp fence_xvm.key root@172.25.16.1:/etc/cluster
scp fence_xvm.key root@172.25.16.2:/etc/cluster
4.开启fence服务
systemctl start fence_virtd.service
systemctl status fence_virtd.service
5.添加fence设备
6.绑定节点
server2同样操作
cat /etc/cluster/cluster.conf
测试:
server1中通过fence关闭server2,server2断电重启则表示成功
5.高可用的服务配置(httpd)–负载均衡
1.添加故障转移域
优先级:数字越小级别越高(这里server1的级别更高)
2.点击资源,添加vip和脚本启动
3.将资源添加到一个组里
4.server1和server2安装http服务并编写测试页
测试:
关闭server1的httpd服务,vip转移到server2上