阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

DRBD 的日常管理

107次阅读
没有评论

共计 4800 个字符,预计需要花费 12 分钟才能阅读完成。

DRBD 是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案。DRBD 是由内核模块和相关脚本而构成,用以构建高可用性的集群。对于在高可用集群的环境里,尽管 DRBD 磁盘资源被作为一种集群服务由集群管理组件接管,但对于 DRBD 的常用命令的掌握还是非常有必要的。本文描述了一些常用的 DRBD 日常管理命令,供大家参考。

有关 DRBD 的相关知识,可以参考:
DRBD 原理及特性概述 http://www.linuxidc.com/Linux/2015-11/124759.htm
快速安装及部署 DRBD  http://www.linuxidc.com/Linux/2015-11/124760.htm

一、DRBD 用户空间管理工具
drbdadm:
    高层的 DRBD 程序管理套件工具。它从配置文件 /etc/drbd.conf 中获取所有配
    置参数。drbdadm 为 drbdsetup 和 drbdeta 两个命令充当程序的前端应用,执行 drbdadm
    实际是执行的 drbdsetup 和 drbdeta 两个命令。
drbdsetup:
    drbdsetup 可以让用户配置已经加载在内核中运行的 DRBD 模块,它是底层
    的 DRBD 程序管理套件工具。使用该命令时,所有的配置参数都需要直接在命令行中定义,
    虽然命令和灵活,但是大大的降低了命令的简单易用性,因此很多的用户很少使用 debdsetup。
drbdmeta:
    drbdmeta 允许用户创建、转储、还原和修改 drbd 的原数据结构。这个命令也是用户极少用到。1
### 获取 drbdadm 帮助
# drbdadm

USAGE: drbdadm [OPTION…] [– DRBDSETUP-OPTION…] COMMAND {all|RESOURCE…}

OPTIONS:
 {–stacked|-S}  ### Author : Leshami
 {–dry-run|-d}  ### Blog  : http://www.linuxidc.com
 {–verbose|-v}
 {–config-file|-c} val
 {–config-to-test|-t} val
 {–drbdsetup|-s} val
 {–drbdmeta|-m} val
 {–drbd-proxy-ctl|-p} val
 {–sh-varname|-n} val
 {–force|-f}
 {–peer|-P} val
 {–version|-V}

COMMANDS:
 attach                            detach                           
 connect                            disconnect                       
 up                                down                             
 primary                            secondary                         
 invalidate                        invalidate-remote                 
 outdate                            resize                           
 syncer                            verify                           
 pause-sync                        resume-sync                       
 adjust                            wait-connect                     
 wait-con-int                      role                             
 cstate                            dstate                           
 dump                              dump-xml                         
 create-md                          show-gi                           
 get-gi                            dump-md                           
 wipe-md                            hidden-commands           

### 查看连接状态
# drbdadm cstate all
Connected

### 查看资源角色
# drbdadm role all
Primary/Secondary

### 查看磁盘状态
# drbdadm dstate all
UpToDate/UpToDate

更多有关状态值,角色值等详细描述:
http://drbd.linbit.com/users-guide-8.4/

### 资源的启用
# drbdadm up <resource>

### 资源禁用
# drbdadm down <resource>

### 资源升级
# drbdadm primary <resource>

### 资源降级
# drbdadm secondary <resource>

二、DRBD 其他工具的使用
1、查看 drbd 服务
# service drbd status
drbd driver loaded OK; device status:
version: 8.3.15 (api:88/proto:86-97)
GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by root@orasrv1.xlk.com, 2015-10-31 10:58:13
m:res    cs        ro                ds                p  mounted  fstype
0:redisk  Connected  Primary/Secondary  UpToDate/UpToDate  C  /data    ext31
2、命令 drbd-overview
# /usr/local/drbd/sbin/drbd-overview
  0:redisk  Connected Primary/Secondary UpToDate/UpToDate C r—– /data ext3 1004M 18M 936M 2%1
3、/proc/drbd 文件查看
# cat /proc/drbd
version: 8.3.15 (api:88/proto:86-97)  ### 版本,下一行位编译信息
GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by root@orasrv1.xlk.com, 2015-10-31 10:58:13
 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r—–
    ns:56 nr:0 dw:56 dr:1181 al:3 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

设备号              状态                角色(当前 / 对等)              磁盘状态及协议,I/ O 状态
—–    ————–        ———————    —————————–
  0:    cs:Connected          ro:Primary/Secondary        ds:UpToDate/UpToDate C r—–

    I/ O 状态包括 6 种:
    1). I/O suspension,r 表示运行 I/O,s 表示 suspended I/O,正常情况下为 r
    2). Serial resynchronization 串行同步:当资源等待同步时却推迟了重新同步,这则个标志变成 A,正常情况为 –
    3). Peer-initiated sync suspension 对等节点发起的同步暂停:当资源正在等待重新同步时,对
        等节点因为一些原因发起暂停同步。这个标志变成 p。正常为 –
    4). Locally initiated sync suspension 本地发起的同步暂停:当资源等待重新同步时,在本地节
        点上用户发起同步暂停,这个标志变成 u。正常为 –
    5). Locally blocked I/O。正常为 -。可能会是一下标志:
        d:如因为一个短暂的磁盘状态导致的 drbd 内部出现 I/O 阻塞
        b:备用设备的 I/O 阻塞
        n:网络 socket 出现阻塞
        a:设备的 I/O 阻塞和网络阻塞的组合
    6). Activity Log update suspension 活动日志更新暂停:当活动日志更新暂停,这个标志变成 s。正常为 –

第二行为性能指标
ns:56  nr:0    dw:56  dr:1181 al:3    bm:0    lo:0    pe:0    ua:0    ap:0    ep:1    wo:f    oos:0 

    NS(network send 网络发送):net 数据以 kibyte 通过网络连接发送到对等节点   
    NR(network receive 网络接收):通过网络连接以 kibyte 接收 net 数据
    DW(disk write 磁盘写入):net 数据以 kibyte 写入本地磁盘
    DR(disk read 磁盘读取):net 数据以 kibyte 读取本地磁盘数据
    AL(activity log 活动日志):活动日志区的元数据更新
    BM(bit map 位图):位图区元数据更新
    LO(local count 本地计数):DRBD 请求的开放本地 I/O 子系统的数量
    PE(pengding 待定):发送到对等节点但是尚未节点对方回答的请求的数目
    UA(unacknowledged 未确认):通过网络连接接收到对等节点的请求,但是尚未得到回复
    AP(alllication pending 应用程序挂起):数据块 I/O 请求转发到 DRBD,但是 DRBD 尚未回答
    EP(epochs):一定数量的 epoch 对象,通常为 1,使用阻碍或者是没有排序写的方法时可能
    增加 I/O 负载。
    WO(write order 写入顺序)目前使用的写入顺序的方法:b(barrier 障碍)、(f flush 刷新)、d(drain
    漏) 或者是 n(none 无)
    OOS(out of sync):以 kububyte 同步当前存储

三、DRBD 主从角色切换
1、主服务器操作
卸载已经 mount 到主服务器的 drbd 磁盘
对于无法 umount 情形,可以使用 lsof |grepdrbd 方式查看哪些进程在使用 drbd 分区上的文件,将其关闭
    # umount /data
将 drbd 主服务角色切换为从服务器角色
    # drbdadm secondary redisk
2、从服务器操作
将 drbd 从服务角色提升为主服务器角色
    # drbdadm primary redisk
挂载 drbd 分区,-o noatime 参数将关闭因访问产生更新文件 atime 的操作,提供磁盘 I / O 性能
    # mount -o noatime /dev/drbd0 /data

Linux 高可用(HA)集群之 DRBD��解 http://www.linuxidc.com/Linux/2013-08/89035.htm

DRBD 中文应用指南 PDF http://www.linuxidc.com/Linux/2013-08/89034.htm

CentOS 6.3 下 DRBD 安装配置笔记 http://www.linuxidc.com/Linux/2013-06/85600.htm

基于 DRBD+Corosync 实现高可用 MySQL http://www.linuxidc.com/Linux/2013-05/84471.htm

CentOS 6.4 下 DRBD 安装配置 http://www.linuxidc.com/Linux/2013-09/90536.htm

DRBD 的详细介绍:请点这里
DRBD 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-11/125216.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计4800字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中