前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Heartbeat V1实现nfs作为共享存储的高可用

使用Heartbeat V1实现nfs作为共享存储的高可用

作者头像
星哥玩云
发布2022-06-30 19:09:23
3740
发布2022-06-30 19:09:23
举报
文章被收录于专栏:开源部署

高可用主要分为三个层次:

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无法实现对资源的监控,需要借助第三方软件。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档