Heartbeat(基于crm)+NFS+Mysql实现mysql的高可用 推荐 原创 a1040668467 2015-04-22 13:38:47 博主文章分类:linux ©著作权 文章标签 mysql heartbeat NFS 文章分类 数字化转型 ©著作权归作者所有:来自51CTO博客作者a1040668467的原创作品,请联系作者获取转载授权,否则将追究法律责任 1.环境准备角色IPVIP192.168.42.160(提供服务的地址)Mastereth0:192.168.42.163(本地管理IP)eth1:172.16.1.2/16(心跳线)Salveeth0:192.168.42.162(本地管理IP)eth1:172.16.1.3/16(心跳线)NFS192.168.42.1352.搭建NFS服务器1.)安装nfs#yuminstall rpcbind nfs-utils –y#servicerpcbind start#chkconfigrpcbind on#servicenfs start#chkconfignfs off #一定要关掉,HA集群中由heartbeat管理#mkdir/mydata #把/mydata目录用NFS共享出去 2.)创建mysql用户 #groupadd–g 3306 mysql #useradd–u 3306 –g 3306 –s /sbin/nologin –M mysql #mkdir/mydata/data #存放mysql数据 #chown –R mysql.mysql /mydata/data 3.)配置nfs服务 #vim/etc/exports /mydata 192.168.42.0/24(no_root_squash,rw) #exportfs–arv 4.)测试 mount–t nfs 192.168.42.135:/mydata /mnt #在其他机器测试是否能挂载成功3.安装mysql 1.)创建mysql用户 各个节点和NFS上存在mysql用户且id号必须保持一致 #groupadd –g 3306 mysql #useradd–u 3306 –g 3306 –s /sbin/nologin –M mysql # mkdir /mydata 2.)mysql安装及配置 #tar xf mysql-5.6.23-linux-glibc2.5-x86_64.tar–C /usr/local #cd /usr/local #ln –s mysql-5.6.23-linux-glibc2.5-x86_64mysql #chown –R root:mysql ./mysql/* #解压并修改目录权限 #mount 192.168.42.135:/mydata /mydata #cd /mysql #scripts/mysql_install_db –user=mysql–datadir=/mydata/data #ll /mydata/data #挂载NFS目录并初始化mysql,其他节点无需初始化mysql #cp support-files/my-default.cnf/etc/my.cnf 挂载nfs目录并测试mysql服务是否正常(各个节点) #mount –t nfs192.168.42.135:/mydata/data /mydata #service mysqld start #/usr/local/mysql/bin/mysql mysql> create databases mydb; #创建一个库进行测试 mysql> show global variableslike ‘%innodb%’: #查看innodb引擎设置是否生效 #service mysqld stop #umount /mydata 挂载nfs到另一节点看看刚才创建的库是否存在 Mysql设置密码 #mysqladm –u root –p password “新密码” Enter password: 【输入原来的密码】4. Heartbeat v2安装部署前的环境准备 1.) 主机名及hosts设置(heartbeat是通过主机名来通信的,所以必须规划好) Master: #hostname node1.pachira.cn #vim /etc/sysconfig/network HOSTNAME=node1.pachira.cn #vim /etc/hosts 127.0.0.1 localhost ::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6 192.168.42.163 node1.pachira.cn node1 192.168.42.162 node2.pachira.cn node2 Salve: 按同样的步骤设置主机名及解析。必须确保主机名与uname –n的结果是一样的。 最后在各自ping下node1、node2测试一下。 2.) 各节点间的ssh双机互信 node1: #ssh-keygen –t rsa –f./.ssh/id_rsa –P ‘’ #ssh-copy-id –i ./.ssh/id_rsa.pubroot@node2 node2: #ssh-keygen –t rsa –f ./ssh/id_rsa–P ‘’ #ssh-copy-id –i ./.ssh/id_rsa.pubroot@node1 3.) 各节点间的时间同步(很重要) node1: 配置成ntp server端 node2: #crontab –e */30 * * * * /sbin/ntpdate192.168.42.163 添加防火墙(这里默认是关闭的)与关闭SELinux node1,node2 #vim /etc/selinux/config SELINUX=disabled #setenforce 05. 安装与配置 1.) 安装heartbeat( node1: #yum install PyXML perl-MailTools –y #rpm –ivh libnet-1.1.6-7.el6.x86_64 #rpm -ivh heartbeat-2.1.4-12.el6.x86_64.rpm heartbeat-pils-2.1.4-12.el6.x86_64.rpm heartbeat-stonith-2.1.4-12.el6.x86_64.rpmheartbeat-gui-2.1.4-12.el6.x86_64.rpm 2.) 配置heartbeat 默认安装好的heartbeat没有配置文件,但是有样例文件 #cp/usr/share/doc/heartbeat-2.1.4/{authkeys,ha.cf} /etc/ha.d/ 这里只需要两个配置文件,ha.cf与authkeys #cd /etc/ha.d/ #chmod 600 authkeys 以下的ha.cf与authkeys是经过我删减后的,可以直接使用 #vim authkeys auth 1 1 md591961e19f5730f736d27c07ffbc093d1 #vim ha.cf #debugfile /var/log/ha-debug #logfile /var/log/heartbeat.log logfacility local0 keepalive 2 #发送心跳的间隔时间 #deadtime 30 #超出30秒未收到对方节点的心跳,则认为对方已经死亡 #warntime 10 #警告时间 #initdead 120 #网络启动时间 udpport 694 #bcast eth1 #广播的方式进行心跳监测,网卡根据生产环境设置 mcast eth1 225.0.100.10 694 1 0 #组播的方式进行心跳监测 auto_failback on node node1.pachira.com #设置集群中的节点,节点名必须与uname –n 一样 node node2.pachira.com ping 192.168.42.254 #ping集群外的其他节点,监测网络的连通性,可以设置网关 #ping_group group1 10.10.10.25410.10.10.253 #deadping 30 crm on #启用crm 复制以上2个配置文件到node2上 #scp authkeys ha.cfnode2:/etc/ha.d 3.) 启动heartbeat 说明:启动heartbeat之前确保heartbeat所管理的资源都是关闭状态,并关闭开机自启动 #service heartbeat start #ssh node2 “service heartbeatstart” node1 node2上用netstat –tunlp 检查下端口 4.) 配置heartbeat集群资源 需要配置的集群资源:VIP NFS Mysql #passwd hacluster #为客户端连入服务端进行配置的用户设置密码 #hb_gui & #启动heartbeat图形化的客户端程序,在window中可以用xmanager打开,也可以用VNC连接linux 桌面 定义资源粘性,定义一个大于0的数代表该资源更倾向于运行于当前所在的节点上。 把VIP Mysql NFS定义到一个资源组内(资源启动顺序 VIP NFS Mysql)创建资源组(按资源启动顺序创建) 添加VIP资源 添加NFS资源 添加mysql资源 启动 启动后 尝试让node1处于standby状态,查看资源的切换情况 模拟node1再次上线,查看情况 所有资源都运行于node2上 5.)添加资源的监控 Mysql(每60秒监测资源运行状况,如果发现资源不在,则尝试启动资源,如果30秒还未启动成功,则 资源切换到另外节点) 其他资源的监控均可参照mysql的配置。 6.)heartbeat默认启动与关闭资源的超时时间是20s,如果20s未启动成功与关闭成功,则会造成切换故障,有些资源启动与关闭的时间超过20s,这时候就需要单独配置资源的启动与关闭的超时时间了。 至此,此高可用方案部署完毕。 赞 收藏 评论 分享 举报 上一篇:unison+inotify实现文件实时双向同步部署步骤 下一篇:我的友情链接 提问和评论都可以,用心的回复会被更多人看到 评论 发布评论 全部评论 () 最热 最新 相关文章 使用Docker-Compose部署MySQL一主二从同步高可用MHA集群 (文章目录)?博主介绍?我是廖志伟,一名Java开发工程师、Java领域优质创作者、博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作者、产品软文专业写手、技术文章评审老师、问卷调查设计师、个人社区创始人、开源项目贡献者。?跑过十五公里、?徒步爬过衡山、?有过三个月减肥20斤的经历、是个喜欢躺平的狠人。?拥有多年一线研发和团队管理经验,研究过主流框架的底层源码( mysql docker 高可用keeplived、HAproxy HAproxy与Keepalived VRRP一、简介1.1 HAproxy HAProxy(High Availability Proxy)是一个高性能的开源负载均衡器和代理服务器,用于分发网络流量。它是一个免费的、快速的、可靠的解决方案,常用于提供高可用性、负载均衡和代理服务。HAProxy最初是为Linux系统设计的,但现在已经在多个平台上可用,包括各种Unix系统和Windows 服务器 Redis高可用哨兵 Redis sentinel实现redis高可用方案 redis Redis sentinel HeartBeat基于CRM使用NFS对MySQL高可用 HeartBeat基于CRM使用NFS对MySQL高可用这里的实验环境还是使用我们上一节的http://junwang.blog.51cto.com/5050337/1381361首先停止节点资源,然后删除NFS共享存储节点配置: # mkdir /mydata # vim /etc/e HeartBeat基于CRM使用NFS对 基于heartbeat v2 crm实现基于nfs的mysql高可用集群 前言因heartbeat v1内置的资源管理器haresource功能比较简单,且不支持图形化管理,所以heartbeat v2不再支持haresource,转而使用更加强大的资源管理器crm进行集群管理。本文将讲解如何基于heartbeat v2 crm实现基于nfs的mysql高可用集群。高可用实现实验拓扑实验环境node1:172.16.10.123 mariadb-5.5.36 CentO mysql crm heartbeat 高可用 heartbeat+crm+mysqld+nfs实现MySQL服务的高可用 heartbeat+crm+mysql+nfs实现MySQL服务的高可用 heartbeat+crm+mysql+ CentOS6.4 高可用集群之基于heartbeat(crm)和nfs的mysql高可用 CentOS6.4 高可用集群之基于heartbeat和nfs的高可用mysqlCentOS版本: CentOS release 6.4(Final) 2.6.32-358.el6.i686效果演示: 使用ssh连接(nod-1.magedu.com)192.168.3.7 并执行以下命令:& Mysql CRM HeartBeat NFS Cluster heartbeat mysql nfs 高可用mysql集群 一 环境准备 二 拓扑结构 三 安装heartbeat 四 配置NFS服务 五 安装mysql 六 crm 配置资源 一 环境准备 操作系统 centos 6.4 x86_64 最小化安装 如使用yum 安装的方式 centos5.5 安装的是V2.X ,centos 6.4 安装 mysql 操作系统 资源 corosync+heartbeat+mysql+nfs实现mysql高可用 corosync+heartbeat+mysql+nfs实现mysql高可用 简单介绍随着互联网络应用的发展,大规模海量级数据存储对于一个企业越来越重要,组织机构依赖于数据库来运行各种重要的业务,几小时甚至几分钟的宕机,都会造成不可估量的损失, mysql heartbeat nfs 高可用 corosync Heartbeat+MySQL+NFS 实现高可用(HA)的MySQL集群 目录一、环境准备二、拓扑准备三、安装与配置heartbrat四、配置NFS服务五、安装与配置mysql六、crm配置资源一、环境准备1.操作系统redhat 5.4 i386 位系统2.软件环境mysql-5.5.20 heartbeat-2.1.4-11.el5.i386.rpmheartbeat-pils-2.1.4-11.el5.i386.rpm heartbeat- heartbeat NFS mysql corosync+heartbeat+mysql+nfs实现mysql高可用 简单介绍随着互联网络应用的发展,大规模海量级数据存储对于一个企业越来越重要,组织机构依赖于数据库来运行各种重要的业务,几小时甚至几分钟的宕机,都会造成不可估量的损失,因此保证数据库的高可用是所有组织机构优先考虑的事情,对于想要在竞争中立于不败之地的企业来说,构建高可用的数据存储至关重要。这里提供了一种在中小型企业应用中数据库搭建的廉价解决方案,在不购买高额的高性能的服务器前提下,利用现有的资源,进 服务器 IP地址 数据库 解决方案 互联网络 heartbeat+mysql+nfs 高可用mysql集群 一、 mysql 集群 DRDB+NFS(MySQL)+Heartbeat高可用! DRDB+NFS(MySQL)+Heartbeat高可用! DRDB+NFS(MySQL)+Hear 基于NFS和heartbeat v2的MySQL高可用 环境:RHEL6.4 ,heartbeat软体版本2.1.4,默认情况下,RHEL6只提供heartbeat-V3,heartbeatV2在RHEL5的epel源中配置HA集群的前提:至少2个节点;共享存储(可选);Stonith设备;时间同步;各个节点以主机名通信;至少配置好一个节点,提供基本的集群配置文件,可以没有资源;ssh互信;定义心跳信息传递方式,ServerA:172.16.1.1Se 高可用 Mysql 高可用集群之heartbeat v2--基于CRM实现mysql高可用集群(未完) 实验说明: 本实验基于heartbeat的crm,实现对mysql服务的高可用,并没有高可用mysql的数据。未完部分:使用hb_gui配置挂载nfs时,指定挂载选项,失败。 mysql数据和配置文件放在nfs共享存储上 mysql配置文件使用--default-extra-file指定 &nbs mysql crm heartbeat CentOS 6.4 Heartbeat+mysql+nfs实现高可用的mysql集群 一、Heartbeat网络架构二、准备工作1、操作系统CentOS 6.4 X86-64 最小化安装由于用源码编译安装heartbeat一直没有通过,所以没办法只能采用yum安装。heartbeat v3这里需要强调的就是博文中:# 表示是在node1、node2上都要执行的命令而[root@node1 ~]# 表 mysql heartbeat nfs 搭建基于Heartbeat v2+NFS的高可用MySQL集群 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.202、搭建NFS服务器<1> 建立LVM逻辑卷# fdisk /dev/sdan --> crm NFS 高可用 MySQL集群 DRDB之NFS+MySQL+Heartbeat高可用 DRDB安装配置详解+NFS(MySQL)+Heartbeat高可用实例配置 详解 安装配置 DRDB heartbeat V2实现MySQL+NFS高可用 heartbeatV2实现MySQL+NFS高可用 实验前准备 &n 高可用 heartbeatV2 MySQL+NFS mysql高可用方案之HeartBeat+nfs 环境规划:node1 192.168.1.105 10.10.10.1node2 192.168.1.106 10.10.10.2集群软件:heartbeat-3.0.4数据库:mysql-5.7.4二进制包mysql dba技术群 378190849武汉-linux运维群 236415619 1.节点上的网络配置nod mysql 高可用方案 HeartBeat+nfs