libvirt 基于lvm创建pool

1、使用LVM创建存储池时,pool的名字必须和vg的名字相同,否则会报错:

 

 写道
error: Failed to create pool from pool.xml
error: internal error Child process (/sbin/vgchange -ay vg-test) status unexpected: exit status 5

 

因为在创建pool的时候,libvirt需要激活对应的vg,可能是还没有创建vg

vgcreate vg-test /dev/sdx

2、创建pool之前必须要存在vg,vg下创建的lv都可以转换成libvirt下的volume,只要刷新pool即可

 

virsh pool-refresh vgname

 

创建好vg后,即使定义pool的时候不指定source的path也没关系

 

 

<pool type='logical'>
  <name>vg-test</name>
<!-- 此处source可以不指定  -->
  <source>
    <device path='/dev/disk/by-path/ip-192.168.0.203:3260-iscsi-mycloud-lun-10'/>
  </source>
  <target>

    <path>/dev/vg-test</path>

  </target>
</pool>

 target 的path 必须填写为vg的路径

 

也可以用命令行代替上面的xml文件

virsh pool-create-as vg-test logical --target /dev/test

 

 

总结:把iscsi存储共享到计算节点的主要步骤为:

 

1)添加硬盘

2)分区格式化

3)把硬盘改为lvm类型

4)创建lv,此lv是欲共享出去的

5)安装tgt

6)配置 /etc/tgt/target.conf 文件

7)在计算节点中用openiscsi 软件 发现上面共享出来的存储

8)登录该存储,就可以当做本地的一块硬盘使用了

9)接着在此硬盘上创建vg,pool

 

3、把storage pool 标记为自动启动时如报一下错误:

 

 

error: failed to get pool 'vg-testt'

error: Storage pool not found: no pool with matching name 'vg-testt'


其中的一种可能的原因是该pool是transient(瞬时)对象,直接用virsh create pool.xml 创建的。
解决办法是先destroy 掉该pool,使用virsh define 的方式创建,这样就可以设为自动启动了。

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值