设为首页 收藏本站
查看: 857|回复: 0

[经验分享] 搭建基于Heartbeat v2+NFS的高可用MySQL集群

[复制链接]

尚未签到

发表于 2019-1-7 11:04:49 | 显示全部楼层 |阅读模式
  1、实验环境

  HA1:192.168.1.17(RHEL5.8_32bit,web server)
  HA2:192.168.1.18(RHEL5.8_32bit,web server)
  NFS:192.168.1.19(RHEL5.8_32bit,nfs server)
  VIP:192.168.1.20
  

  2、搭建NFS服务器
   建立LVM逻辑卷
# fdisk /dev/sda
n --> e --> n --> +8G --> t --> 5 --> 8e --> w
# partprobe /dev/sda
# pvcreate /dev/sda5
# vgcreate myvg /dev/sda5
# lvcreate -L 5G -n mydata myvg
# lvs
# mke2fs -j /dev/myvg/mydata
# mkdir /mydata
# vim /etc/fstab
/dev/myvg/mydata        /mydata                 ext3    defaults        0 0
# mount -a   创建MySQL账户

# groupadd -g 3306 mysql
# useradd -u 3306 -g mysql -s /sbin/nologin -M mysql
# mkdir /mydata/data
# chown -R mysql.mysql /mydata/data   配置NFS服务
# vim /etc/exports
/mydata         192.168.1.17(no_root_squash,rw) 192.168.1.18(no_root_squash,rw)
# exportfs -arv  

  3、创建MySQL账户(各个节点)
  各个节点和NFS上存在mysql账号且id号必须保持一致
# groupadd -g 3306 mysql
# useradd -u 3306 -g 3306 -s /sbin/nologin -M mysql
# mkdir /mydata  

  4、挂载NFS目录并测试是否可写(各个节点)
# mount 192.168.1.19:/mydata /mydata
# ll /mydata
# usermod -s /bin/bash mysql
# su - mysql
$ cd /mydata/data
$ touch a
$ ls
$ rm a
$ exit
# usermod -s /sbin/nologin mysql
# umount /mydata  

  5、通用二进制安装并配置MySQL服务(各个节点)
   解压包并修改目录权限
# tar xf mysql-5.5.28-linux2.6-i686.tar.gz -C /usr/local
# cd /usr/local
# ln -sv mysql-5.5.28-linux2.6-i686 mysql
# cd mysql
# chown -R root:mysql ./*   挂载NFS目录并初始化MySQL
  MySQL初始化时使用root账号执行,NFS服务需配置no_root_squash,但是安全性缺乏保证,因此尽量配置指定各个节点地址共享
  HA1:(其他节点上无需做初始化MySQL,即此步骤省略)
# mount 192.168.1.19:/mydata /mydata
# scripts/mysql_install_db --user=mysql --datadir=/mydata/data/
# ll /mydata/data/   修改配置文件
# cp support-files/my-large.cnf /etc/my.cnf
# vim /etc/my.cnf
[mysqld]
datadir = /mydata/data
innodb_file_per_table = 1   添加启动脚本(关闭自启动)
# cp support-files/mysql.server /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig mysqld off  

  6、挂载NFS目录并测试MySQL服务是否正常(各个节点)
# mount 192.168.1.19:/mydata /mydata
# service mysqld start
# /usr/local/mysql/bin/mysql
mysql> create database mydb;
mysql> show databases;
mysql> show global variables like '%innodb%';
# service mysqld stop
# umount /mydata  

  7、启动Heartbeat v2服务并使用crm配置资源
  HA1:
# service heartbeat start
# ssh node2 'service heartbeat start'
# crm_mon(查看哪个主节点)
# hb_gui &  crm配置资源组:(资源启动顺序:vip, mysqlstore, mysqld)

  


  


  

  8、使用mysql客户端测试
   主节点上配置远程访问的mysql账号
# /usr/local/mysql/bin/mysql
mysql> grant all on *.* to root@'%' identified by 'redhat';
mysql> flush privileges;   客户端登陆测试
# mysql -uroot -h192.168.1.20 -p
mysql> show databases;
mysql> use mydb;
mysql> create table test (id int unsigned not null auto_increment primary key,name char(20));   将主节点standby而后客户端登陆测试
# mysql -uroot -h192.168.1.20 -p
mysql> show tables;
mysql> desc test;  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-660286-1-1.html 上篇帖子: linux高可用之heartbeat_v1安装与配置 下篇帖子: heartbeat+drbd+mysql:实现最廉价的高可用组合
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表