CentOS7 yum安装配置 drbd-84-utils (外部模式)
1 安装环境介绍
1.1 系统环境
内核:3.10.0-862.el7.x86_64
版本:CentOS Linux release 7.5.1804 (Core)
主服务器:hostname = mysql-master-01 心跳通信 IP = 172.16.1.50
从服务器:hostname = mysql-master-02 心跳通信 IP = 172.16.1.51
注意:以下操作主从同时执行
1.2 前期准备
关闭防火墙和selinux。
主从服务器的/etc/hosts一样,如下:
172.16.1.50 mysql-master-01
172.16.1.51 mysql-master-02
2 开始安装drbd-84-utils
2.1 yum源安装:
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
2.2 drbd 安装:
yum -y install drbd84-utils kmod-drbd84
2.3 让内核加载 drbd 模块
[root@mysql-master- ~/]# modprobe drbd
[root@mysql-master-01 ~/]# lsmod |grep drbd
drbd
libcrc32c xfs,drbd [root@mysql-master- ~/]# echo "modprobe drbd">>/etc/rc.local # 加入开机自启动
[root@mysql-master-01 ~/]# chmod +x /etc/rc.d/rc.local
3 创建配置文件 注意:主从配置完全一样
3.1 创建全局配置
[root@mysql-master-01 ~/]# mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.conf.bak
[root@mysql-master-01 ~/]# cat > /etc/drbd.d/global_common.conf <<-EOF
global {
usage-count no;
}
common {
net {
protocol C;
}
}
EOF
3.2 创建资源配置文件
[root@mysql-master-01 ~/]# cat > /etc/drbd.d/mysql_data.res <<-EOF
resource mysql_data {
disk /dev/sda4;
device /dev/drbd0;
meta-disk /dev/sda3[];
# meta-disk internal; # 内部模式
on mysql-master- {
address 172.16.1.50:;
}
on mysql-master- {
address 172.16.1.51:;
}
}
EOF
3.3 主从服务器都需要添加如下分区、如下操作: /dev/sda3 为 500M # 作为 create-md 这个分区一定不能用 mkfs 来格式化 /dev/sda4 为 2G # 数据
刚分完区要通知内核:partprobe /dev/sda
3.3.1 格式化:/dev/sda4
[root@mysql-master-01~/]# drbdadm up all && drbdadm -- --overwrite-data-of-peer primary all &&mkfs.xfs /dev/drbd0 或者 mkfs.xfs /dev/sda4 meta-data=/dev/sda4 isize=512 agcount=4, agsize=125120 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=500480, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
3.3.2 初始化设备元文件3.4 启动系统服务
drbdadm create-md mysql_data 或者 drbdadm create-md all
3.5 启动系统服务
[root@mysql-master-~/]#drbdadm up all
[root@mysql-master-~/]#systemctl start drbd
4 主节点操作
4.1 首次,数据不一致,主覆盖从令数据一致(自动设为主盘)
[root@mysql-master-01 ~/]# drbdadm -- --overwrite-data-of-peer primary mysql_data 或者 drbdadm -- --overwrite-data-of-peer primary all
或者强制设置为主:
[root@mysql-master-01 ~/]# drbdadm primary all --force 或者 drbdadm primary mysql_data --force
4.2 查看同步进程
4.2.1 刚开始同步
[root@mysql-master-/etc/drbd.d/]# cat /proc/drbd
version: 8.4.- (api:/proto:-)
GIT-hash: 66145a308421e9c124ec391a7848ac20203bb03c build by mockbuild@, -- ::
: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r-----
ns: nr: dw: dr: al: bm: lo: pe: ua: ap: ep: wo:f oos:
[==>.................] sync'ed: 16.6% (1673256/2001920)K
finish: :: speed: , (,) want: , K/sec
4.2.1 同步完成
[root@mysql-master-~/]# cat /proc/drbd
version: 8.4.- (api:/proto:-)
GIT-hash: 66145a308421e9c124ec391a7848ac20203bb03c build by mockbuild@, -- ::
: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r-----
ns: nr: dw: dr: al: bm: lo: pe: ua: ap: ep: wo:f oos:
提示:如果是 drbd90-utils 版本,显示结果是不一样的。
[root@store-nfs-~/]#cat /proc/drbd
version: 9.0.- (api:/proto:-)
GIT-hash: 62f906cf44ef02a30ce0c148fec223b40c51c533 build by mockbuild@, -- ::
Transports (api:): tcp (9.0.-)
4.3 同步完成就可以挂在,往里面写数据了
[root@mysql-master-~/]# mount /dev/drbd0 /mnt/
4.4 创建测试文件
touch /mnt/file{..}
ls -l /mnt
total
-rw-r--r--. root root Jun : file1
-rw-r--r--. root root Jun : file2
-rw-r--r--. root root Jun : file3
4.5 卸载文件系统并切换为备节点
umount /mnt
drbdadm secondary mysql_data
5 从节点操作
5.1 确认文件主节点的数据是否同步到从节点
drbdadm primary mysql_data
mount /dev/drbd0 /mnt
ls -l /mnt
total 0
-rw-r--r--. 1 root root 0 Jun 10 09:43 file1
-rw-r--r--. 1 root root 0 Jun 10 09:43 file2
-rw-r--r--. 1 root root 0 Jun 10 09:43 file3
注意:从节点不能提供访问
6 如果启用了防火墙需打开7788端口
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="ip_address" port port="7788" protocol="tcp" accept'
firewall-cmd --reload
到此配置完成!!!
CentOS7 yum安装配置 drbd-84-utils (外部模式)的更多相关文章
- centos7 yum安装配置redis 并设置密码
原文:https://www.cnblogs.com/fanlinglong/p/6635828.html centos7 yum安装配置redis 并设置密码 1.设置Redis的仓库地址 yum ...
- (转)centos7.0安装配置DRBD
原文:http://gushiren.blog.51cto.com/3392832/1685207 首先确保两台机器时间同步,配置ssh. 方法一通过yum源安装:yum安装默认路径是/etc/drb ...
- CentOS7 yum安装配置
一.安装必要包 yum install gcc 二.linux下安装 #下载 wget http://download.redis.io/releases/redis-3.0.0.tar.gz tar ...
- centos7 yum安装配置redis
1.设置Redis的仓库地址 yum install epel-release 2.安装redis yum install redis 修改配置文件,监听所有的IP地址 vim /etc/redis. ...
- CentOS7 yum安装配置 +redis主从配置
一.安装必要包 yum install gcc 二.linux下安装 #下载 wget http://download.redis.io/releases/redis-3.0.0.tar.gz tar ...
- CentOS7 yum 安装配置 MySQL 5.7
1.配置yum源 # 下载mysql源安装包 wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm # 安装 ...
- Centos7下安装配置Redsocks
Redsocks是一个开源的网络程序,代码依赖开源的libevent网络库.Redsocks允许你将所有TCP连接重定向到SOCKS或HTTPS代理,比如Shadowsocks(Centos7下安装配 ...
- centos7 yum安装MongoDB
centos7 yum安装MongoDB 原文博客地址http://xgs888.top/post/view?id=64 centos7 yum安装mongodb: 1:创建仓库 vi /etc/ ...
- CentOS7 yum 安装 Nginx最新版本
CentOS7 yum 安装 Nginx最新版本 下载对应当前系统版本的nginx包(package) # wget http://nginx.org/packages/centos/7/noarc ...
随机推荐
- C#工具类:Json操作帮助类(转载)
原文转载自C#工具类:Json操作帮助类_IT技术小趣屋. Json序列化和反序列化在程序开发中时常会遇到,在C#中可以使用很多种方法实现对数据的Json序列化和反序列化,封装一个Json操作工具类来 ...
- GridView更新后获取不到文本框修改后的值
需要在Page_Load事件里为gridview绑定数据时,添加回传判断 if (!IsPostBack) { 绑定数据 }
- JavaScript获取元素CSS计算后的样式
原文链接https://www.w3ctech.com/topic/40 我们在开发过程中,有时候需要根据元素已有样式来实现一些效果,那我们应该如何通过JavaScript来获取一个元素计算后的样式值 ...
- web安全类
web安全类主要分为两个部分:CSRF和XSS 一.CSRF 基本概念:CSRF,通常称为跨站请求伪造,英文名Cross-site request forgery 缩写为CSRF; 怎么防御 1.To ...
- 为什么比特币和以太坊未必真得比EOS更去中心化?
在区块链行业里,有两派人一直在争论:一个是以比特币和以太坊为首的社群,另一个是以EOS为首的社群.这两群人一直在争论谁才是真正的未来,双方都认为自己这边更有未来.其中EOS抗争的重点就是100万TPS ...
- 【转】从PowerDesigner概念设计模型(CDM)中的3种实体关系说起
PowerDesigner概念模型的relationship .inheritance. association 从PowerDesigner概念设计模型(CDM)中的3种实体关系说起
- python类特列方法使用
class Rgc(object): def __new__(cls, *args, **kwargs): print('在类通过__new__方法实例化一个对象') return super(Rgc ...
- Revit 模态框
非模态窗口有一个好处,就是可以一直停留在程序之前,然后持续完成操作.但是在Revit二次开发中,非模态窗口也有几个注意事项. 1.需要在文档关闭的时候,把非模态窗口也关闭掉,不然会导致文档关闭,窗口还 ...
- 如何用Fiddler手机抓包
截获智能手机发出的HTTP包有什么用? 用处一: 手机软件程序员利用Fiddler,可以截获手机发出的HTTP包, 从而调试程序: 用处二: 软件测试人员用于测试智能手机上的软件: 用处三: 可以用来 ...
- python-day12 MySQL、sqlalchemy
@第一节上周回顾没看 @博客day11 https://www.cnblogs.com/alex3714/articles/5950372.html @InnoDB,是MySQL的数据库引擎之一 @S ...