KVM 存储虚拟化 - 每天5分钟玩转 OpenStack(7)

KVM 的存储虚拟化是通过存储池(Storage Pool)和卷(Volume)来管理的。

Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种类型,后面会详细讨论。Volume 是在 Storage Pool 中划分出的一块空间,宿主机将 Volume 分配给虚拟机,Volume 在虚拟机中看到的就是一块硬盘。

下面我们学习不同类型的 Storage Pool

目录类型的 Storage Pool

文件目录是最常用的 Storage Pool 类型。 
KVM 将宿主机目录 /var/lib/libvirt/images/ 作为默认的 Storage Pool。

那么 Volume 是什么呢? 
答案就是该目录下面的文件了,一个文件就是一个 Volume。

大家是否还记得我们之前创建第一个虚机 kvm1 的时候,就是将镜像文件 cirros-0.3.3-x86_64-disk.img 放到了这个目录下。文件 cirros-0.3.3-x86_64-disk.img 也就是Volume,对于 kvm1 来说,就是它的启动磁盘了。

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

注意:Storage Pool 的类型是 “dir”,目录的路径就是 /var/lib/libvirt/images

下面我们为虚机 kvm1 添加一个新的磁盘,看看有什么变化。 
在 virt-manager 中打开 kvm1 的配置页面,右键添加新硬件

在默认 Pool 中创建一个 8G 的卷。

点击 “Finish”,可以看到新磁盘的信息。

在 /var/lib/libvirt/images/ 下多了一个 8G 的文件 kvm1.img

root@ubuntu:~# ls -l /var/lib/libvirt/images/ 
total 14044 
-rw-r–r– 1 root root 14417920 Sep 4 11:24 cirros-0.3.3-x86_64-disk.img 
-rw——- 1 root root 8589934592 Sep 4 21:39 kvm1.img

使用文件做 Volume 有很多优点:存储方便、移植性好、可复制、可远程访问。 

前面几个优点都很好理解,这里对“可远程访问”多解释一下。

远程访问的意思是镜像文件不一定都放置到宿主机本地文件系统中,也可以存储在通过网络连接的远程文件系统,比如 NFS,或者是分布式文件系统中,比如 GlusterFS。

这样镜像文件就可以在多个宿主机之间共享,便于虚机在不同宿主机之间做 Live Migration;如果是分布式文件系统,多副本的特性还可以保证镜像文件的高可用。

KVM 支持多种 Volume 文件格式,在添加 Volume 时可以选择

raw 是默认格式,即原始磁盘镜像格式,移植性好,性能好,但大小固定,不能节省磁盘空间。

qcow2 是推荐使用的格式,cow 表示 copy on write,能够节省磁盘空间,支持 AES 加密,支持 zlib 压缩,支持多快照,功能很多。

vmdk 是 VMWare 的虚拟磁盘格式,也就是说 VMWare 虚机可以直接在 KVM上 运行。

下一节介绍 LVM 类型的 Storage Pool。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/243218.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8)

LVM 类型的 Storage Pool 不仅一个文件可以分配给客户机作为虚拟磁盘,宿主机上 VG 中的 LV 也可以作为虚拟磁盘分配给虚拟机使用。 不过,LV 由于没有磁盘的 MBR 引导记录,不能作为虚拟机的启动盘,只能作为数据盘使用。 这种配置下…

UltraEdit中高亮显示verilog HDL关键词

UltraEdit是一款功能强大的文本编辑器,可以编辑文字、Hex、ASCII码,可以取代记事本,内建英文单字检查、C 及 VB 指令突显,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。是一个使用广泛的编辑器&#xff0c…

你是否做好了代码的备份?

http://blog.csdn.net/norains/archive/2010/03/16/5385773.aspx

CCS的基本操作

CCS的基本操作 1、 创建新工程 方法一: 方法二: 进入工程界面后,第一步选择芯片型号,第二步选择仿真器,第三步编写工程名称,选择工程模板。最后点击finish 2、 编译 方法一: 方法二&…

KVM 网络虚拟化基础 - 每天5分钟玩转 OpenStack(9)

网络虚拟化是虚拟化技术中最复杂的部分,学习难度最大。 但因为网络是虚拟化中非常重要的资源,所以再硬的骨头也必须要把它啃下来。 为了让大家对虚拟化网络的复杂程度有一个直观的认识,请看下图 这是 OpenStack 官网上给出的计算节点&#…

命名的结束语句

命名的结束语句 1、命名的模块结尾 SystemVerilog允许关键字endmoule后指定模块的名字 endmoule:<module_name> endmodule后指定的名称必须与匹配的模块名称一致2、命名的代码块结尾 SystemVerilog还允许对其他命名的代码块指定结尾名称。这包括以下关键字&#xff1a;…

Hive注册表那点事(5.0 VS 6.0)

Hive 注册表那点事&#xff08; 5.0 VS 6.0 &#xff09; 现象 5.0 移置到 6.0 上的时候&#xff0c;发现 Hive-Registry 无效&#xff0c;具体的现象是在控制面板中屏幕校准后 Cold Boot 机器校准数据丢失。 环境变量 PRJ_ENABLE_REGFLUSH_THREAD 和 PRJ_ENABLE_FSREGHIVE …

云计算与 OpenStack - 每天5分钟玩转 OpenStack(14)

“云计算” 算是近年来最热的词了。现在 IT 行业见面不说这三个字您都不好意思跟人家打招呼。 对于云计算&#xff0c;学术界有各种定义&#xff0c;大家有兴趣可以百度一下。 CloudMan 这里主要想从技术的角度谈谈对云计算的理解。 基本概念 所有的新事物都不是突然冒出来的&a…

OpenStack 架构 - 每天5分钟玩转 OpenStack(15)

终于正式进入 OpenStack 部分了。 今天开始&#xff0c;CloudMan 将带着大家一步一步揭开 OpenStack 的神秘面纱。 OpenStack 已经走过了 6 个年头。 每半年会发布一个版本&#xff0c;版本以字母顺序命名。现在已经到第 12 个版本 Liberty&#xff08;字母 L&#xff09;。 Op…

pcb中layer stack manager 中,右上角的layer pairs 、internal layer pairs和build-up,三者的区别?

不同的层叠模式&#xff1a; Layer Pairs&#xff08;层成对&#xff09;、Internal Layer Pairs&#xff08;内电层成对&#xff09;和Build-up&#xff08;叠压&#xff09;。 多层板实际上是由多个双层板或单层板压制而成的&#xff0c;选择不同的模式&#xff0c;则表示在实…

智能手机的开放与封闭刍议

作为一个从05年就浸淫其中的玩智能手机玩家&#xff0c;我已经先后拥有了两台WMXscale的HTC手机&#xff0c;一部iPhone&#xff0c;最近刚刚又搞了部 Google/HTC N1&#xff0c;准备继续做新技术的小白鼠&#xff0c;同时也体验一下新技术是如何惠及人类生活的。N1入手不久&am…

FPGA笔记

type [upper:lower] vector_name;例如wire [0:7] b; // 8-bit wire where b[0] is the most-significant bit.ATM是Asynchronous Transfer Mode&#xff08;ATM&#xff09;异步传输模式突发传输&#xff08;Burst transmission&#xff09;&#xff0c;一般也称为数据突发&…

部署 DevStack - 每天5分钟玩转 OpenStack(17)

本节按照以下步骤部署 DevStack 实验环境&#xff0c;包括控制节点和计算节点 创建虚拟机 按照物理资源需求创建 devstack-controller 和 devstak-compute 虚拟机 安装操作系统 安装 Ubuntu 14.04&#xff0c;并配置 eth0 的 IP devstack-controller 192.168.104.10 devstak-c…

理解 Keystone 核心概念 - 每天5分钟玩转 OpenStack(18)

作为 OpenStack 的基础支持服务&#xff0c;Keystone 做下面这几件事情&#xff1a; 管理用户及其权限维护 OpenStack Services 的 EndpointAuthentication&#xff08;认证&#xff09;和 Authorization&#xff08;鉴权&#xff09;学习 Keystone&#xff0c;得理解下面这些概…

C++11 Lambda函数(匿名函数)

C11引入了lambda表达式&#xff0c;使得程序员可以定义匿名函数&#xff0c;该函数是一次性执行的&#xff0c;既方便了编程&#xff0c;又能防止别人的访问。 Lambda表达式的语法通过下图来介绍&#xff1a; Lambda表达式的引入标志&#xff0c;在‘[]’里面可以填入‘’或‘&…

时序约束与分析

时序约束与分析 设计约束所处的环节:约束输入、分析实现结果、设计优化。 设计约束分类 物理约束I/O接口约束(例如引脚分配、电平标准设定等物理属性的约束)、布局约束、布线约束以及配置约束。 时序约束:设计FPGA内部的各种逻辑或走线的延时,反应系统的频率和速度的约束…

通过例子学习 Keystone - 每天5分钟玩转 OpenStack(19)

上一节介绍了 Keystone 的核心概念。本节我们通过“查询可用 image”这个实际操作让大家对这些概念建立更加感性的认识。 User admin 要查看 Project 中的 image 第 1 步 登录 当点击时&#xff0c;OpenStack 内部发生了哪些事情&#xff1f;请看下面 Token 中包含了 User 的 R…

从Linux到Meego

网上看到一个Intel的强写的一篇关于meego的文章&#xff0c;很是受用&#xff0c;一篇好的文章就好比一顿每餐&#xff0c;在这里与大家分享。 从2月份Meego发布后一直在学习&#xff0c;现在把一些学到的内容跟大家共享一下。 首先想说说Meego是什么&#xff0c;Meego首先是…

理解 Glance - 每天5分钟玩转 OpenStack(20)

OpenStack 由 Glance 提供 Image 服务。 理解 Image 要理解 Image Service 先得搞清楚什么是 Image 以及为什么要用 Image&#xff1f; 在传统 IT 环境下&#xff0c;安装一个系统是要么从安装 CD 从头安装&#xff0c;要么用 Ghost 等克隆工具恢复。这两种方式有如下几个问题&…

C++ Applications

C的应用 C Applications (English version): http://www.stroustrup.com/applications.html 这里有一个有关系统、应用程序和库的列表&#xff0c;列表中的全部或者大部分代码用C编写&#xff0c;当然&#xff0c;该列表并不全面。即使我如何努力&#xff0c;我也不能列举一个…