zoukankan      html  css  js  c++  java
  • KVM虚拟化存储管理(4)

    一、KVM存储虚拟化介绍

      KVM 的存储虚拟化是通过存储池(Storage Pool)和卷(Volume)来管理的。
      Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种型;
      Volume 是在 Storage Pool 中划分出的一块空间,宿主机将 Volume 分配给虚拟机,Volume 在虚拟机中看到的就是一块硬盘。

      厚置备:厚置备是传统存储置备模型。对于厚置备,预先提供大量存储空间以满足未来的存储需要。但是,空间可能一直未被使用,这样会导致无法充分利用存储容量。
      精简置备:此方法与厚置备相反,通过以灵活的按需方式分配存储空间,可帮助您消除无法充分利用存储的问题。可以通过 ESXi,使用两种模型的精简置备(阵列级别和虚拟磁盘级别)。

    二、目录类型的 Storage Pool

      文件目录是最常用的 Storage Pool 类型。KVM 将宿主机目录 /var/lib/libvirt/images/ 作为默认的 Storage Pool
      Volume 是该目录下面的文件了,一个文件就是一个 Volume。


      那 KVM 是怎么知道要把 /var/lib/libvirt/images 这个目录当做默认 Storage Pool 的呢?
    实际上 KVM 所有可以使用的 Storage Pool 都定义在宿主机的 /etc/libvirt/storage 目录下,每个 Pool 一个 xml 文件,如下:


      默认有一个 default.xml,其内容如下:注意:Storage Pool 的类型是 “dir”,目录的路径就是/var/lib/libvirt/images

    三、创建 Stotage Pool

    (1)在 virt-manager 中打开一台虚拟机,为其添加硬盘,执行如下:


    (2)选择管理,弹出如下对话框,点击左侧“+”后弹出添加新存储池,随意起一个名称,点击“前进”


    (3)在“目标路径”中写入准备新建存储池的路径,点击“完成”:


    (4)之后新建出一个名为kem-storage的存储池,其路径为/kvm-storag


    (5)删除存储池:首先停止存储池,再进行删除

    四、虚拟机添加volume

    (1)上一节我们创建了路径为/kvm-storage的Storage-Pool,在此Pool中添加volume,取名并设置大小:


    (2)点击“完成”后,在kvm-storage中新建了一个volume的文件,点击“选择卷”:


    (3)点击“完成”后,虚机中多了一个“磁盘2”


      

      以上创建的卷 volume01.qcow2 是一个文件,路径在/kvm-storage。使用文件做 Volume 有很多优点:存储方便、移植性好、可复制
      KVM 支持多种 Volume 文件格式:
      raw:是默认格式,即原始磁盘镜像格式,移植性好,性能好,但大小固定,不能节省磁盘空间。
      qcow2:是推荐使用的格式,cow 表示 copy on write,能够节省磁盘空间,支持 AES 加密,支持 zlib 压缩,支持多快照,功能很多。
      vmdk:是 VMWare 的虚拟磁盘格式,也就是说 VMWare 虚机可以直接在 KVM上 运行。

  • 相关阅读:
    LeetCode Flatten Binary Tree to Linked List
    LeetCode Longest Common Prefix
    LeetCode Trapping Rain Water
    LeetCode Add Binary
    LeetCode Subsets
    LeetCode Palindrome Number
    LeetCode Count and Say
    LeetCode Valid Parentheses
    LeetCode Length of Last Word
    LeetCode Minimum Depth of Binary Tree
  • 原文地址:https://www.cnblogs.com/renyz/p/11609850.html
Copyright © 2011-2022 走看看