要编写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)
有没有办法获得可用的设备大小?
根据您的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
我的麻烦是在设备真正可用之前尝试使用/dev/drbd0
,也就是当drbdadm cstate data
确认它处于Connected
或SyncSource
状态时。
顺便说一句,准备就绪时, blockdev
操作可用于/dev/drbd0
,或者可以直接从/sys/block/drbd0/size
查询/sys/block/drbd0/size