2019独角兽企业重金招聘Python工程师标准>>>

OpenStack是云操作系统,要学习OpenStack,首先需要掌握一些虚拟化和云计算的相关知识。

虚拟化

虚拟化是云计算的基础。简单的说,虚拟化使得在一台物理的服务器上可以跑多台虚拟机,虚拟机共享物理机的 CPU、内存、IO 硬件资源,但逻辑上虚拟机之间是相互隔离的。

物理机我们一般称为宿主机(Host),宿主机上面的虚拟机称为客户机(Guest)。

那么 Host 是如何将自己的硬件资源虚拟化,并提供给 Guest 使用的呢?
这个主要是通过一个叫做 Hypervisor 的程序实现的。

根据 Hypervisor 的实现方式和所处的位置,虚拟化又分为两种:
1型虚拟化和2型虚拟化

1型虚拟化

Hypervisor 直接安装在物理机上,多个虚拟机在 Hypervisor 上运行。Hypervisor 实现方式一般是一个特殊定制的 Linux 系统。Xen 和 VMWare 的 ESXi 都属于这个类型。

2型虚拟化

物理机上首先安装常规的操作系统,比如 Redhat、Ubuntu 和 Windows。Hypervisor 作为 OS 上的一个程序模块运行,并对管理虚拟机进行管理。KVM、VirtualBox 和 VMWare Workstation 都属于这个类型。

理论上讲:

1型虚拟化一般对硬件虚拟化功能进行了特别优化,性能上比2型要高;

2型虚拟化因为基于普通的操作系统,会比较灵活,比如支持虚拟机嵌套。嵌套意味着可以在KVM虚拟机中再运行KVM。

KVM

下面重点介绍KVM这种2型虚拟化技术。

基本概念

在 x86 平台上最热门运用最广泛的虚拟化方案莫过于 KVM 了。OpenStack 对 KVM 支持得也最好,我们的教程也理所当然选择 KVM 作为 实验环境的 Hypervisor。

KVM 全称是 Kernel-Based Virtual Machine。也就是说 KVM 是基于 Linux 内核实现的。
KVM有一个内核模块叫 kvm.ko,只用于管理虚拟 CPU 和内存。

那 IO 的虚拟化,比如存储和网络设备由谁实现呢?
这个就交给 Linux 内核和Qemu来实现。

说白了,作为一个 Hypervisor,KVM 本身只关注虚拟机调度和内存管理这两个方面。IO 外设的任务交给 Linux 内核和 Qemu。

Libvirt

大家在网上看 KVM 相关文章的时候肯定经常会看到 Libvirt 这个东西。

Libvirt 是啥?
简单说就是 KVM 的管理工具

其实,Libvirt 除了能管理 KVM 这种 Hypervisor,还能管理 Xen,VirtualBox 等。
OpenStack 底层也使用 Libvirt,所以很有必要学习一下。

Libvirt 包含 3 个东西:后台 daemon 程序 libvirtd、API 库和命令行工具 virsh

  1. libvirtd是服务程序,接收和处理 API 请求;

  2. API 库使得其他人可以开发基于 Libvirt 的高级工具,比如 virt-manager,这是个图形化的 KVM 管理工具,后面我们也会介绍;

  3. virsh 是我们经常要用的 KVM 命令行工具,后面会有使用的示例。

作为 KVM 和 OpenStack 的实施人员,virsh 和 virt-manager 是一定要会用的。

今天5分钟差不多了,下一次我们来玩 KVM

转载于:https://my.oschina.net/u/2397560/blog/626890

虚拟化 - 每天5分钟玩转 OpenStack(2)相关推荐

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

    http://www.cnblogs.com/CloudMan6/p/5277927.html LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8) LVM 类型的 ...

  2. 每天5分钟玩转openstack跟学(一)预备知识

    前言:对于openstack我是一名小白,打算跟着CloudMan的<每天5分钟玩转openstack>进行学习,有兴趣的小伙伴可以跟着我一起,相互探讨,互相进步,该系列博文基本不涉及原理 ...

  3. 写在最前面 - 每天5分钟玩转 OpenStack(1)

    写在最前面 <每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节 ...

  4. 如何使用 OpenStack CLI - 每天5分钟玩转 OpenStack(22)

    http://www.cnblogs.com/CloudMan6/p/5402490.html 如何使用 OpenStack CLI - 每天5分钟玩转 OpenStack(22) 本节首先讨论 p_ ...

  5. Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34)

    Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34) 本节通过日志详细分析 Nova Pause/Resume 操作. 有时需要短时间暂停 instan ...

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

    http://www.cnblogs.com/CloudMan6/p/5357273.html 部署 DevStack - 每天5分钟玩转 OpenStack(17) 本节按照以下步骤部署 DevSt ...

  7. Cinder 组件详解 - 每天5分钟玩转 OpenStack(47)

    Cinder 组件详解 - 每天5分钟玩转 OpenStack(47) 本节我们将详细讲解 Cinder 的各个子服务. cinder-api cinder-api 是整个 Cinder 组件的门户, ...

  8. 每天5分钟玩转 OpenStack

    转自http://cloudman.blog.51cto.com/10425448/1747415 标签:Open Stack cloud OpenStack是云操作系统,要学习OpenStack,首 ...

  9. 学习 OpenStack 的方法论 - 每天5分钟玩转 OpenStack(150)

    作为 OpenStack 的核心教程,我们已经到了最后总结的部分. OpenStack 目前已经有好几十个模块,本教程讨论的是最最重要的核心模块:Keystone,Nova,Glance,Cinder ...

最新文章

  1. 数组怎么用getchar_C语言 | 数组
  2. 根据字段的不同内容分类汇总 - 球队的胜负次数统计
  3. 区块链去中心化的生命之源:“DPOS(委托权益证明)共识机制”
  4. VC++之自定义消息
  5. RNN-LSTM循环神经网络-03Tensorflow进阶实现
  6. 【学习笔记】莫队算法
  7. 经典神经网络 -- ResNet : 设计原理与pytorch实现
  8. [題解]luogu_P2055假期的宿舍(二分圖最大匹配)
  9. DNS服务双解析邮箱地址
  10. 昂科自动烧录器对英飞凌IR38164M系列芯片烧录,效果显著
  11. 无法修改默认浏览器的原因
  12. C++异常处理的问题
  13. K8S—pv和pvs
  14. 【问链-区块链基础知识系列】 第十课 首席架构师谈区块链技术演进
  15. 转载:安卓Paint使用讲解
  16. 爬虫入门实战(如何分析页面和构建requests请求)
  17. android编译报错(1)
  18. Ubuntu 22.04下载安装VMware Workstation Pro 17
  19. 上海羽毛球场预定app_羽球生活app下载-羽球生活(羽毛球场预定)v2.2.29_5577安卓网...
  20. 什么游戏蓝牙耳机好?专业电竞玩家教你如何选择

热门文章

  1. 任正非签发最新电邮:过去我们是为了赚点小钱,现在是要战胜美国
  2. 欧洲两个研究团队开发出了让截肢者能感觉到并准确抓住物体的仿生手
  3. 2018微信年度数据报告:00后最爱表情捂脸哭 80后呲牙笑
  4. 大数据+人工智能正以八种方式撼动商界
  5. AI芯片:从历史看未来
  6. 哥伦比亚大学AI实验室主任Hod Lipson:阻碍无人驾驶技术发展的7个误区
  7. 普华永道:2018 AI预测报告 将回答关于数据的重大问题
  8. 在分析了AI顶会上的6163篇论文后,我们能发现怎样的发展趋势与变化……
  9. 过分了,又双叒叕吃狗粮:因为爱情,才有思科
  10. 最值得你收藏的30个Python常用小技巧