drbd

MySQL 同步复制及高可用方案总结

淺唱寂寞╮ 提交于 2020-04-10 16:26:23
1.前言 mysql作为应用程序的数据存储服务,要实现mysql数据库的高可用。必然要使用的技术就是数据库的复制,如果主节点出现故障可以手动的切换应用到从节点,这点相信运维同学都是知道,并且可以实现的。但是这种情况只是手动的切换,对可用性有要求的业务需要分别实现主库和从库的高可用,保障在数据库出现down机的情况下,可以自动实现数据库的故障转移,保障应用的可用性和用户体验。 本文将会对一些常用的数据库高可用方案进行介绍,根据你不同的场景,选择合适的高可用方案即可。 2.MMM高可用方案 2.1.Mysql-MMM介绍 MMM(Master-Master replication managerfor Mysql,Mysql主主复制管理器)是一套灵活的脚本程序,基于perl实现,用来对mysql replication进行监控和故障迁移,并能管理mysql Master-Master复制的配置(同一时间只有一个节点是可写的)。 2.2.组件 mmm_mond: 监控进程,负责所有的监控工作,决定和处理所有节点角色活动。此脚本需要在监管机上运行。 mmm_agentd: 运行在每个mysql服务器上的代理进程,完成监控的探针工作和执行简单的远端服务设置。此脚本需要在被监管机上运行。 mmm_control: 一个简单的脚本,提供管理mmm_mond进程的命令。 mysql

OpenStack中MySQL高可用配置

半城伤御伤魂 提交于 2020-03-13 05:48:34
   采用Heartbeat+DRBD+mysql高可用方案,配置两个节点的高可用集群 l 配置各节点互相解析 gb07 gb06 l 配置各节点时间同步 gb07 [root@gb07 ~]# ntpdate 10.10.102.7 gb06 [root@gb06 ~]# ntpdate 10.10.102.7 l 各节点关闭 SELinux 修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。 l Corosync 安装与配置 ( 两节点上都要安装配置 ) 安装Corosync gb07 [root@gb07 ~]# yum install -y corosync gb06 [root@gb06 ~]# yum install -y corosync .配置Corosync [root@gb07 ~]# cd /etc/corosync/ [root@gb07 corosync]# mv corosync.conf.example corosync.conf [root@gb07 corosync]# vim corosync.conf compatibility: whitetank totem { #心跳信息传递层 version: 2 #版本 secauth: on #认证信息 一般on threads: 0 #线程

drbd介绍及部署方法[陆续更新]

自古美人都是妖i 提交于 2020-03-11 17:06:24
部分转载感谢原作者,原文地址 https://www.cnblogs.com/NewStudy/p/7270390.html drbd版本drbd-9.0.21-1. drbd-utils版本 drbd-utils-9.7.1. Drbd 全称distributed replicated block device 基于块设备在不同高可用服务器对之间同步和镜像数据的软件,通过它可以实现在网络中的两台服务器之间基于块设备之前的 实时或异步镜像或同步复制,其实就是类似于rsync+inotify这种项目架构.只不过drbd是基于文件系统底层的,即block层级同步. 而rsync+inotify 是基于文件的同步,因为drbd效率更高,效果更好,增量方式 上面提到的块设备可以是 ,磁盘分区,LVM逻辑卷,或整块磁盘,即磁盘块的复制,相当于网络raid1功能 drbd三种同步协议 protocol A B C 协议A:异步同步模式 协议B:内存同步(半同步)复制 协议C:同步复制协议 协议C 用的最多 drbd生产应用模式 单主模式,主备模式,典型 复主模式:采用共享cluster文件系统,GFS OCFS2 drbd企业应用场景 高可用服务器之间的数据同步 heartbeat+drbd+nfs/mfs/gfs heartbeat+drbd+mysql/oracle 特点:主提供状态读写

Corosync+Pacemaker+DRBD+MySQL 实现高可用(HA)的MySQL集群

狂风中的少年 提交于 2020-03-04 07:23:44
大纲 一、前言 二、环境准备 三、Corosync 安装与配置 四、Pacemaker 安装与配置 五、DRBD 安装与配置 六、MySQL 安装与配置 七、crmsh 资源管理 推荐阅读: Linux 高可用(HA)集群基本概念详解 http://www.linuxidc.com/Linux/2013-08/88522.htm Linux 高可用(HA)集群之Heartbeat详解 http://www.linuxidc.com/Linux/2013-08/88521.htm 一、前言 前几篇博文中我们讲解了,heartbeat、corosync、pacemaker,也讲解了高可用的Web集群、高可用的Mysql集群,这一篇博文 进行小小的总结,heartbeat与corosync是流行的Messaging Layer (集群信息层),非要在这两个当中选一个我选择corosync,至于理由是仁者见仁,智者见智啦,用过的人都知道。Pacemaker是最流行的 CRM(集群资源管理器),是从heartbeat v3中独立出来的资源管理器,同时Corosync+Pacemaker是最流行的高可用集群的套件,前面我们讲解的高可用的Mysql集群是 heartbaet+mysql+nfs组合,其有点令人不满意的是得要三台服务器,其中一台为共享存储,可是这对于中小型公司来说

MySQL on Azure高可用性设计 DRBD - Corosync - Pacemaker - CRM (二)

半城伤御伤魂 提交于 2020-02-28 17:20:37
在上一篇文章中描述了MySQL HA on Azured 设计思路,本篇文章中将描述具体的部署,每个组件的安装和配置。 整体的设计架构如下: 下面将是所有组件的安装配置过程,所有的虚拟机是CentOS 6.5的操作系统。Azure上虚拟机的新建、Vnet的配置等本文就不再涉及。如有需要,请参考张磊同学的博客: http://www.cnblogs.com/threestone 配置Azure Internal Load Balance及添加硬盘 本文采用Xplate CLI部署Internal Load balancer,其地址为静态的10.1.1.200,Distribution模式采用sourceIP。 首先创建ILB: azure service internal-load-balancer add -a 10.1.1.200 -t Subnet-2 mysql-ha mysql-ha-ilb info: service internal-load-balancer add command OK 创建Endpoint和LoadBalanceSet azure vm endpoint create -n mysql -o tcp -t 3306 -r tcp -b mysql-ha-lbs -i mysql-ha-ilb -a sourceIP mysql-ha1 3306

DRBD 实现数据备份的高可用性

夙愿已清 提交于 2020-02-28 17:18:38
以下文章转载自 http://goplay.blog.51cto.com/3237944/664560 实验说明: 1、通过drbd提供数据的冗余备份功能 2、通过两台虚拟机模拟测试 实验配置 一、配置ip和主机名 1、配置ip #vim /etc/sysconfig/network-scripts/ifcfg-eth0 重启网络配置 #service network restart 查看 2、配置主机名 #vim /etc/hosts 使用hosts文件做dns地址解析 #vim /etc/sysconfig/network #hostname test1.a.org 测试配置结果 #uname –n test2.a.org 配置相同 二、ssh 配置 (为方便远程管理,以后不用每次都输密码) #ssh-keygen –t rsa #ssh-copy-id –i ~/.ssh/id_rsa.pub root@test2 三、分区 #fdisk /dev/sda #partprobe 重读分区表 四、安装DRBD软件 目前在用的drbd版本主要有8.0、8.2和8.3三个版本,其对应的rpm包的名字分别为drbd, drbd82和drbd83,对应的内核模块的名字分别为kmod-drbd, kmod-drbd82和kmod-drbd83。 各版本的功能和配置等略有差异

CentOS 6.5环境实现corosync+pacemaker实现DRBD高可用

时光怂恿深爱的人放手 提交于 2020-02-28 17:15:57
DRBD (Distributed Replicated Block Device)分布式复制块设备,它是 Linux 平台上的分散式储存系统,通常用于高可用性(high availability, HA)集群中。DRBD 类似磁盘阵列的RAID 1(镜像),只不过 RAID 1 一般配置在一台服务器内,而 DRBD 是通过网络。 DRBD Resource:DRBD所具有的几种属性: resource name:可以使用除空白字符外的任意ACSII表中的字符; drbd设备:drbd的设备的访问路径,设备文件/dev/drbd#; disk:各节点为组成此drbd设备所提供的块设备,通常是一个磁盘分区; 网络属性:节点间为了实现跨主机磁盘镜像而使用的网络配置; 注意:用户空间工具与drdb与内核中使用的模块版本要保持一致,只有在使用drbdadm工具时才会读取配置文件,对多个资源的公共配置,可以提取出来只配置一次,通常保存在Common中,此外还有global配置,这种配置跟资源本身没有关系的; drbd的组成部分:第一部分用户空间工具;第二部分是内核模块(在2.6.33及以后版本的内核直接在内核中就有了) 用户空间工具:跟内核版本关系比较松散,只要是能适用于CentOS 6及对应硬件平台的就OK; 内核模块:必须与当下内核版本严格对应

配置drbd高可用集群

不羁岁月 提交于 2020-02-28 15:14:54
前期准备: 同步时间 (两个节点) 节点一(172.16.21.6) [root@stu21 heartbeat2]# ntpdate 172.16.0.1 31 Dec 20:59:25 ntpdate[6950]: adjust time server 172.16.0.1 offset 0.379319 sec [root@stu21 heartbeat2]# 最好几分钟同步一下 [root@stu21 heartbeat2]# crontab -e no crontab for root - using an empty one */3 * * * * /usr/sbin/ntpdate 172.16.0.1 &> /dev/null ~ ~ 节点二:(172.16.21.10) [root@stu21 heartbeat2]# ntpdate 172.16.0.1 31 Dec 21:00:50 ntpdate[4737]: adjust time server 172.16.0.1 offset 0.380532 sec [root@stu21 heartbeat2]# 最好每个几分钟同步一下 [root@stu21 heartbeat2]# crontab -e no crontab for root - using an empty one */3 * * * *

drbd脑裂问题的解决

Deadly 提交于 2020-02-27 23:40:35
转载于: https://www.jianshu.com/p/90e8c61b4204 drbd脑裂问题的解决 DRBD产生脑裂的原因: (1. 采用HA环境的时候自动切换导致脑裂; (2. 人为操作或配置失误,导致产生的脑裂; (3. 经验有限,惭愧的很,只碰到以上2中产生脑裂的原因。 如何判断脑裂行为? (1. 其中一个节点的连接状态始终为 StandAlone (2. 其中一个节点的连接状态始终为 WFConnection [root@master1 ~]# service drbd status; #主节点状态 drbd driver loaded OK; device status: version: 8.3.15 (api:88/proto:86-97) GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by mockbuild@builder10.centos.org, 2 m:res cs ro ds p mounted fstype 1:data StandAlone Primary/Unknown UpToDate/DUnknown r----- ext3 #存在StandAlone [root@master2 ~]# /etc/init.d/drbd status #从节点状态 drbd