一、在server1和server4上配置好nginx,详细配置步骤见nginx配置
二、在server1和server4上配置好yum源
三、在server1上面下载 ricci 和 luci ,在server4上面下载 ricci
下载好后,将所有服务设置为开机自启动
四、在server1和server4中给ricci设置密码(两个都做)
五、到浏览器中输入:https://172.25.6.1:8084,进入后点击advance会出现以下界面
如图,点击左下角Add Exception会弹出以下界面:
继续点击上图左下角的Confirm Security Exception 即可进入:
使用server1的root用户与密码登陆,进入后弹出提示,点击OK即可
选择manage Cluster一项后,点击右边的create选项创建节点
点击create cluster创建
等待。。。。。
如图,节点添加成功,可在server1和server4中使用clustat查看
接下来,点击菜单第三个Failover Domain,然后点击Add
1和2表示优先级,和keepalived相反,数字越小优先级越高
接下来点击菜单第四个resource,点击Add,选择IP Address:(做这一步时,server1和4中一定要没有100(下面设置的)这个ip)
作下一步我们需要写一个nginx的启动脚本,可以在百度下载,直接搜nginx启动脚本就行,下载好后,将脚本文件放在servr1和server4的/etc/init.d/目录下,并且给脚本一个可执行权限
做好上面后,再次点击Add,选择 script:
最后,点击菜单倒数第二个Service Groups:
先做好以下操作:
然后点击本界面左下角 Add Resource,添加IP和脚本(nginx):(先添加IP再添加脚本)
做好后,点击submit提交,执行后server1和server4会出现100这个ip
此时我们的nginx高可用已经做好了,在server1或4中使用clustat可以查看状态
可以看到,此时正在工作的节点是server1
做到这一步,只是一个结点的nginx服务停了之后,另一个节点才顺利顶替,如果网络挂掉或者电源关闭,则高可用模式会出现问题
如此,我们就要使用fence来进行电源管理
五、在物理机(真机)里面安装fence_virtd 服务:
1、使用yum search fence来查找安装包:再找到的包中安装下面3个
2、mkdir /etc/cluster
dd if=/dev/urandom of=fence_kvm bs=128 count=1
3.执行 fence_virtd -c
一直按回车,到Interface以行,在后面输入br0回车,最后一项输入y回车
4、systemctl restart fence_virtd
5、scp /etc/cluster/fence_kvm.key [email protected]:/etc/cluster
scp /etc/cluster/fence_kvm.key [email protected]:/etc/cluster
6、进入网页,点击菜单中fence一列:
add 选择 fence virt(multcast)起个名字
7.到菜单中Node一列,点击server1
点击左下角fence method,添加vmfence1
接着在vmfence1中点击Add fenceinstance
查看server1的UUID,填入domain中,提交
8、server2的操作跟srver1一样
9.在server1中执行fence_node server4,查看server1和server4是否连接成功
现在,有了fence进行电源管理,我们在将一个节点断网或者断电之后,另一个节点就会顺利接替,在另一个节点开启后,不会因为优先级而改变正在使用的节点,必须是一个节点挂了之后另一个节点才会接替
测试:查看正在使用的节点:clustat
接下来我们将server4的网络关闭:
之后4会自动重启
################RHCS数据存储############################
接下来只需要开启三个虚拟机
一、在server2上面新加一块硬盘,容量为8G
fdisk -l查看
在server2中下载scsi-*
yum install scsi-* -y
在server1和server4中下载iscsi-*
在server2中编辑/etc/tgt/targets.conf文件
/etc/init.d/tgtd start
用tgt-admin -s 查看
在server1和server4上面执行:
iscsiadm -m discovery -t st -p 172.25.6.2 发现设备
iscsiadm -m node -l
此时,在server1和server4上面就可以看到发现的硬盘设备
在server1上创建lvm:
在server4上发现:
在server1上格式化lvm:
停用nginx高可用:
进入网页luci界面Delete删除nginx:
之后到下面的界面删除nginx:
在server1中下载mysql mysql-server,在server4中下载mysql-server
下载好之后,在server1中将刚才创建的lvm挂载到/var/lib/mysql目录
在server1上开启mysqld:
/etc/init.d/mysqld start
进入/var/lib/mysql目录会看到以下内容,然后关闭mysqld并卸载lvm
在server4中挂载lvm,如图所示,在server1的mysqld服务关闭后,在server1的所有存储都会转移到server4
在server4中卸载lvm
进入网页luci界面:在下面的界面中点击Add
选择filesystem
再次点击Add,选择script:
在下面的界面中点击Add添加
操作好上图界面要写的内容然后点击左下角Add Resource
分别添加172.25.6.100 mysqldata mysqld
然后submit
mysql高可用数据存储就做好了
查看:
目前服务启用的节点为server1,我们用server1进入mysql查看数据库可以看待lost+found数据库
我们可以在网页luci界面将启用的节点还为server4
在上图中的Runnin on server1后面的可选项中选择server4,然后点击有上角第一个蓝色圆圈即可
server4节点启用成功
我们可以在server1或者server4中查看:
更改文件系统:
1、在server4中停用mysql高可用
clusvcadm -d mysql
进入到下图界面:
在上图中往下拉找到filesystem,然后点击remove删除
remove后点击最下面的submit提交
然后进入下图界面:
删除所选内容
在server1中挂载lvm到mysql
拉伸lvm到8G
在server4中用vgs查看,lvm也变为8G
在server1中对lvm做热拉伸
在server1中用df -h查看lvm大小,已经变为8G
首先我们用的是ext4文件系统进行格式化,ext4是本地文件系统,所以存储的同步的文件显示需要另一台进行卸载再挂载的操作
gfs2(global file system 2):集群文件系统,可以让多个节点同时使用同一个文件系统,当一个节点使用时会借助DLM机制通过lock_dlm进行加锁,并通知给其他节点持有的锁信息
GFS是RHCS为集群系统提供的一个存储解决方案,它允许集群多个节点在块级别上共享存储,每个节点通过共享一个存储空间,保证了访问数据的 一致性,更切实的说,GFS是RHCS提供的一个集群文件系统,多个节点同时挂载一个文件系统分区,而文件系统数据不受破坏,这是单一的文件系统,例如 EXT3、 EXT2所不能做到的。
改变lvm文件系统为集群g2fs文件系统
在server1中执行:
lvremove /dev/clustervg/demo
在server4中lvs查看
在server1中再创建一个lv
lvcreate -L 4G -n demo clustervg
在server1中执行:
mkfs.gfs2 -j 3 -p lock_dlm -t westos_ha:mygfs2 /dev/clustervg/demo
在server1中:
在server1中打开mysqld:
/etc/init.d/mysqld start
在server4中:
在server1和server4中关闭mysqld
/etc/init.d/mysqld stop
在server1中编辑 /etc/fstab文件
vim /etc/fstab 写入:
在server1中测试挂载情况:
在server4中编辑/etc/fstab,内容和上一步在server1中的一样
将上面的操作都做好后,在server1中启用mysql高可用
在server1中执行:
clusvcadm -r mysql -m server4
查看:
测试:
在server1中:
在server4中直接进入/var/lib/mysql目录中,直接ls就可以看见passwd文件