linux搭建虚拟化平台报告,部署KVM虚拟化平台------搭建(示例代码)
一 、部署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虚拟化平台------搭建(示例代码)相关推荐
- linux搭建虚拟化平台报告,Centos部署KVM虚拟化平台(可跟做)
Centos部署KVM虚拟化平台(可跟做) 发布时间:2020-08-19 05:47:46 来源:51CTO 阅读:4210 作者:俊伟祺i 一.KVM概述 KVM是Kernel Virtual M ...
- Docker容器与虚拟化技术——部署KVM虚拟化平台
部署KVM虚拟化平台 一.搭建KVM虚拟化平台 1.前置知识点 (1)什么是虚拟化 把硬件资源从物理方式转变为逻辑方式,打破原有物理结构,使用户可以灵活管理这些资源,并且允许1台物理机 ...
- Linux部署KVM虚拟化平台
了解KVM: Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使用Li ...
- 部署KVM虚拟化平台
文章目录 一.云计算概述 二.虚拟化产生背景 2.1虚拟化背景 2.2虚拟化技术 2.3虚拟化技术实现的方式 2.4虚拟化类型 2.5虚拟化的优点和缺点 2.5.1优点 2.5.2缺点 三.KVM简介 ...
- 部署KVM 虚拟化平台
文章目录 前言 虚拟化产生背景 虚拟化技术发展 一.虚拟化技术 1.1 概述 1.2 kvm虚拟化类型 1.3 kvm特性 1.4 KVM模式 1.5 KVM虚拟化架构/三种模式 1.6 KVM原理 ...
- 搭建kvm虚拟化平台和管理kvm虚拟化平台
一.搭建kvm虚拟化平台 1,安装前准备:启用虚拟化支持,添加内存和内核 2,安装kvm服务 挂载光盘 2)安装kvm调试工具 3) 安装管理虚拟机命令 4) 安装KVM管理控制台 3.启动虚拟化服务 ...
- 【区块链技术开发】 Solidity使用Truffle Box工具实现预构建模板、自动化部署、创建智能合约示例代码
专栏:区块链技术开发 目录 1.介绍Truffle Box 2.Truffle Box功能方法 3.Truffle Box模板案例 truffle Box预构建模板的示例代码 运行构建模板的示例代码 ...
- 部署KVM虚拟化(单网桥与多网桥VLAN模式)
本案例单网桥模式实验在虚拟机中部署 1.开启虚拟机虚拟化功能 2.关闭selinux和firewalld 3.通过命令查看server是否支持虚拟化 -- egrep '(vmx|svm)' /pro ...
- centos7.3部署kvm虚拟化
一.配置yum源:在自带的yum外,再配置个epel的yum 源. 二.安装: yum install qemu-kvm libvirt virt-install bridge-utils -y 三. ...
最新文章
- 网络服务-DNS 域名系统服务
- 达梦数据库查看当前执行的查询并杀死session
- 四川c语言二级成绩查询,四川省计算机等级考试二级C语言考试分析(hcy__ ).ppt
- 【Python】用于在 Python 中处理 PDF 文件的 PyPDF2 库
- linux如何判断网线插入_斜口钳和网线钳制作网线!
- memcache 总结笔记
- vue保存页面的值_vue中使用localStorage存储信息
- 不规则图形数格子的方法_北师大版五年级数学上册数学6.1组合图形的面积微课堂、同步练习、图文解读...
- 两个向量的点乘和叉乘怎么算_【解析几何】赋值法(点乘双根法)解决解析几何大题...
- Python案例篇:爬取分析大型招聘网站Python岗
- XDebug的配置和使用(审计方法)
- 蓝桥杯试题开灯游戏c语言,[蓝桥杯][算法提高VIP]开灯游戏 (C++代码)
- 树算法系列之三:GBDT
- 【数据结构】线性处理字符串中指定字串的个数问题
- java实现复数之间加减乘运算_用java实现复数的加减乘除运算(改进第1次)
- thinkphp内核开源商城APP小程序H5开源源码讲解
- 手机还能做电路仿真啊!电子电路兴趣爱好者福音!
- VueX模块化使用(超级实用)
- 量化交易学习——熟读github上的开源交易策略框架
- SubType.prototype.constructor = SubType原因
热门文章
- java xml导出_java 导出xml文件的四种方式
- yii 1.4 constant.php,yii 中设置提示成功信息,错误提示信息,警告信息
- Unable to locate tools.jar
- Android PopupWindow使用,下拉式PopupWindow,底部式PopupWindow
- ALIN10129-自查方案
- 从底层重学 Java 之 BigInteger 大整数 Gitchat连接
- jquery ajax json转换出错Invalid JSON
- MySQL实现当前数据表的所有时间都增加或减少指定的时间间隔
- mysql实现decode_Oracle中的DECODE()函数,MySQL中怎么实现DECODE()函数
- with open的使用