快捷搜索:

您的位置:澳门新葡4473网站 > 新闻社区 > Oracle Linux 8.0 发布

Oracle Linux 8.0 发布

发布时间:2020-04-21 19:31编辑:新闻社区浏览(194)

    图片 1

    虚拟化简介

    虚拟化是将计算机的各种实体资源(CPU、内存、存储、网络等)进行抽象后呈现出来,即是将一台物理计算机分割成多台计算机,实现在一台计算机上运行多台虚拟机,每台虚拟机可运行不同的操作系统,可包含不同的虚拟硬件,并且它们在相互独立的空间内运行而互不影响。

    图片 2

    在虚拟化软件层次结构中引入了虚拟化层,这个通常称为虚拟机监控器(Virtual Machine Manager,VMM)。虚拟机监控器运行的环境就是物理机,也称为宿主机。虚拟出来的平台通常称为客户机。

    虚拟机使用软件的方法重新定义划分计算机资源,有如下优势:

    • 隔离:虽然虚拟机可共享一台物理机,但它们之间完全隔离,它们就是完全不同的物理计算机。
    • 可靠:虚拟服务器独立于硬件进行工作,灾难恢复更容易实现,当一台虚拟服务器故障,可短时间内迁移恢复到另一台虚拟服务器上。
    • 成本:当物理机资源较少时,也可通过虚拟化实现使用更多服务器才能做的事情。
    • 便于管理:通过虚拟机集群管理系统,一个管理员可管理更多服务器。

    此版本主要亮点包括:

    KVM/QEMU

    Application Streams

    KVM/QEMU 简介

    2008 年,KVM 被 RedHat 收购,成为红帽开源项目的一员。KVM 全称 Kernel-based Virtual Machine,即基于内核的虚拟机,是一个 x86 平台上的全虚拟化解决方案。它是 Linux 内核的一个可加载模块,包括核心虚拟化模块 kvm.ko,以及特定 CPU 的模块 kvm-inet.ko 或 kvm-amd.ko,其实现需要宿主机的 CPU 支持硬件虚拟化
    KVM 可运行多个虚拟机,无论是未经修改的 linux 镜像还是 Windows 镜像。每个虚拟机都有私有的虚拟化硬件如:网卡、磁盘、显卡驱动等。
    从 Linux 内核版本 2.6.20 开始,KVM 核心组件被包含在 Linux 内核中。从 QEMU 版本 1.3 开始,KVM 用户空间组件被包含其中。
    在 x86 平台下 CPU 的硬件虚拟化技术有 Intel 的 VT-X 和 AMD 的 AMD-V。
    KVM 的特征请查看官网,传送门

    注意:BIOS 需要开启虚拟化支持,VMware 的虚拟机需要开启虚拟化支持。

    Linux 内核加载了 KVM 模块后,就可以使用 KVM 模块实现虚拟机的内存分配、虚拟 CPU 的读写及管理虚拟 CPU 的运行。但是仅有 KVM 模块远远不够,因为用户无法直接控制内核模块,所以还需要一个用户空间的工具。这个用户空间的工具就是开源虚拟化软件 QEMU,使用它来模拟 PC 硬件的用户空间组件、I/O 设备及提供访问外设的途径。

    图片 3

    QEMU 利用 KVM 提供的应用程序接口,通过 ioctl 系统调用创建和运行虚拟机。KVM Driver 使得整个 Linux 成为一个虚拟机监控器。并且在原有的 Linux 两种执行模式(内核模式和用户模式)的基础上新增了客户模式,客户模式拥有自己的内核模式和用户模式。

    在虚拟机运行下,三种模式的分工如下:

    • 客户模式:执行非 I/O 操作。虚拟机运行在客户模式下。
    • 内核模式:实现到客户模式的切换,处理因为 I/O 或者其他指令所引起的从客户模式退出。KVM Driver 工作在内核模式下。
    • 用户模式:代表客户机执行 I/O 指令。QEMU 运行在用户模式下。

    Oracle Linux 8 引入了 Application Streams 的概念,它可以比核心操作系统包更频繁地交付和更新多个版本的用户空间组件。Application Streams 包含必要的系统组件和一系列以往分发在软件集中的应用,以及其它产品和程序。

    QEMU 与 KVM 的区别与联系

    上一节已经明确 KVM 仅仅是一个内核模块,它可以模拟虚拟机的 CPU 和内存,但是我们还需要 I/O 设备,这些 I/O 设备就是通过 QEMU 这个用户空间模拟器来模拟的。QEMU 本身是一套通用开源的机器仿真器和虚拟程序,它有两种使用方式。

    系统管理

    全系统仿真(单独使用)

    这种方式对宿主机硬件没有要求,也不需要宿主机 CPU 支持虚拟化,QEMU 为虚拟机操作系统模拟整套硬件环境,虚拟机操作系统感觉不到自己运行在模拟的硬件环境中。这种纯软件模拟效率很低,它可模拟出各种硬件设备。

    • 引入 Dandified Yum 软件包管理器,它是基于 DNF 技术的 yum 工具的新版本,可在基于 RPM 的 Linux 发行版上安装、更新和删除软件包。

    • 引入 Cockpit 服务器远程管理器,这是一个简单、轻量级但功能强大的交互式 GNU/Linux 服务器远程管理器,可通过 Web 浏览器提供实时 Linux 会话。

    用户空间仿真(配合 KVM 等)

    这种方式与内核模块 KVM 配合完成硬件环境的模拟。在 QEMU 1.3 之前,它有一个专门的分支版本 qemu-kvm 作为 KVM 的用户空间程序,qemu-kvm 通过 ioctl 调用 /dev/kvm 这个接口与 KVM 交互,这样 KVM 在内核空间模拟虚拟机 CPU,qemu-kvm 负责模拟虚拟机 I/O 设备。在 QEMU 1.3 以后的版本中,qemu-kvm 分支代码已经合并到 QEMU 的 master 分支中。在编译 QEMU 时开启 –enable-kvm 选项,就能够使 QEMU 支持 KVM。

    内核

    libvirt

    • modinfo 命令已更新,可识别和显示使用 CMS 和 PKCS#7 格式签名的模块签名信息。

    • 一组内核模块移动到 kernel-modules-extra 包中,这意味着默认情况下这些模块都不安装,非 root 用户也无法加载这些组件,因为默认情况下它们也被列入黑名单。

    • 内存总线限制已扩展到 128 PiB 的虚拟地址空间和 4 PB 的物理内存容量。Linux 内核中的 I/O 内存管理单元(IOMMU)代码也会更新以启用 5 级分页表。

    • kdump 特性可以使崩溃内核和 initramfs 尽早加载,以便它可以捕获 vmcore 信息,包括早期内核崩溃。

    libvirt 简介

    通过 QEMU 命令来管理虚拟机非常麻烦,RedHat 发布了一个开源项目 libvirt,它是为了更加方便的管理各种虚拟化引擎而设计的。libvirt 作为中间适配层,让底层虚拟化引擎对上层用户空间的管理工具做到完全透明,因为 libvirt 屏蔽了底层各种虚拟化的细节,为上层管理工具提供了一个统一的接口。

    libvirt 支持多种虚拟化引擎,即支持包括 KVM、QEMU、Xen、VMware、VirtualBox 等在内的平台虚拟化方案,又支持 OpenVZ、LXC 等 Linux 容器虚拟化系统,还支持用户态 Linxu(UML)的虚拟化。

    libvirt 是目前使用最广泛的对 KVM 虚拟机进行管理的工具和应用程序接口,而且一些常用的虚拟机管理工具和云计算框架平台(如 OpenStack、CloudStack 等)都在底层使用了 libvirt 的应用程序接口。

    图片 4

    libvirt 通过相同的方式管理不同的虚拟化引擎,支持虚拟机的创建、启动、关闭、暂停、睡眠、迁移、删除,以及对虚拟机 CPU、内存、磁盘、网卡等多种设备的热添加。libvirt 还支持通过远程连接的方式管理虚拟机。

    更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2017-06/145273p2.htm

    图片 5

    容器与虚拟化

    新的容器工具:Podman、Buildah 与 skopeo 现在在 Oracle Linux 8 上可用:

    • Podman:Podman 是 Libpod 的一部分,它的定义可以简单用这个命令表示:`alias docker=podman`。

    • Buildah:Buildah 是一个用于构建 OCI(Open Container Initiative)镜像的工具。

    • skopeo:skopeo 是一个命令行工具,用于对容器镜像和镜像库执行各种操作,支持使用 OCI 镜像与原始的 Docker v2 镜像。

    Q35 机型是一种更现代的 PCI Express-based 机器类型,现在可用于 KVM。

    KVM 访客崩溃报告中添加其它信息,这使得在使用 KVM 虚拟化时更容易诊断和修复问题。

    文件系统与存储

    • 增强 Device Mapper Multipathing

    • SCSI Multiqueue 驱动使块层可以通过 SSD 和多核系统很好地扩展性能

    •  Stratis,一种管理本地存储的简单解决方案

    • XFS 支持共享写时复制(COW)数据扩展区功能,因此两个或多个文件可以共享一组公共数据块。

    此外还有关于网络、身份认证管理与安全等方面的内容,详情查看发布说明:

    (文/开源中国)    

    本文由澳门新葡4473网站发布于新闻社区,转载请注明出处:Oracle Linux 8.0 发布

    关键词: