由于测试环境不够,于是想用docker虚拟几个centos系统出来 # 安装docker 略 # 1.运行一个基础镜像 [root@summer ~]# docker run --rm -d -i @summer ~]# docker attach 4ba3c5252384 [root@4ba3c5252384 /]# ll total 0 lrwxrwxrwx 1 root root 7 root 66 Nov 19 07:12 etc drwxr-xr-x 2 root root 6 Apr 11 2018 home lrwxrwxrwx 1 root root 7 4ba3c5252384 /]# yum install -y net-tools.x86_64 wget vim-enhanced passwd openssl openssh-server # 3.修改虚拟出来的 root 66 Nov 19 08:01 etc drwxr-xr-x 2 root root 6 Apr 11 2018 home lrwxrwxrwx 1 root root 7
ESXi是用于创建并运行虚拟机和虚拟设备的虚拟化平台。vCenter Server是一项服务,用于管理网络中连接的多个主机,并将主机资源池化。 虚拟机和虚拟基础架构 支持虚拟机的基础架构至少包含两个软件层:虚拟化层和管理层。在 vSphere 中,ESXi提供虚拟化功能,用于将主机硬件作为一组标准化资源进行聚合并将其提供给虚拟机。 服务器虚拟化 平台虚拟化 桌面虚拟化 网络虚拟化 存储虚拟化 四、CPU虚拟化 CPU作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。 六、网络虚拟化 在虚拟环境中,能够通过虚拟化的方式,构建虚拟以太网适配器和虚拟交换机。 网络虚拟化旨在在一个共享的物理网络资源之上创建多个虚拟网络 七、存储虚拟化 共享物理存储资源,通过存储虚拟化利用本地磁盘创建虚拟机的本地虚拟磁盘。
# CentOS7 KVM虚拟化技术 虚拟化介绍 KVM介绍 KVM实际操作 KVM配置网络 图形操作 结果 参考资料 # 虚拟化介绍 虚拟化:是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。 虚拟化层层种类:完全虚拟化、准虚拟化、系统虚拟化、桌面虚拟化 # KVM介绍 kVM 全称是 Kernel-Based Virtual Machine。 KVM 目前已成为学术界的主 流 VMM(虚拟机监控器)之一。KVM的虚拟化需要硬件支持(如 Intel VT技术戒者 AMD V技术)。是基于硬件的完全虚拟化。 virt-manager: KVM图形化管理工具 libvirt: 虚拟化服务 libguestfs-tools : 虚拟机的系统管理工具 virt-install : 安装虚拟机的实用工具 。 比如 virt-clone克隆工具就是这个包安装的 libvirt-python : python 调用libvirt 虚拟化服务的 api 接口库文件 开启并查看安装KVM后的服务 开启虚拟化服务 systemctl
6月26日 qemu 1.5.1发布 特点是: 1 实验性质的支持usb3.0 2 支持VMware的PVSCSI 设备 3 支持VMwarw的半虚拟化网卡 vmxnet3 4 初步支持在kvm上模拟 ARM架构 5 x86平台支持虚拟机的TPM,前提是有硬件TPM 6 支持cpu添加 具体改进可以查看以下链接 http://wiki.qemu.org/ChangeLog/1.5 7月1日 libvirt 1.1.0发布 主要是bug修改和小的功能提升 具体改进可以查看以下链接 http://www.libvirt.org/news.html 7月2日 fedora 19 发布 虚拟化方面最激动人心的功能是带存储的迁移即在线不需要共享存储迁移虚拟机 具体改进可以查看以下链接 https://fedoraproject.org/wiki/Releases/19/FeatureList 7月3日 libguest 1.23.7发布 2013-07-03
一、安装kvm虚拟化 #如果本身是图形化界面可忽略 [root@kvm-test ~]# yum -y groupinstall "GNOME Desktop" #安装GNOME桌面环境 # 用来管理虚拟机磁盘格式 #如果本身就是图形化界面可忽略下一步 [root@kvm-test ~]# ls -sf /lib/systemd/system/graphical.target 2、安装完毕后,需重启系统,执行下面命令对系统进行检查: [root@kvm-test ~]# cat /proc/cpuinfo | grep vmx #查看Intel的CPU是否支持虚拟化,若是AMD (图形化创建虚拟机可参考博文:图形化桌面新建虚拟机) [root@kvm-test ~]# mkdir -p /kvm/{iso,disk} [root@kvm-test ~]# ls /kvm/iso / #准备要安装的虚拟机操作系统文件 CentOS-7-x86_64-DVD-1611.iso [root@kvm-test ~]# qemu-img create -f raw
一、安装kvm虚拟化 #如果本身是图形化界面可忽略 [root@kvm-test ~]# yum -y groupinstall "GNOME Desktop" #安装GNOME桌面环境 # 用来管理虚拟机磁盘格式 #如果本身就是图形化界面可忽略下一步 [root@kvm-test ~]# ls -sf /lib/systemd/system/graphical.target 2、安装完毕后,需重启系统,执行下面命令对系统进行检查: [root@kvm-test ~]# cat /proc/cpuinfo | grep vmx #查看Intel的CPU是否支持虚拟化,若是AMD (图形化创建虚拟机可参考博文:图形化桌面新建虚拟机) [root@kvm-test ~]# mkdir -p /kvm/{iso,disk} [root@kvm-test ~]# ls /kvm/iso / #准备要安装的虚拟机操作系统文件 CentOS-7-x86_64-DVD-1611.iso [root@kvm-test ~]# qemu-img create -f raw
c.c.u.c.ComponentContext] (Timer-3:null) Starting com.cloud.ha.XenServerInvestigator_EnhancerByCloudStack_f77a7c2d
根据在I/O路径中实现虚拟化的位置不同,虚拟化存储可以分为主机的虚拟存储、网络的虚拟存储、存储设备的虚拟存储。根据控制路径和数据路径的不同,虚拟化存储分为对称虚拟化与不对称虚拟化。 通过存储虚拟化,应用程序就不会再与某个物理性的存储程序相联系了。 存储虚拟化可能帮助帮助存储容量扩增自动化。不需要手动的配置,存储虚拟化能够运用策略,分配更多的存储容量给所需的应用。 三层模型 根据云存储系统的构成和特点,可将虚拟化存储的模型分为三层:物理设备虚拟化层、存储节点虚拟化层、存储区域网络虚拟化层。 这个虚拟化层由虚拟存储管理模块在虚拟存储管理服务器上实现,以带外虚拟化方式管理虚拟存储系统的资源分配,为虚拟磁盘管理提供地址映射、查询等服务。 利用虚拟化技术,可以在统一的虚拟化基础架构中,实现跨数据中心的虚拟化管理。 政府信息系统:政府数据存储系统的建设正受到前所未有的重视。
1、Intel® VT 虚拟化技术概述 狭义的 Intel® VT 主要提供分别针对处理器、芯片组、网络的虚拟化技术。 抽象化的虚拟机硬件:即虚拟层呈现的虚拟化的硬件设备。虚拟机能够发现哪种硬件设施,完全由 VMM 决定。 2.4 X86 平台的虚拟化 ---- 正是因为 x86 平台指令集有上述缺陷,所以为了计算虚拟化技术在 x86 平台应用,各大虚拟化厂商推出了五花八门的虚拟化技术,其目的都是围绕“如何捕获模拟这 19 3、内存虚拟化 大型操作系统(比如 Linux)的都是通过虚拟内存进行内存管理,内存虚拟化需要对虚拟内存再进行虚拟化。 内存虚拟化技术主要包含两个方面:内存地址转换和内存虚拟化管理。 3.2 内存虚拟化管理技术 ---- 在虚拟化环境中,内存是保证虚拟机工作性能的关键因素。
,只需在虚拟层上运行操作系统和应用软件,和物理平台无关 在家用计算机的上安装常规软件属于非虚拟化,而在办公计算机上安装虚拟化软件就属于虚拟化应用了,典型的非虚拟化和虚拟化的物理架构如图1-1 所示 图1-7 可以将物理网卡视作虚拟交换机,虚拟机的虚拟网卡视作虚拟交换机的端口,这样可以轻松实现虚拟机的跨物理服务器访问,如图1-8 所示。 图3-29 以WinCC 服务器通过CP1623 和S7-400H 通信为例,就需要使用硬件透传功 能,ESXi 和虚拟机的架构如图3-30 所示。 图3-30 在工程师站上组态WinCC 和S7-400H 的集成STEP7 项目,与在实际计算机上一致,如图3-31 和图3-32 所示。 图3-33 在工程师站上组态WinCC 冗余服务器和S7-400H 的集成STEP7 项目,与在实际计算机上一致,如图3-34 和图3-35 所示。
yum install -y docker* docker pull nignx docker pull centos docker version docker search centos docker images docker pull centos docker ps -a docker -i -t -d centos /bin/bash
虚拟化 發佈於 2021-08-16 今天给公司搭建虚拟化平台,对其中用到的一些知识进行整理。 虚拟化平台 ---- 我们常说的虚拟化可以分为两种类型: TYPE I 和 TYPE II。 我们常见的 VMWare Workstation、VirtualBox、Parallels Desktop、Hyper-V 等均属于二型虚拟化软件,他们需要运行于宿主操作系统。 而企业级虚拟化平台例如 VMWare vSphere、KVM、Hyper-V server 等则属于一型虚拟化,他们直接运行于裸金属服务器。 公司虚拟化平台 ---- 公司新买的 DELL 服务器今天到了,要搭建虚拟化平台,由于自己对 ESXi 比较熟悉,因此决定采用该软件进行平台搭建。 创建虚拟机 创建虚拟机前,我们要先在存储中上载对应操作系统的镜像文件,创建虚拟机过程非常简单,在此不再赘述。
云原生运维实战第二季|PVE 虚拟化下 CentOS 7 虚拟机模板制作及自动开通完全指南大家好,欢迎来到运维有术欢迎来到云原生运维实战训练营系列课程第二季前言导图知识量阅读时长:10 分行:340单词 :3000+字符:8400+图片:18 张知识点定级:入门级PVE 控制台下虚拟机创建CentOS 7 虚拟机模板的制作Cloud-init 的安装配置PVE 虚拟机转换成模板PVE 命令行管理虚拟机和存储资源实战服务器配置 在这台裸服务器上,我们需要安装虚拟化软件来部署虚拟机。在虚拟化软件的选择上,既可以选择商业化的 VMware vSphere,也可以选择开源的 Proxmox Virtual Environment。 制作 CentOS 7 虚拟机模板为了后续在 PVE 主机上实现自动化开通配置虚拟机,本虚拟机模板安装 Cloud-init。2.1 通过页面创建虚拟机通过 PVE 管理控制台,创建虚拟机。 虚拟机-常规虚拟机-操作系统(选择 CentOS7 的安装 ISO)虚拟机-系统(建议勾选 Qemu 代理)虚拟机-磁盘(大小 40 GB,格式选择默认的 QEMU 映像格式)虚拟机-CPU(类别建议选择
目录虚拟化技术实现1. GPU虚拟化技术2. CPU虚拟化技术3. 容器化虚拟化技术4. 存储和网络虚拟化技术5. 算力并网技术容器和虚拟化1. 隔离性2. 资源利用率3. 启动时间4. 部署方式实例说明一种软件实现各类厂商多种型号算力资源池化和虚拟化的虚拟化技术实现算力共享平台在实现过程中,通常会采用多种虚拟化技术来优化算力资源的分配和利用。 CPU虚拟化技术CPU虚拟化是算力共享平台中的基础技术之一。通过CPU虚拟化,平台可以在物理服务器上运行多个虚拟机(VM),每个虚拟机都拥有独立的CPU资源。 容器化虚拟化技术容器化虚拟化是一种轻量级的虚拟化方式,它共享操作系统内核,但与其他容器隔离运行。在算力共享平台中,容器化技术(如Docker)被广泛应用于快速部署和隔离不同的应用或服务。 算力共享平台通常利用存储虚拟化技术来管理海量数据,为不同用户提供高效的存储服务。网络虚拟化:将网络资源进行隔离和虚拟化,提高网络资源的利用率和安全性。
) 3.虚拟网络类型 3.1桥接 Guest和Host连接到同一个交换机上(同一个网络内),通过桥接物理网卡,相当于直接连接到Host所在的网络 3.2 隔离模式 Guest可以访问统一虚拟交换机上的其他 充当路由器,开启转发(需要额外设置外网与Guest之间互访的路由) 二、安装KVM 1.安装KVM虚拟化相关包组 [root@svr5 桌面]# yum groupinstall virtualization virtualization Client” “virtualization Platform” 注意:如果操作系统语言是中文的话,需要使用中文.例如↓: [root@svr5 桌面]# yum groupinstall 虚拟化 虚拟化平台 虚拟化工具 虚拟化客户端 2.启动服务/设置服务为开机启动 [root@svr5 桌面]# /etc/init.d/libvirtd restart [root@svr5 桌面]# chkconfig 2.新建并安装一台虚拟机 ? ? ? ? ? ? ? 至此,一台新的KVM虚拟机就创建完成了。
座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页 前言 本章将会讲解云计算,内存虚拟化的知识 一.内存虚拟化 内存虚拟化抽象了物理内存,虚拟机每个进程都被赋予一块连续的,超大的虚拟内存空间 1.内存虚拟化类型 全虚拟化 半虚拟化 硬件辅助内存虚拟化 ---- 全虚拟化 为每个VM维护一个影子页表记录虚拟化内有与物理内存的映射关系。 内存复用技术有: 内存气泡:虚拟化层将较空闲VM内存,分配给内存使用较高的虚拟机。内存的回收和分配由虚拟化层实现,虚拟机上的应用无感知,提高物理内存利用率。 开启了内存虚拟化(这里以物理内存150%)物理内存由6G变为逻辑上的9G(虚拟上的9G)则每台虚拟机内存为3G. ---- 二.I/O虚拟化 1.I/O虚拟化类型 ---- 全虚拟化 通过软件模拟的形式模拟 硬件辅助虚拟化 通过硬件的辅助可以让虚拟机直接访问物理设备,而不需要通过VMM。
虚拟化资源 1.1 虚拟化对象 CPU虚拟化: 目标是使虚拟机上的指令能被正常执行,且效率接近物理机 内存虚拟化: 目标是能做好虚拟机内存空间之 间的隔离,使每个虚拟机都认为自己拥有了整个内存地址 1.2 虚拟化过程 全虚拟化: 使用VMM实现CPU、内存、设备I/O的虚拟化,而Guest OS和计算机系统硬件都不需要进行修改。 优点 缺点 不需要修改guest os 虚拟化层的开销大 半虚拟化: 使用VMM实现CPU和内存虚拟化,设备I/O虚拟化由Guest OS实现。 优点 缺点 虚拟化层开销小,性能好 需要修改guest os 硬件辅助虚拟化: 借助硬件(主要是处理器)的支持来实现高效的全虚拟化。 优点 缺点 让物理硬件直接支持虚拟化功能能够识别敏感指令 需要CPU支持虚拟化 1.3 IO 虚拟化 全虚拟化 VM–>Hypervisor–>QEMU(Domain0)–>IO设备 半虚拟化
前面 虚拟化技术总览 中从虚拟平台 VMM 的角度,将虚拟化分为 Hypervisor 模型和宿主模型,如果根据虚拟的对象(资源类型)来划分,虚拟化又可以分为计算虚拟化、存储虚拟化和网络虚拟化,再细一些 ,又有中断虚拟化,内存虚拟化,字符/块设备虚拟化,网络功能虚拟化等。 ,这两个词基本上是虚拟化的终极定义了,带着这两个词去看每一种虚拟化类型,会发现很容易理解和记忆。 CPU 软件虚拟化 基于软件的 CPU 虚拟化,故名思议,就是通过软件的形式来模拟每一条指令。通过前面的文章我们知道常用的软件虚拟化技术有两种:优先级压缩和二进制代码翻译。 CPU 硬件虚拟化 上面的这种截获再模拟的纯软件的虚拟化方式,势必是性能非常低的。
负载均衡技术可以方便的去增加集群中设备或链路的数量 高可靠性:单个甚至多个设备发生故障,也不会导致业务中断 可管理性:管理员可以方便的进行集中管理 透明性:对用户透明,用户感知不到也不必要只要网络结构 易扩容:在虚拟化 当计算节点上虚拟机的数量一定的时候,可以节省计算节点的内存数量 虚拟机特性: 虚拟机的快速部署 可以通过模板和复制的方式实现虚拟机的快速部署 模板部署虚拟机 模板本质也是一台虚拟机,同样包含磁盘文件和配置文件 模板部署出来的虚拟机是相互独立的,适用于大批量部署虚拟机。 可以保证虚拟机系统的一致性,同时还能去除差异性参数(IP、SID、MAC) 虚拟机克隆: 使用虚拟机本身快速部署出一台虚拟机。 虚拟机克隆是在某一个时间点对源虚拟机进行完全的复制,被克隆出来的虚拟机和源虚拟机配置信息一模一样,包括IP、SID、MAC。 虚拟机资源的热添加 在虚拟机处于开机状态下, 可以增加虚拟机的计算、存储、网络等资源 虚拟机的Console控制 可以不依赖虚拟机的网络,只求虚拟化平台有网,那么就可以对虚拟机进行控制和管理 虚拟机快照
内存虚拟化 除了 CPU 虚拟化,另一个关键是内存虚拟化,通过内存虚拟化共享物理系统内存,动态分配给虚拟机。 虚拟机的内存虚拟化很象现在的操作系统支持的虚拟内存方式,应用程序看到邻近的内存地址空间,这个地址空间无需和下面的物理机器内存直接对应,操作系统保持着虚拟页到物理页的映射。 ? 可见,KVM 为了在一台机器上运行多个虚拟机,需要增加一个新的内存虚拟化层,也就是说,必须虚拟 MMU 来支持客户操作系统,来实现 VA -> PA -> MA 的翻译。 VMM 内存虚拟化的实现方式: 软件方式:通过软件实现内存地址的翻译,比如 Shadow page table (影子页表)技术 硬件实现:基于 CPU 的辅助虚拟化功能,比如 AMD 的 NPT 和 除了降低各部虚拟机器在切换时所造成的效能损耗外,硬体指令集也比虚拟化软体处理来得可靠与稳定。