MySQL+HEART+DRBD安装之DRBD安装配置

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: CentOS版本:CentOS release 5.5 (Final)系统磁盘:/dev/sda(系统安装要的swap和/目录)          /dev/sdb(用作drbd使用)两台主机:ip 10.
CentOS版本:CentOS release 5.5 (Final)
系统磁盘:/dev/sda(系统安装要的swap和/目录)
          /dev/sdb(用作drbd使用)

两台主机:ip 10.0.17.155
             10.0.17.156

第一步:定义host:

[root@mysql-n1 ~]# vi /etc/hosts
10.0.17.155     mysql-n1
10.0.17.156     mysql-n2

第二步:创建磁盘(前提有这样一块硬盘,由于我是在vm上面做的实验,所以多模拟出来了

一块硬盘,linux认盘,就是根据盘的个数,自己辨别,第一块就是sda,第二块就是sdb)


[root@mysql-n1 ~]# fdisk -l

Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *         262        5221    39841200   83  Linux
/dev/sda2               1         261     2096451   82  Linux swap / Solaris

Partition table entries are not in disk order

Disk /dev/sdb: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

[root@mysql-n1 ~]# fdisk /dev/sdb

依次输入:n-->p-->1 回车-->回车-->w完成


The number of cylinders for this disk is set to 2610.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p  
Partition number (1-4): 1
First cylinder (1-2610, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-2610, default 2610):
Using default value 2610

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@mysql-n1 ~]# fdisk -l

Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *         262        5221    39841200   83  Linux
/dev/sda2               1         261     2096451   82  Linux swap / Solaris

Partition table entries are not in disk order

Disk /dev/sdb: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        2610    20964793+  83  Linux


第三步:安装drbd
[root@mysql-n1 ~]# yum -y install kmod-drbd83 drbd83

第四步:配置drbd(我只配置/etc/drbd.conf),把配置好的scp到另一台服务器上
global { usage-count no; }
common { syncer { rate 200M; } }
resource r0 {
            protocol C;
            net {
                 cram-hmac-alg sha1;
                 shared-secret "MySQL_HA";
            }

            disk{
               on-io-error detach;
               fencing resource-only;
            }
            startup{
               wfc-timeout 120;
               degr-wfc-timeout 120;
            }
            on mysql-n1 {
                 device    /dev/drbd0;
                 disk      /dev/sdb1;
                 address   10.0.17.155:7898;
                 meta-disk  internal;
            }
            on mysql-n2 {
                 device    /dev/drbd0;
                 disk      /dev/sdb1;
                 address   10.0.17.156:7898;
                 meta-disk  internal;
            }
       }

第五步:DRBD创建元数据库信息:
[root@mysql-n1 ~]# drbdadm create-md all
Writing meta data...
initializing activity log
NOT initialized bitmap
New drbd meta data block successfully created.

[root@mysql-n2 ~]# drbdadm create-md all
Writing meta data...
initializing activity log
NOT initialized bitmap
New drbd meta data block successfully created.

第六步:启动DRBD
[root@mysql-n1 ~]# /etc/init.d/drbd start

第七步:设置primary节点&mkfs
[root@mysql-n1 ~]# drbdadm primary all(报错,执行下面操作)
0: State change failed: (-2) Need access to UpToDate data
Command 'drbdsetup 0 primary' terminated with exit code 17
[root@mysql-n1 ~]# drbdadm -- --overwrite-data-of-peer primary all

[root@mysql-n1 ~]# mkfs.ext3 /dev/drbd0


第八步:查看drbd的状态
[root@mysql-n1 ~]# cat /proc/drbd
version: 8.3.13 (api:88/proto:86-96)
GIT-hash: 83ca112086600faacab2f157bc5a9324f7bd7f77 build by

mockbuild@builder10.centos.org, 2012-05-07 11:56:36
 0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----
    ns:5043196 nr:0 dw:0 dr:5051264 al:0 bm:307 lo:1 pe:5 ua:64 ap:0 ep:1 wo:b

oos:15921556
        [===>................] sync'ed: 24.1% (15548/20472)M
        finish: 0:02:02 speed: 129,304 (126,064) K/sec

其中:ro是角色信息:Primary/Secondary(代表这个是主节点)
                    Secondary/Primary(代表这个是副节点)

      ds是磁盘状态:UpToDate/Inconsistent(正在同步,数据还没有一致)
                    UpToDate/UpToDate    (同步完成,数据一致)
      ns是网络传输的数据包:以K为字节
    
      dw是磁盘写操作
      dr是磁盘读操作
       
      
第九步:挂载DRBD分区到/data目录下
[root@mysql-n1 ~]# mkdir /data
[root@mysql-n1 ~]# mount /dev/drbd0 /data
[root@mysql-n1 ~]# df -h

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              37G  4.5G   31G  13% /
tmpfs                 502M     0  502M   0% /dev/shm
/dev/drbd0             20G  173M   19G   1% /data


注意:DRBD的英文全称就是Distributed Replicated Block Device(分布式块设备复制),
个人认为,说白了就是对/dev/sdb1的复制。而且Secondary节点的/dev/drbd0是不能进行挂
载的
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
4月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
25天前
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
115 4
MySQL源码编译安装
|
25天前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
149 4
MySQL二进制包安装
|
25天前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
250 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
25天前
|
关系型数据库 MySQL Linux
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
本文介绍了在openSUSE系统上通过SUSE资源库安装MySQL 8.0和8.4版本的完整步骤,包括配置国内镜像源、安装MySQL服务、启动并验证运行状态,以及修改初始密码等操作,适用于希望在SUSE系列系统中快速部署MySQL的用户。
129 3
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
|
22天前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
207 5
|
25天前
|
Ubuntu 关系型数据库 MySQL
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
本文详细介绍了在Ubuntu 24.04、22.04、20.04及Debian 12系统上,通过离线DEB包安装MySQL 8.0和8.4版本的完整步骤。涵盖下载地址、依赖处理、dpkg安装顺序、配置方法及服务启动验证,确保用户可顺利部署MySQL数据库。
255 0
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
|
25天前
|
运维 Ubuntu 关系型数据库
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
本文介绍了在Debian系列系统(如Ubuntu、Debian 11/12)中通过APT仓库安装MySQL 8.0和8.4版本的完整步骤,涵盖添加官方源、配置国内镜像、安装服务及初始化设置,并验证运行状态,适用于各类Linux运维场景。
287 0
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
|
25天前
|
Oracle 关系型数据库 MySQL
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
本文详细介绍在Rocky、CentOS、AlmaLinux、openEuler等主流Linux系统上,通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,涵盖下载、依赖处理、rpm/yum安装、服务启动、密码设置等关键环节,适用于多种企业级环境部署需求。
422 0
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
|
25天前
|
存储 关系型数据库 MySQL
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
MySQL是一款开源关系型数据库,高性能、易用、跨平台,支持多种存储引擎,广泛应用于Web开发、企业级应用等领域。本教程介绍其特点、架构及在主流Linux系统中的安装配置方法。
382 0
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)

推荐镜像

更多
下一篇
开通oss服务