一 、部署KVM虚拟化平台

hyper-v是windows中的虚拟化

1、KVM模块直接整合在Linux内核中,kvm是内核模块,虚拟机与kvm模块之间为管理工具

2、KVM组成

1.KVM Driver

---虚拟机创建

---虚拟机内存分配

---虚拟CPU寄存器读写

---虚拟CPU运行

2.QEMU (经过简化与修改)

---模拟PC硬件的用户控件组件

---提供I/O设备模型及访问外设的途径

二、虚拟化的三种模式

**1、客户模式:典型的虚拟机环境(虚拟网卡、内存、硬盘);

2、用户模式:工具层,下面是内核(驱动进行的资源分配);

3、kvm driver:内核态,人为不可控制(kvm驱动接收用户态操作指令,控制虚拟机在内核态的资源分配)。

4、虚拟机就是一个独立的进程,虚拟机内的用户各个硬件叫做线程

5、全虚和半虚的区别

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

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

三、KVM工作原理

工作流程:首先启动一个虚拟化管理软件,开始启动一个虚拟机,通过ioctl等系统调用向内核中申请指定的资源,搭建好虚拟环境,启动虚拟机内的系统,虚拟机内的系统向内核反馈相关资源申请处理,如果是io请求,则提交给用户模式下的qemu处理,非io请求则将处理结果反馈给客户模式。

四、KVM实操演练

1、安装流程

2、kvm网络模式:用户(NAT)和桥接模式,本次实操采用桥接模式

3、kvm图形化管理

4、添加新硬盘,并开启虚拟化功能

5、分区、格式化并挂载硬盘(以下为脚本)

#! /bin/bash

echo "the disks exist list:"

fdisk -l |grep ‘磁盘 /dev/sd[a-z]‘

echo "=================================================="

PS3="chose which disk you want to create:"

select VAR in `ls /dev/sd*|grep -o ‘sd[b-z]‘|uniq` quit

do

case $VAR in

sda)

fdisk -l /dev/sda

break ;;

sd[b-z])

#create partitions

echo "n

p

w" | fdisk /dev/$VAR

#make filesystem

mkfs.xfs -i size=512 /dev/${VAR}"1" &> /dev/null

#mount the system

mkdir -p /data/${VAR}"1" &> /dev/null

echo -e "/dev/${VAR}"1" /data/${VAR}"1" xfs defaults 0 0

" >> /etc/fstab

mount -a &> /dev/null

break ;;

quit)

break;;

*)

echo "wrong disk,please check again";;

esac

done

6、安装KVM一系列工具、环境包

#安装桌面环境组件包

yum groupinstall "GNOME Desktop" -y

#安装KVM模块

yum install qemu-kvm -y

#安装KVM调试工具

yum install qemu-kvm-tools -y

#安装构建虚拟机的命令行工具

yum install virt-install -y

#安装qemu组件,创建磁盘,启动虚拟机

yum install qemu-img -y

#安装网络支持工具

yum install bridge-utils -y

#安装虚拟机管理工具

yum install libvirt -y

#安装图像化管理虚拟机

yum install virt-manager -y

#查看CPU是否支持虚拟化

egrep ‘(vmx|svm)‘ /proc/cpuinfo

#查看kvm模块是否安装

lsmod | grep kvm

#开启libvirtd服务

systemctl start libvirtd

#查看libvirtd服务状态

systemctl status libvirtd

#开机自启动libvirtd服务

systemctl enable libvirtd

7、部署虚拟化

#切换至挂载点

cd /data

#创建备份目录

mkdir vdisk viso

#后台复制镜像到备份目录

cp -r /mnt/CentOS-7-x86_64-DVD-1708.iso /data/viso/ &

#切换网卡配置目录

cd /etc/sysconfig/network-scripts/

#复制ens33 网卡配置文件作为桥接网卡的模板

cp -p ifcfg-ens33 ifcfg-br0

#编辑ens33 网卡配置文件

vim ifcfg-ens33

#尾行追加桥接模块

BRIDGE=br0

#编辑桥接 网卡配置文件

vim ifcfg-br0

#替换类型为bridge桥接模式

TYPE=bridge

#修改为静态模式

BOOTPROTO=static

#改名

NAME=br0

#改驱动名称

DEVICE=br0

#追加IP地址,掩码和网关

IPADDR=192.168.142.153

NETMASK=255.255.255.0

GATEWAY=192.168.142.1

#重启网络服务

service network restart

8、图形化管理

virt-manager

##开启图形化管理

添加存储池disk

添加disk存储卷

添加存储卷

添加存储池iso

关闭创建,即可配置生成虚拟机

选择主机引导时启动虚拟机,开始安装,linux中的kvm虚拟机即可开始安装。。。。

linux搭建虚拟化平台报告,部署KVM虚拟化平台------搭建(示例代码)相关推荐

  1. linux搭建虚拟化平台报告,Centos部署KVM虚拟化平台(可跟做)

    Centos部署KVM虚拟化平台(可跟做) 发布时间:2020-08-19 05:47:46 来源:51CTO 阅读:4210 作者:俊伟祺i 一.KVM概述 KVM是Kernel Virtual M ...

  2. Docker容器与虚拟化技术——部署KVM虚拟化平台

    部署KVM虚拟化平台 一.搭建KVM虚拟化平台 1.前置知识点 (1)什么是虚拟化         把硬件资源从物理方式转变为逻辑方式,打破原有物理结构,使用户可以灵活管理这些资源,并且允许1台物理机 ...

  3. Linux部署KVM虚拟化平台

    了解KVM:         Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使用Li ...

  4. 部署KVM虚拟化平台

    文章目录 一.云计算概述 二.虚拟化产生背景 2.1虚拟化背景 2.2虚拟化技术 2.3虚拟化技术实现的方式 2.4虚拟化类型 2.5虚拟化的优点和缺点 2.5.1优点 2.5.2缺点 三.KVM简介 ...

  5. 部署KVM 虚拟化平台

    文章目录 前言 虚拟化产生背景 虚拟化技术发展 一.虚拟化技术 1.1 概述 1.2 kvm虚拟化类型 1.3 kvm特性 1.4 KVM模式 1.5 KVM虚拟化架构/三种模式 1.6 KVM原理 ...

  6. 搭建kvm虚拟化平台和管理kvm虚拟化平台

    一.搭建kvm虚拟化平台 1,安装前准备:启用虚拟化支持,添加内存和内核 2,安装kvm服务 挂载光盘 2)安装kvm调试工具 3) 安装管理虚拟机命令 4) 安装KVM管理控制台 3.启动虚拟化服务 ...

  7. 【区块链技术开发】 Solidity使用Truffle Box工具实现预构建模板、自动化部署、创建智能合约示例代码

    专栏:区块链技术开发 目录 1.介绍Truffle Box 2.Truffle Box功能方法 3.Truffle Box模板案例 truffle Box预构建模板的示例代码 运行构建模板的示例代码 ...

  8. 部署KVM虚拟化(单网桥与多网桥VLAN模式)

    本案例单网桥模式实验在虚拟机中部署 1.开启虚拟机虚拟化功能 2.关闭selinux和firewalld 3.通过命令查看server是否支持虚拟化 -- egrep '(vmx|svm)' /pro ...

  9. centos7.3部署kvm虚拟化

    一.配置yum源:在自带的yum外,再配置个epel的yum 源. 二.安装: yum install qemu-kvm libvirt virt-install bridge-utils -y 三. ...

最新文章

  1. 网络服务-DNS 域名系统服务
  2. 达梦数据库查看当前执行的查询并杀死session
  3. 四川c语言二级成绩查询,四川省计算机等级考试二级C语言考试分析(hcy__ ).ppt
  4. 【Python】用于在 Python 中处理 PDF 文件的 PyPDF2 库
  5. linux如何判断网线插入_斜口钳和网线钳制作网线!
  6. memcache 总结笔记
  7. vue保存页面的值_vue中使用localStorage存储信息
  8. 不规则图形数格子的方法_北师大版五年级数学上册数学6.1组合图形的面积微课堂、同步练习、图文解读...
  9. 两个向量的点乘和叉乘怎么算_【解析几何】赋值法(点乘双根法)解决解析几何大题...
  10. Python案例篇:爬取分析大型招聘网站Python岗
  11. XDebug的配置和使用(审计方法)
  12. 蓝桥杯试题开灯游戏c语言,[蓝桥杯][算法提高VIP]开灯游戏 (C++代码)
  13. 树算法系列之三:GBDT
  14. 【数据结构】线性处理字符串中指定字串的个数问题
  15. java实现复数之间加减乘运算_用java实现复数的加减乘除运算(改进第1次)
  16. thinkphp内核开源商城APP小程序H5开源源码讲解
  17. 手机还能做电路仿真啊!电子电路兴趣爱好者福音!
  18. VueX模块化使用(超级实用)
  19. 量化交易学习——熟读github上的开源交易策略框架
  20. SubType.prototype.constructor = SubType原因

热门文章

  1. java xml导出_java 导出xml文件的四种方式
  2. yii 1.4 constant.php,yii 中设置提示成功信息,错误提示信息,警告信息
  3. Unable to locate tools.jar
  4. Android PopupWindow使用,下拉式PopupWindow,底部式PopupWindow
  5. ALIN10129-自查方案
  6. 从底层重学 Java 之 BigInteger 大整数 Gitchat连接
  7. jquery ajax json转换出错Invalid JSON
  8. MySQL实现当前数据表的所有时间都增加或减少指定的时间间隔
  9. mysql实现decode_Oracle中的DECODE()函数,MySQL中怎么实现DECODE()函数
  10. with open的使用