redhat6.5-RHCS-ricci+luci+shared storage

一.RHCS

        RHCS(Red Hat Cluster Suite红帽集群套件),是多组合的软件套件,在部署时采用不同的配置,以满足对高可用性,负载均衡,可扩展性,文件共享的需求。

ricci:安装在集群的节点的接收来自 luci 管理请求的代理,端口=11111

luci:提供了管理 rhcs 集群的 图形 界面, luci 管理集群主要是通过跟 ricci 通信来完成的,端口=8084

二.nginx集群的部署

实验环境:node1:server1_IP:172.25.78.1 node2:server_IP:172.25.78.4

1.ricci和luci的安装以及配置

(1)在node1和node2安装ricci并且开启服务

(2)在node1上安装luci集群的图形管理界面


(3)ricci需要设置节点的密码

(4)在node1开启luci(可以通过节点1的8084端口访问,但要注意是https加密)

(5)在node1和node2上把luci以及ricci开机自启(防止后面做fence的时候,节点不能启动)

2.测试node1节点上的luci(https是加密的要获取证书https://172.25.78.1:8084)

(1)登陆luci

(2)以超级用户root登陆,密码是node1的root用户密码

3.配置集群的节点和fence设备

(1)创建集群(密码是之前设定的ricci的密码)

cluster name               ##集群的名称

download packages   ##下载所需的软件包并且安装

reboot node before joining cluster  ##节点加入集群后重启

enable shared storage support       ##支持存储共享(后面要做mysql的存储共享)


(2)添加节点server1和server4(节点之后会重启再次加入集群)

(3)添加fence设备(虚拟机做节点,选择多播模式,设置fence名称xvmfence)

(4)点击Nodes把server1和server4加入fence设备


cman:分布式集群管理

rgmanager:资料组管理器

clvmd:集群化的lvm逻辑卷

(5)用kvm来做fence设备(fence能防止脑裂,也就是两个节点争夺资源,其中一个节点损坏直接切断电源)

libvirtd服务一定要开启


物理机安装:fence-virtd-multicast fence-virtd-libvirt fence-virt


fence_virtd -c  ##创建隔离设备


interface  ##虚拟机和物理机的通信接口是br0

/etc/cluster/fence_xvm.key     ##生成密钥的位置

把密钥发送给两个节点和物理机建立连接

重启fence_virtd服务

(6)clustat  ##查看当前节点的状态(两个节点都在线而且正常)

cat /etc/cluster/cluster.conf      ##集群的配置文件

(7)fence隔离设备的测试(在节点server1上fence掉server4,fence设置成功)

4.配置集群的失效域(也就是节点的优先级等详细信息)

prioritized   ##一个节点失效另一个接管

restricted    ##服务只能在特定的节点上运行

NO Faliback   ##节点接管服务后一直接管,即使之前的节点恢复正常

priority   ##优先级,数字越小,优先级越大

5.配置集群的资源

(1)添加虚拟IP

(2)添加集群索控制的服务脚本(服务名称,服务在节点上的绝对路径,只要在/etc/init.d/目录下有的服务几乎都可以搭建集群,如果是自己写的脚本记得加执行权限,否则集群不能开启)

6.把资源添加进集群(没有存储时,资源的添加顺序:服务——>VIP——>服务脚本;有共享存储先加存储,再挂VIP)

Recovery  policy    Relocate          ##恢复的方式,重新添加

三.测试web集群

(1)节点正常在线,web服务已经运行在server4上(不用添加VIP,集群开启后自己添加)

clusvcadm -d  web  ##关闭web集群

clusvcadm -e  web   ##开启web集群


本来server1的优先级高,在server4开启集群web后,server1上的vip就会漂移到server4


(2)通过/proc/sysrq-trigger 控制主机

echo "b" > /proc/sysrq-trigger   # 立即重新启动计算机

echo "o" > /proc/sysrq-trigger  # 立即关闭计算机

echo "m" > /proc/sysrq-trigger  # 导出内存分配的信息 (可以用/var/log/message 查看)

echo "p" > /proc/sysrq-trigger  # 导出当前CPU寄存器信息和标志位的信息

echo "t" > /proc/sysrq-trigger  # 导出线程状态信息

echo "c" > /proc/sysrq-trigger  # 故意让系统崩溃

echo "s" > /proc/sysrq-trigger  # 立即重新挂载所有的文件系统

echo "u" > /proc/sysrq-trigger  # 立即重新挂载所有的文件系统为只读


(3)echo "c" > /proc/sysrq-trigger  # 故意让系统崩溃,节点通过fence设备正常恢复


四.nginx的7层负载(实现负载均衡)

(1)vim /usr/local/nginx/conf/nginx.conf

后端apache服务器serevr2和server3,本机的回环接口也开8080的apache端口做为报错页面,当两台后端服务都挂掉,本机接管

默认算法轮询

server name  维护的域名

(2)测试

在物理机作本地解析

轮询访问


五.基于mysql的存储共享(iscsi)

1.iscsi和mysql的安装以及部署

(1)安装iscsi在存储使用端server1和server4

(2)安装scsi的服务端在server2,提供存储


(3)安装mysql在server1和server4

(4)server2磁盘服务端开启tgtd服务

 vim /etc/tgt/targets.conf     ###tgtd的配置文件,指定磁盘使用者IP


(5)tgt-admin  -s      ##查看分享的磁盘详情

格式化未ext4文件格式

(6)登陆共享磁盘

查看 cd /var/lib/iscsi/nodes/ 有没有分享的节点


(7)测试磁盘共享是否成功

server1挂载分享的磁盘sda1 到/mnt,并且创建文件


server4也挂载共享磁盘能查看文件,磁盘共享成功


(8)mysql的数据路径在/var/lib/mysql,把/dev/sda1挂载到/var/lib/mysql,并且修改所属用户和组,这样mysql才能读写

(9)在luci图形界面添加存储共享

添加mysql的脚本资源

(10)mysql集群成功创建

VIP和磁盘资源都会在集群启动后自动添加,挂载

(11)可以挂载逻辑卷,这样可以在磁盘不够用时,拉伸磁盘

模拟环境:之前创建了2G的磁盘空间,现在不够用了


拉伸逻辑卷空间(vg不够用了,只能再次创建pv)

拉伸逻辑卷后,拉伸设备

六.也能采用GFS2共享存储

gfs2:GFS是Red Hat开发的一套集群文件系统,GFS文件系统允许多个服务同时读写一个磁盘分区,通过GFS可以实现数据的集中管理,免去了数据同步和复制的麻烦,但GFS并不能孤立的存在,安装GFS需要RHCS的底层组件支持。

mkfs.gfs2 -j 3 -p lock_dlm 集群名称:当前集群唯一  /dev/sda1          ##格式化未gfs2格式

-j:  指定日志区域的个数,有几个就能够被几个几点挂载


gfs2_tool journals /mnt           查看节点日志信息

共享存储----->VIP----->script (一定先添加存储)


写在/etc/fstab中开机自动挂载(gfs2是通过网络来读写,要设置_netdev,提示系统先开启网络在挂存储,否则主机不能开启)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值