随笔- 11  文章- 0  评论- 0  阅读- 1467 
文档参考:https://ubuntu.com/server/docs/distributed-replicated-block-device-drbd 
复制代码
#主从节点安装drbd
apt install drbd-utils
#编辑主从节点配置文件
vi /etc/drbd.d/global_common.conf
global { usage-count no; }
common { syncer { rate 100M; } }
resource r0 {
        protocol C;
        startup {
                wfc-timeout  15;
                degr-wfc-timeout 60;
        }
        net {
                cram-hmac-alg sha1;
                shared-secret "secret";
        }
        on node1 {
                device /dev/drbd0;
                disk /dev/sdd;
                address 192.168.1.10:7788;
                meta-disk internal;
        }
        on node2 {
                device /dev/drbd0;
                disk /dev/sdd;
                address 192.168.1.11:7788;
                meta-disk internal;
        }
}

#在主从节点上分别初始化元数据
drbdadm create-md r0
#在主从节点上启动drbd服务
systemctl start drbd.service
#在主节点上执行如下命令
drbdadm -- --overwrite-data-of-peer primary all
#监控drbd同步状态
watch -n1 cat /proc/drbd
#在drbd0上创建文件系统
mkfs.ext3 /dev/drbd0
#挂载文件系统
mount /dev/drbd0 /srv
#此时应用可以将/srv目录作为普通数据盘使用,当主节点(primary)连接丢失时,
#从节点(secondary)会自动变为primary节点,在keepalived脚本中添加挂载/dev/drbd0
#命令及重启使用/srv/目录的相应服务,可以实现主从切换

#脑裂恢复
#查看挂载状态,卸载drbd0
mount | grep /dev/drbd0
umount /dev/drbd0  #如果报错可以尝试:umount -l /dev/drbd0
#降级为secondary,由于脑裂时有两个primary,选择不需要保留数据的节点执行如下命令
drbdadm secondary r0
drbdadm -- --discard-my-data connect r0
#恢复连接
drbdadm connect r0
cat /proc/drbd
#集群状态变为Connected则说明集群已经恢复到正常状态
复制代码

 

 posted on   小SEI子  阅读(10)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
点击右上角即可分享
微信分享提示