KVM中管理存储池(创建和删除)

KVM平台以存储池的形式对存储进行统一管理,所谓存储池可以理解为本地目录、通过远端磁盘阵列(iSCSI、NFS)分配过来磁盘或目录,当然也支持各类分布式文件系统。

     通过virsh中pool命令能够查看、创建、激活、注册、删除存储池。

     下面通过一些实例演示如何管理存储池:

     一、查看当前存储池列表

进入到 virsh控制台

1
2
3
4
5
6
7
8
9
10
11
[root@kvm02 kvmcontrol]# virsh -c qemu:///system 
     欢迎使用 virsh,虚拟化的交互式终端。 
    
   输入:'help' 来获得命令的帮助信息 
       'quit' 退出 
    
virsh # pool-list 
名称                 状态       自动开始   
----------------------------------------- 
default              活动       yes        
poolB                活动       no

查看某一存储池的具体信息(以XML形式存在)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# pool-dumpxml default 
<pool type='dir'
  <name>default</name
  <uuid>a6029537-29c8-285c-4b9a-533d4c264c7f</uuid
  <capacity>52844687360</capacity
  <allocation>26866851840</allocation
  <available>25977835520</available
  <source
  </source
  <target> 
    <path>/var/lib/libvirt/images</path
    <permissions> 
      <mode>0700</mode
      <owner>-1</owner
      <group>-1</group
    </permissions
  </target
</pool>

查看具体信息,结果类似于解析上面的XML:

1
2
3
4
5
6
7
8
9
# pool-info  default 
名称:          default 
UUID:           a6029537-29c8-285c-4b9a-533d4c264c7f 
状态:          running 
Persistent:     yes 
自动启动:      yes 
容量:          49.22 GB 
分配:          25.02 GB 
可用:          24.19 GB

二、创建一个新的存储池

这里仿照上面的XML文件,编写一个命为poolB的XML文档,内容如下[位于/home/poolB]:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@kvm02 home]# vi poolB 
    
<pool type='dir'
  <name>poolB</name
  <source
  </source
  <target> 
    <path>/home/img</path
    <permissions> 
      <mode>0700</mode
      <owner>-1</owner
      <group>-1</group
    </permissions
  </target
</pool>

调用pool-create命令,加载上面的XML文件:

1
2
3
4
5
6
7
8
virsh # pool-create /home/poolB 
从 poolB 中创建池 /home/poolB  
    
virsh # pool-list 
名称                 状态       自动开始   
----------------------------------------- 
default              活动       yes        
poolB                活动       no

查看创建的poolB状态:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
virsh # pool-info poolB 
名称:          poolB 
UUID:           1e03e100-1f12-f004-1ee2-ae739eda746c 
状态:          running 
Persistent:     no 
自动启动:      no 
容量:          451.83 GB 
分配:          100.22 GB 
可用:          351.61 GB 
    
virsh # pool-dumpxml poolB 
<pool type='dir'
  <name>poolB</name
  <uuid>1e03e100-1f12-f004-1ee2-ae739eda746c</uuid
  <capacity>485150105600</capacity
  <allocation>107614916608</allocation
  <available>377535188992</available
  <source
  </source
  <target> 
    <path>/home/img</path
    <permissions> 
      <mode>0700</mode
      <owner>-1</owner
      <group>-1</group
    </permissions
  </target
</pool>

三、KVM存储池管理目录

KVM创建的存储池可以理解为一种映射关系,即将某一块挂接至宿主机器上的存储空间形成可被KVM使用的逻辑存储池,以方便虚拟主机的管理。

  默认KVM将这些存储池的配置文件存放于/etc/libvirt/storage

 四、删除一个存储池

删除poolB的命令如下:

1
2
3
4
5
6
7
virsh # pool-destroy poolB 
销毁池 poolB 
    
virsh # pool-list 
名称                 状态       自动开始   
----------------------------------------- 
default              活动       yes


当然了,以上是命令方法操作,我们也可以在图形化下进行操作


KVM中管理存储池(创建和删除)


KVM中管理存储池(创建和删除)


本文转自 jackjiaxiong 51CTO博客,原文链接:http://blog.51cto.com/xiangcun168/1680498


上一篇:Contest3063 - 跟随唐克练编程进阶系列之《新生训练赛》_问题 H: 小鱼的数字游戏


下一篇:互联网公司面试经常会问的Redis题目