VDSM块存储Block Domain实现原理和thin provision的实现

本文详细介绍了VDSM中的Block Domain原理及thin provision的实现方式。VDSM采用分层存储管理,SPM节点负责元数据管理和分配。集群锁通过sanlock确保一致性,仅SPM可修改元数据。使用LVM2管理逻辑卷,通过创建小体积LV并设置大容量qcow2 image实现thin provision。虚拟机启动时,注册写越界回调并启动监控线程,确保在磁盘空间不足时动态扩展LV。
摘要由CSDN通过智能技术生成

本文主要讲述VDSM块存储Block Domain实现原理和thin provision的实现。

图 1.oVirt 逻辑结构图


首先介绍一下背景: VDSM中对存储的管理采用了分层建模的思想,在共享SAN存储模式下,自下而上分别是LUN(Block Domain),Block Storage Pool。


在一个集群中,同一种存储类型的domain组成一个pool。在一个pool内部,存在一个SPM(Storage Pool Manager)节点,该节点负责管理Pool中存储分配和元数据的记录情况。同样,为了持久化Pool中的volume/image等元数据信息,在Pool内部还存在一个Master Domain,该Domain上存放Pool中的元数据信息。

SPM是普通Ovirt Node节点获取到集群锁之后的一个Role,在一个Storage  Pool内部,为了保证元数据的安全和一致性,VDSM规定,只有SPM有元数据的修改权限。

VDSM中集群锁是通过sanlock实现的,sanlock通过磁盘心跳和磁盘通信来进行节点存活判断和集群一致性信息计算,它能够保证,在同一时刻,集群只有一个节点能够获取到集群锁。如果某一个Node长期持有集群锁,那它就扮演了SPM的角色。


普通的创建/删除卷等元数据修改操作,这些请求消息由engine节点直接发送给SPM节点,SPM在修改完元数据后&#

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值