使用Heartbeat V1实现nfs作为共享存储的高可用
2014-03-08 20:36
696 查看
高可用主要分为三个层次:
1. 底层信息层,实现方式:
heartbeat
corosync
cman
2. 资源管理层,实现方式:
heartbeat-V1:haresource
heartbeat-V2:crm
heartbeat-V3: pacemaker
RHCS:rgmanager
注:资源管理器pacemaker,可与所有底层通信的实现方式结合使用。
3. 资源代理层,实现方式:
heartbeat-v1
LSB
OCF
STONITH
实现高可用,需要配置的内容:
1. 资源:
primitive(或native):主资源,所有其他资源的基础,也就是说要配置其他类型的资源,首先 要先有主资源。
group:组资源
ms :主从资源
clone : 克隆资源
2. 约束:
location :位置约束,针对节点而言。
colocation :排列约束,针对资源而言。
order :顺序约束,针对启动顺序而言。
3. 若是两个(偶数)节点,还需配置ping node或quorum disk。
环境:
系统:CentOS 6.5
高可用节点:node1 :192.168.0.11
node2 :192.168.0.12
共享存储节点:node3 :192.168.0.13
heartbeat配置文件:
配置文件路径:/etc/ha.d/
配置文件:1. authkeys(V1、V2、V3) :用来配置集群节点之间的认证方法。
2. ha.cf(V1、V2、V3) :主配置文件。
3. haresource(V1) :用来配置和管理集群资源的。
/var/lib/heartbeat/crm/cib.xml(V2)
注:以上三个配置文件需要从/usr/shared/doc/heartbeat-2.1.4/目录中拷贝到配置文件路径下。
一、在node3上,配置共享存储
1、建立共享目录
mkdir /mysqldata
2、导出共享目录,配置/etc/exports如下:
/mysqldata192.168.0.0/24(rw,no_root_squash)
3、启动nfs服务
service nfs start
4、创建mysql用户
useradd -r -u 306 mysql
注:此用户用于在node1和node2节点的mysql用户可以进行写操作。
二、node1和node2 配置如下
heartbeat V1:
步骤:
1. 配置authkeys,如下:
auth 2# 指定使用哪种认证方法,认证方法有三种crc、sha1、md5. 数字2表示使用第二种方法。2 sha1 51aefbc42e9976fe #后面的一字符串是一串随机数,用其作为认证信息。
2. 修改authkeys,权限为600
chmod 600 authkeys
3. 修改过ha.cf,以下几项:
logfile /var/log/ha-log
keepalive 1 #用来设置发送心跳信息的时间间隔
deadtime 30#用来设置多长时间没有收到心跳信息,主机就被认为死亡。
warntime 10#用来设置多长时间没有收到心跳信息,就发出告警。
initdead 120#因为有时机器重启后或刚启动后,网络启动可能会延迟,所以时间要长一些。
mcast eth0 225.10.10.100 694 1 0 #用来定义组播地址,和发送心跳信息的端口等。
auto_failback on
node node1
node node2
ping 192.168.0.200
compression bz2
compression_threshold 2
4. 配置haresource,如下:
node1 192.168.0.100/24/eth0 Filesystem::192.168.0.13:/mysqldata::/mydata::nfs mysqld
5. 添加mysql用户
useradd -r -u 306 mysql
6. 安装和配置mysql
1. tar xf mysql-5.5.33-linux2.6-x86_64.tar.gz -C /usr/local/
2. cd /usr/local/
3. ln -sv mysql-5.5.33-linux2.6-x86_64 mysql
4. cd mysql
5. chown -R root.mysql .
6. mkdir /mydata
7. mount -t nfs 192.168.0.13:/mysqldata /mydata
8. mkdir /mydata/data
9. chown -R mysql.mysql /mydata/data
10. ./scripts/mysql_install_db --user=mysql --datadir=/mydata/data
12. cp support-files/my-huge.cnf /etc/my.cnf
13. cp support-files/mysql.server /etc/rc.d/init.d/mysqld
14. 修改/etc/my.cnf,在【mysqld】区域添加如下两项:
datadir=/mydata/data
innodb_file_per_table=1
15. chkconfig mysqld off
16. service mysqld start
17. 进入mysql,添加测试账号
GRANT ALL ON test.* TO 'root'@'%' IDENTIFIED BY '123';
三、测试
1. 在node3上,使用mysql连接
mysql -uroot -p123 -h 192.168.0.100
2. 在库test中,创建一个表进行测试
CREATE TABLE mytest(id int);
3. 使用hb_standby脚本将node1转为备节点
/usr/lib64/heartbeat/hb_standby
4. 再次查看是否有表mytest
注:heartbeat V1无法实现对资源的监控,需要借助第三方软件。
本文出自 “一切皆有可能” 博客,请务必保留此出处http://noican.blog.51cto.com/4081966/1370839
1. 底层信息层,实现方式:
heartbeat
corosync
cman
2. 资源管理层,实现方式:
heartbeat-V1:haresource
heartbeat-V2:crm
heartbeat-V3: pacemaker
RHCS:rgmanager
注:资源管理器pacemaker,可与所有底层通信的实现方式结合使用。
3. 资源代理层,实现方式:
heartbeat-v1
LSB
OCF
STONITH
实现高可用,需要配置的内容:
1. 资源:
primitive(或native):主资源,所有其他资源的基础,也就是说要配置其他类型的资源,首先 要先有主资源。
group:组资源
ms :主从资源
clone : 克隆资源
2. 约束:
location :位置约束,针对节点而言。
colocation :排列约束,针对资源而言。
order :顺序约束,针对启动顺序而言。
3. 若是两个(偶数)节点,还需配置ping node或quorum disk。
环境:
系统:CentOS 6.5
高可用节点:node1 :192.168.0.11
node2 :192.168.0.12
共享存储节点:node3 :192.168.0.13
heartbeat配置文件:
配置文件路径:/etc/ha.d/
配置文件:1. authkeys(V1、V2、V3) :用来配置集群节点之间的认证方法。
2. ha.cf(V1、V2、V3) :主配置文件。
3. haresource(V1) :用来配置和管理集群资源的。
/var/lib/heartbeat/crm/cib.xml(V2)
注:以上三个配置文件需要从/usr/shared/doc/heartbeat-2.1.4/目录中拷贝到配置文件路径下。
一、在node3上,配置共享存储
1、建立共享目录
mkdir /mysqldata
2、导出共享目录,配置/etc/exports如下:
/mysqldata192.168.0.0/24(rw,no_root_squash)
3、启动nfs服务
service nfs start
4、创建mysql用户
useradd -r -u 306 mysql
注:此用户用于在node1和node2节点的mysql用户可以进行写操作。
二、node1和node2 配置如下
heartbeat V1:
步骤:
1. 配置authkeys,如下:
auth 2# 指定使用哪种认证方法,认证方法有三种crc、sha1、md5. 数字2表示使用第二种方法。2 sha1 51aefbc42e9976fe #后面的一字符串是一串随机数,用其作为认证信息。
2. 修改authkeys,权限为600
chmod 600 authkeys
3. 修改过ha.cf,以下几项:
logfile /var/log/ha-log
keepalive 1 #用来设置发送心跳信息的时间间隔
deadtime 30#用来设置多长时间没有收到心跳信息,主机就被认为死亡。
warntime 10#用来设置多长时间没有收到心跳信息,就发出告警。
initdead 120#因为有时机器重启后或刚启动后,网络启动可能会延迟,所以时间要长一些。
mcast eth0 225.10.10.100 694 1 0 #用来定义组播地址,和发送心跳信息的端口等。
auto_failback on
node node1
node node2
ping 192.168.0.200
compression bz2
compression_threshold 2
4. 配置haresource,如下:
node1 192.168.0.100/24/eth0 Filesystem::192.168.0.13:/mysqldata::/mydata::nfs mysqld
5. 添加mysql用户
useradd -r -u 306 mysql
6. 安装和配置mysql
1. tar xf mysql-5.5.33-linux2.6-x86_64.tar.gz -C /usr/local/
2. cd /usr/local/
3. ln -sv mysql-5.5.33-linux2.6-x86_64 mysql
4. cd mysql
5. chown -R root.mysql .
6. mkdir /mydata
7. mount -t nfs 192.168.0.13:/mysqldata /mydata
8. mkdir /mydata/data
9. chown -R mysql.mysql /mydata/data
10. ./scripts/mysql_install_db --user=mysql --datadir=/mydata/data
12. cp support-files/my-huge.cnf /etc/my.cnf
13. cp support-files/mysql.server /etc/rc.d/init.d/mysqld
14. 修改/etc/my.cnf,在【mysqld】区域添加如下两项:
datadir=/mydata/data
innodb_file_per_table=1
15. chkconfig mysqld off
16. service mysqld start
17. 进入mysql,添加测试账号
GRANT ALL ON test.* TO 'root'@'%' IDENTIFIED BY '123';
三、测试
1. 在node3上,使用mysql连接
mysql -uroot -p123 -h 192.168.0.100
2. 在库test中,创建一个表进行测试
CREATE TABLE mytest(id int);
3. 使用hb_standby脚本将node1转为备节点
/usr/lib64/heartbeat/hb_standby
4. 再次查看是否有表mytest
注:heartbeat V1无法实现对资源的监控,需要借助第三方软件。
本文出自 “一切皆有可能” 博客,请务必保留此出处http://noican.blog.51cto.com/4081966/1370839
相关文章推荐
- 使用Heartbeat V1和V2 实现nfs作为共享存储的高可用
- corosync与pacemaker实现nfs作为共享存储的Mysql高可用!
- Ubuntu 12.04.3 X64 使用 NFS 作为文件共享存储方式 安装 Oracle11g RAC
- 成功安装Oracle 11gR2 for Linux RAC,使用NFS作为共享存储
- Kubernetes 1.11.2使用NFS作为共享存储
- Corosync与Pacemaker实现nfs作为共享存储的MySQL高可用
- 漫漫运维路——使用NFS构建出共享存储的LAMP平台,实现Wordpress论坛的数据同步 推荐
- openfiler作为文件服务器,windows、linux挂载NFS实现共享,以及windows、linux实现SMB/CIFS
- openfiler作为文件server,实现ISCSI共享存储
- [Linux] - centos使用mount + nfs 远程共享存储
- MySQL共享存储主备模式利用Keepalived实现双机高可用
- Ubuntu下使用ISCSI+OCFS2实现网络存储及文件共享
- 【云计算】使用docker搭建nfs实现容器间共享文件
- Oracle10g RAC的安装(使用NFS代替共享存储)
- openstack cinder+drbd+nfs实现高可用存储【kilo版】
- 使用docker搭建nfs实现容器间共享文件
- UBUNTU下如何使用NFS实现文件夹共享
- 关于使用openfiler作为共享存储来安装rac时的问题
- NFS共享MySQL使用DNS轮询实现Web负载均衡
- openfiler作为文件服务器,实现ISCSI共享存储