千家信息网

部署KVM虚拟化平台------搭建

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,一 、部署KVM虚拟化平台hyper-v是windows中的虚拟化1、KVM模块直接整合在Linux内核中,kvm是内核模块,虚拟机与kvm模块之间为管理工具2、KVM组成1.KVM Driver--
千家信息网最后更新 2025年01月24日部署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/bashecho "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` quitdo    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\n" >> /etc/fstab        mount -a &> /dev/null        break ;;    quit)        break;;    *)        echo "wrong disk,please check again";;    esacdone

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.153NETMASK=255.255.255.0GATEWAY=192.168.142.1#重启网络服务service network restart

8、图形化管理

virt-manager##开启图形化管理


添加存储池disk


添加disk存储卷

添加存储卷

添加存储池iso


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

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

0