上篇博客是基于apahce服务,这篇博客就是基于mysql服务,二者区别只是挂载目录不同,开启服务的脚本不同而已。
服务机(分享磁盘):
开机加上一块磁盘。
yum install scsi-* -y ##安装分享磁盘软件服务端
vim /etc/tgt/targets.conf ##编写配置文件,设置分享出去的磁盘
/etc/init.d/tgtd start ##开启磁盘服务
ps ax ##观察服务进程是否为两个,若不是,则会出错
tgt-admin -s ##检查服务是否开启成功
vim /etc/tgt/targets.conf ##第38-40行
<target iqn.2019-06.com.example:server.target1>
backing-store /dev/vda ##设置分享磁盘
</target>
主机1:
1.配置yum源
vim /etc/yum.repos.d/rhel-source.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.30.250/westos6
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[HighAvailability] ##高可用yum源
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.30.250/westos6/HighAvailability
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[LoadBalancer] ##负载均衡yum源
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.30.250/westos6/LoadBalancer
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[ResilientStorage]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.30.250/westos6/ResilientStorage
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[ScalableFileSystem]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.30.250/westos6/ScalableFileSystem
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
2.配置域名解析
172.25.30.101 server1
172.25.30.102 server2
172.25.30.103 server3
3.安装磁盘共享使用软件,以及配置高可用软件
yum install ricci luci -y ##安装界面管理软件luci,以及高可用软件ricci,
另一台主机上只需要安装ricci,不需要luci的管理界面##
/etc/init.d/ricci start ##开启两个服务,并设定开机自启
/etc/init.d/luci start
chkconfig luci on
chkconfig ricci on
passwd ricci ##修改ricci用户密码,用来用户登录
clustat ##查看服务机是否在线,以及服务状态
4.配置fence,实验是否功能完善
luci网页配置fence插件,两台服务机都添加。
复制虚拟机唯一标示,UUID,添加已经定义好的fence设置。两台服务机都添加。具体详细配置fence可以查看上一篇博客。
如果fence配置成功,那么在服务机上fence_node 另一台服务机,另一台服务机会自动重启。
5.使用分享磁盘的客户端
yum install iscsi-* -y ##安装分享磁盘的客户端
iscsiadm -m discovery -t st -p 172.25.30.103 ##搜索分享磁盘的服务端
iscsiadm -m node -l ##登陆连接分享磁盘
cat /proc/partitions ##查看是否连接成功
fdisk -l
fdisk -cu /dev/sdb ##在这块磁盘进行分区 ,修改磁盘状态
cat /proc/partitions ##刷新磁盘列表
pvcreate /dev/sdb1 ##创建分区/dev/adb1
pvs ##查看分区状况
vgcreate vg0 /dev/sdb1 ##在此分区上新建逻辑卷vg0
partprobe
cat /proc/partitions
vgs ##查看逻辑卷状态有多少
lvcreate -L 4G -n lv0 vg0 ##在逻辑卷上新加拓展分区lv0
lvs
partprobe
cat /proc/partitions
mkfs.ext4 /dev/vg0/lv0 ##使用文件管理软件格式化此胶卷
由于这个磁盘已被分享,所以对于磁盘操作不需要进行两次,在一台服务机上运行即可。
6.配置mydql服务
yum install mysql-server -y ##安装mysql
mount /dev/vg0/lv0 /var/lib/mysql/ ##将分享磁盘挂载到mysql服务目录下
ll /var/lib/mysql/ ##查看目录所属权限为root,但要使用应该是mysql
chown mysql.mysql /var/lib/mysql/ ##更改目录权限
7.在luci界面上配置服务
其实就是将资源添加之后,新建资源组,谁拿到资源组谁就可以挂载共享磁盘,打开服务,获得数据库中数据。
新建资源组,按照IP,文件管理器,服务的顺序加入资源组中。
8.配置成功,查看效果
证明在服务1上存在挂载,当新建数据库后,将服务停止,在服务2上发现挂载,并且登陆数据库可以看到在服务1新建的数据库,说明挂载与高可用都是成功的。