近期在研究libvirt,存储
创建iscsi存储池
import libvirt
conn=libvirt.open('qemu:///system')#conn=libvirt.open('qemu:///system') /dev/disk/by-path
xmldesc='''
<pool type='iscsi'>
<name>iscsi</name>
<source>
<host name="192.168.x.x"/>
<device path="iqn"/>
</source>
<target>
<path>/dev/disk/by-path</path>
<permissions>
<mode>0700</mode>
<owner>0</owner>
<group>0</group>
</permissions>
</target>
</pool> '''
storage_pool= conn.storagePoolCreateXML(xmldesc,0)
print 'storage_pool.isActive',storage_pool.isActive()
print storage_pool.refresh(0)
print storage_pool.listVolumes()
逻辑概念对应关系:
创建存储池时,把iscsi 服务器中的某一个iqn作为device的话,这个iqn就可以理解一个池,则iqn内的lun就对应 libvirt中卷的感念,如果创建多个iqn的存储池,存储池的概念应该对应 iscsi服务器 更准确一些,卷与 lun对应。