分别基于NFS服务和DRBD服务利用Corosync配置高可用(4)

在nfs服务器上配置导出文件

123 # vim /etc/exports
/mysqldata 172.16.0.0/16(rw,no_root_squash)
no_root_squash  不压缩root权限

注意要创建该目录
1 # mkdir /mysqldata

重新导出文件
1 # exportfs -arv

-a 操作所有文件系统

-r 重新导出

-v 详细信息

Nfs服务器需要开机自动启动,因为它并不参与集群,只是提供共享文件,不需要心跳链接来管理。

在三个节点上分别创建mysql用户,使得它们拥有同样的id号,以便能够实现id映射,让三台服务器都对mysql都有操作权限。
1 # useradd -u 306 -r mysql--------三个节点进行同样操作

在两个节点安装mysql的通用二进制包

详细请看相关阅读:

Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置

CentOS 5.9下编译安装LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12)

RedHat 5.4下Web服务器架构之源码构建LAMP环境及应用PHPWind

LAMP源码环境搭建WEB服务器Linux+Apache+MySQL+PHP

数据文件,先不要初始化,只创建/mydata目录,之前的过程请看链接中的步骤。

创建目录/mydata,作为数据目录的挂载点,如果原先该目录下已经有文件,将之全部删除,这种方案因该是针对mysql通用二进制包有效,因为它可以初始化数据文件。
1 # mkdir /mydata

挂载nfs文件到一个节点,创建data目录,修改data权限并初始化mysql

注意:只需要初始化一次就行了,千万不要再去另一个 节点初始化一次了。

# mount 172.16.5.100:/mysqldata /mydata
# cd /mydata
# mkdir data
# chown -R mysql.mysql data
# cd /usr/local/mysql
# scripts/mysql_install_db --user=mysql --datadir=/mydata/data
# cd /mydata/data
# chown -R mysql.mysql *

注意:编辑/etc/my.cnf的时候,数据目录一定要写对datadir=/mydata/data,与上边配置的相同即可。

停止mysqld服务,卸载/mydata,将mysql服务设置为开机默认关闭,因为都要受集群的管理。

继着上面配置的corosync集群往下配置,ip资源不需要了,在配置mysqld资源和nfs资源就ok了

定义nfs资源

# crm configure primitive mystore ocf:heartbeat:Filesystem params
device="172.16.5.100:/mysqldata" directory="/mydata" fstype="nfs" op monitor interval=20 timeout=20 on-fail="fence"

定义mysqld资源

# crm configure primitive myserver lsb:mysqld

定义约束


# crm configure colocation myserver-with-mystore inf: myserver mystore两个在一起
# crm configure order mystore-before-myserver mandatory: mystore myserver先后
# crm configure location prefer-node1 mystore500:

跟上边配置的ip资源在同一个节点,就能使的所有资源都在同一个节点了。500要与上边配置的webip定义的位置约束是相同的分数,不然集群会自动实现负载均衡,将它们分到不同的节点。高可用所有的资源都是运行在同一个节点上的,这一点必须明确。


查看运行状态

# crm status
Last updated: Fri Sep 20 10:50:16 2013
Last change: Fri Sep 20 10:49:29 2013 via cibadmin on
Stack: classic openais (with plugin)
Current DC: - partition with quorum
Version: 1.1.8-7.el6-394e906
2 Nodes configured, 2 expected votes
4 Resources configured.
Online: [ ]
 webip(ocf::heartbeat:IPaddr):Started
 webserver(lsb:httpd):Started
 mystore(ocf::heartbeat:Filesystem):Started
 myserver(lsb:mysqld):Started

我们可以再接着模拟一个节点挂掉|停掉,看资源是否转移,这里就不做演示了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/00293034d1571c518add125b2f610a76.html