要编写 Ansible 脚本来设置 DRBD 设备和文件系统,我面临以下问题:
# blockdev --report /dev/drbd0
RO RA SSZ BSZ StartSec Size Device
blockdev: cannot open /dev/drbd0: Wrong medium type
我原本期望 DRBD 设备能够像任何 md 设备一样实现块设备操作。
我运行的是 Debian Linux Jessie/stable,其中包含软件包
drbd-utils 8.9.2~rc1-2+deb8 amd64 RAID 1 over TCP/IP for Linux (user utilities)
有没有什么办法可以获得可用的设备尺寸?
答案1
根据您的版本drbd utils
,您可以使用:
drbdsetup status /dev/drbd0 --verbose --statistics
它将返回如下内容:
home node-id:1 role:Secondary suspended:no
write-ordering:none
volume:0 minor:0 disk:UpToDate
size:1048412 read:0 written:1048412 al-writes:0 bm-writes:48 upper-pending:0 lower-pending:0 al-suspended:no blocked:no
nina local:ipv4:10.9.9.111:7001 peer:ipv4:10.9.9.103:7010 node-id:0 connection:Connected role:Secondary
congested:no
volume:0 replication:Connected disk:UpToDate resync-suspended:no
received:1048412 sent:0 out-of-sync:0 pending:0 unacked:0
nino local:ipv4:10.9.9.111:7021 peer:ipv4:10.9.9.129:7012 node-id:2 connection:Connected role:Secondary
congested:no
volume:0 replication:Connected disk:UpToDate resync-suspended:no
received:0 sent:0 out-of-sync:0 pending:0 unacked:0
nono local:ipv4:10.9.9.111:7013 peer:ipv4:10.9.9.138:7031 node-id:3 connection:WFConnection
答案2
/dev/drbd0
我的问题是在设备真正可用之前尝试使用,也就是drbdadm cstate data
确认它处于Connected
或SyncSource
状态时。
顺便说一下,准备就绪后,blockdev
即可进行操作/dev/drbd0
,或者可以直接从查询大小/sys/block/drbd0/size