RHCS(红帽集群套件)实现高可用集群

RHCS即 RedHat Cluster Suite ,中文意思即红帽集群套件,是一套综合的软件组件,可以通过在部署时采用不同的配置,以满足你的对高可用性,负载均衡,可扩展性,文件共享和节约成本的需要。它是一个功能完备的集群应用解决方案,它从应用的前端访问到后端的数据存储都提供了一个行之有效的集群架构实现,通过RHCS提供的这种解决方案,不但能保证前端应用持久、稳定的提供服务,同时也保证了后端数据存储的安全。
RHCS提供了集群系统中三种集群构架,分别是高可用性集群、负载均衡集群、存储集群。

  • 高可用集群: 是RHCS的核心功能。当应用程序出现故障,或者系统硬件、网络出现故障时,应用可以通过RHCS提供的高可用性服务管理组件自动、快速从一个节点切换到另一个节点,节点故障转移功能对客户端来说是透明的,从而保证应用持续、不间断的对外提供服务,这就是RHCS高可用集群实现的功能。
  • 负载均衡集群: RHCS 通过 LVS 来提供负载均衡集群,而LVS是一个开源的、功能强大的基于IP的负载均衡技术,LVS 由负载调度器和服务访问节点组成,通过LVS的负载调度功能,可以将客户端请求平均的分配到各个服务节点,同时,还可以定义多种负载分配策略,当一个请求进来时,集群系统根据调度算法来判断应该将请求分配到哪个服务节点,然后,由分配到的节点响应客户端请求,同时,LVS 还提供了服务节点故障转移功能,也就是当某个服务节点不能提供服务时,LVS 会自动屏蔽这个故障节点,接着将失败节点从集群中剔除,同时将新来此节点的请求平滑的转移到其它正常节点上来;而当此故障节点恢复正常后,LVS 又会自动将此节点加入到集群中去。而这一系列切换动作,对用户来说,都是透明的,通过故障转移功能,保证了服务的不间断、稳定运行。
  • 存储集群: RHCS 通过GFS (Global File System)文件系统来提供存储集群功能,它允许多个服务同时去读写一个单一的共享文件系统,存储集群通过将共享数据放到一个共享文件系统中从而消除了在应用程序间同步数据的麻烦,GFS 是一个分布式文件系统,它通过锁管理机制,来协调和管理多个服务节点对同一个文件系统的读写操作。

集群套件的作用

luci:luci 是用来配置和管理集群,监听在8084上
ricci: ricci 是安装在每个后端的每个节点上的,luci 管理集群上的各个节点就是通过和节点上的ricci进行通信,ricci监听在11111上。
fence: 当意外原因导致主机异常或者宕机时,备机会首先调用fence设备,然后通过fence设备将异常主机重启或者从网络隔离,当fence操作成功执行后,返回信息给备机,备机在接到fence成功的信息后,开始接管主机的服务和资源。这样通过fence设备,将异常节点占据的资源进行了释放,保证了资源和服务始终运行在一个节点上。并且有效的阻止了“脑裂"的发生。

集群结构:

RHCS(红帽集群套件)实现高可用集群_第1张图片

实验环境

  • rhel6.5
主机名 IP
server1 172.25.60.1
server2 172.25.60.2
foundation60 172.25.60.250

RHSC 环境的搭建

  • server1 管理节点 和 HA 节点
  • server2 HA节点
  • server1 上要安装 ricci 和 luci
  • 先配置更高级的yum源
    RHCS(红帽集群套件)实现高可用集群_第2张图片
  • 安装ricci 和 luci
[root@server1 ~]# yum install ricci luci -y
  • 设置ricci的密码
    RHCS(红帽集群套件)实现高可用集群_第3张图片
  • 并开启服务
    RHCS(红帽集群套件)实现高可用集群_第4张图片
  • 设置开机自启
[root@server1 ~]# chkconfig ricci on
[root@server1 ~]# chkconfig luci on
[root@server1 ~]# chkconfig --list   ##查看开机自启的服务
  • 配置好解析:vim /etc/hosts
    RHCS(红帽集群套件)实现高可用集群_第5张图片
  • server2 和server1一样,只需安装ricci即可
  • 此时环境搭建完成,可以查看端口,因为该服务是https(添加信任网络) 8084端口,所以在浏览器上访问 https://172.25.60.1:8084
    在这里插入图片描述
    RHCS(红帽集群套件)实现高可用集群_第6张图片

创建集群、节点

  • 创建集群:点击集群管理(Manage Clusters),然后点击create创建一个redhat_ha集群
    RHCS(红帽集群套件)实现高可用集群_第7张图片
  • 给集群创建两个节点
    RHCS(红帽集群套件)实现高可用集群_第8张图片
  • 然后点击Create Cluster后,开始创建后下载包,此时进入等待界面,因为server1和server2会重启,重新开启服务
    RHCS(红帽集群套件)实现高可用集群_第9张图片
  • 节点创建成功
    RHCS(红帽集群套件)实现高可用集群_第10张图片
  • 可以通过clustat 查看服务机状态或者查看节点的配置文件cat /etc/cluster/cluster.conf
    RHCS(红帽集群套件)实现高可用集群_第11张图片

配置fence

  • fence 原理:当意外原因导致主机异常或者宕机时,备机会首先调用FENCE设备,然后通过FENCE设备将异常主机重启或者从网络隔离,当FENCE操作成功执行后,返回信息给备机,备机在接到FENCE成功的信息后,开始接管主机的服务和资源。这样通过FENCE设备,将异常节点占据的资 源进行了释放,保证了资源和服务始终运行在一个节点上。
  • 在节点外的一台(foundation60)安装fence
    RHCS(红帽集群套件)实现高可用集群_第12张图片
  • 创建一个存放钥匙的目录/etc/cluster
[root@foundation60 ~]# mkdir /etc/cluster
  • 配置fence,并更改网卡(是为了让其能连接上虚拟机)生成钥匙
[root@foundation60 ~]# fence_virtd -c

在这里插入图片描述

  • 如果钥匙生成不成功,则可以自己创建一个(在创建之前先把fence服务关闭,再开启,可以通过查看端口来测试是否开启netstat -autnlp | grep 1229
    RHCS(红帽集群套件)实现高可用集群_第13张图片
  • 生成钥匙后开启服务
[root@foundation60 cluster]# systemctl start fence_virtd.service 
  • 将生成的钥匙scp到两个虚拟机上
    在这里插入图片描述

  • 然后在luci上添加fence
    RHCS(红帽集群套件)实现高可用集群_第14张图片

  • 给两个节点上添加fence,点击节点名称,点击Add Fence Method并添加上虚拟机的UUID(用于区分)
    RHCS(红帽集群套件)实现高可用集群_第15张图片
    在这里插入图片描述
    RHCS(红帽集群套件)实现高可用集群_第16张图片
    RHCS(红帽集群套件)实现高可用集群_第17张图片

  • UUID 可以在这里获取
    RHCS(红帽集群套件)实现高可用集群_第18张图片

  • 测试:在server1上测试,把server2节点踢出集群。如果server2断电重启,则成功。
    在这里插入图片描述
    在这里插入图片描述

高可用服务配置(httpd)

  • 先在server1和server2上安装apache并编写测试页面,开启
    RHCS(红帽集群套件)实现高可用集群_第19张图片
  • 添加失败回切:配置webfail将server1和server2添加进去,并设置优先级,数字越小,优先级越高。
  • 此处设置server2的优先级比较高,就是该服务会现在server2节点上,当server2出现错误时,切换到server1上
    RHCS(红帽集群套件)实现高可用集群_第20张图片
    RHCS(红帽集群套件)实现高可用集群_第21张图片
  • 添加服务中需要的资源(VIP:(IP Address:172.25.60.100)和httpd)
    RHCS(红帽集群套件)实现高可用集群_第22张图片
    RHCS(红帽集群套件)实现高可用集群_第23张图片
  • 添加httpd服务脚本
    RHCS(红帽集群套件)实现高可用集群_第24张图片
    RHCS(红帽集群套件)实现高可用集群_第25张图片
  • 添加资源组:名字为apache,将IP Address和httpd资源加入
  • 添加一个apache组
    RHCS(红帽集群套件)实现高可用集群_第26张图片
  • 给资源组添加资源
    RHCS(红帽集群套件)实现高可用集群_第27张图片
    RHCS(红帽集群套件)实现高可用集群_第28张图片
  • 查看:在server1上通过clustat查看,会看到此时httpd服务在server2上
    RHCS(红帽集群套件)实现高可用集群_第29张图片
  • 测试
  • 在server2上查看,会发现VIP已添加上
    RHCS(红帽集群套件)实现高可用集群_第30张图片
  • 在物理机上curl 172.25.60.100,会访问到server2(优先级高的页面)
    在这里插入图片描述
  • 在servre2上进行脑裂:将server2内核打乱(宕机),在物理机curl 172.25.60.100上会访问到server1上
    在这里插入图片描述
    在这里插入图片描述
    涉及的服务
    cman 集群管理器
    rgmanager 资源管理器
    modclusterd 修改配置文件
    clvmd 集群逻辑卷

你可能感兴趣的:(企业运维)