首页 > 其他分享 >KVM安装以及使用

KVM安装以及使用

时间:2024-11-22 14:17:43浏览次数:1  
标签:配置文件 -- qcow2 虚拟机 KVM centos7 使用 disk 安装

KVM虚拟化使用

1、安装

1.1减查环境是否支持虚拟化

egrep -o 'vmx|svm' /proc/cpuinfo

1.2.关闭selinux、firewalld、NetworkManager服务。

setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
systemctl stop firewalld
systemctl disable firewalld
systemctl stop NetworkManager
systemctl disable NetworkManager

1.3安装所需要的组件

yum -y install libvirt virt-install qemu-kvm
#如果服务器支持界面,可以安装virt-manager管理起来比较方便

2、启动libvirtd服务

systemctl start libvirtd
systemctl enable libvirtd

3、网络配置

3.1 NAT模式

NAT网络是虚拟机默认的网络,安装好KVM后就会有一个网卡 “virbr0”,默认使用的地址是:192.168.122.0网段,该virbr0 ip地址 也是使用nat网络虚拟机的网关,虚拟机上网是通过防火墙配置nat转换规则实现的。

cat >>/etc/sysctl.d/kvm.conf<< 'EOF'
net.ipv4.ip_forward=1
EOF
sysctl -p
cat /proc/sys/net/ipv4/ip_forward

3.2 网络管理

·查看网桥状态:brctl show
·启用网桥:brctl stp br0 on
·关闭网桥:brctl stp br0 off

3.2 桥接模式(网卡有两个IP的时候好像有问题)

#创建网桥并把物理网卡桥接到br0网桥: virsh iface-bridge eth0 br0
#注销删除网桥:virsh iface-unbridge br0

配置网卡有可能会导致主机掉线,需要小心谨慎,最后支持本地连接。

4、创建虚拟机

4.1创建centos虚拟机,网络为桥接模式

virt-install \
--virt-type=kvm \
--os-variant=rhel7 \
--name=centos7 \
--memory=1024 \
--vcpu=1 \
--disk=/data/KVM/centos7/centos7_disk.qcow2,format=qcow2,size=10 \
--cdrom=/data/ISO/CentOS-7-x86_64-Everything-2207-02.iso \
--bridge=br0 \
--graphics vnc,listen=0.0.0.0 \
--noautoconsole

4.2创建windows虚拟机,网络为NAT模式

virt-install \
--name=win10 \
--memory=4096 \
--disk=/data/KVM/win10/win10_disk.qcow2,format=qcow2,size=40 \
--vcpus 2 \
--os-variant=win10 \
--network network=default \
--graphics vnc,listen=0.0.0.0 \
--cdrom=/data/ISO/win10.iso \
--noautoconsole

5、虚拟机管理

导出虚拟机配置:virsh dumpxml centos7 > centos7.xml
注销(删除)虚拟机:virsh undefine centos7
	注:在虚拟机开机状态下取消定义虚拟机并不会马上消失,而在挂机之后就会消失,一般建议对虚拟机的配置文件
       进行备份。同时删除之后要把配置文件以及它的磁盘删除。
通过配置文件恢复虚拟机:virsh define centos7.xml

6、磁盘管理

磁盘格式:
	raw:裸格式,占用空间比较大,不支持快照功能,性能较好,不方便传输。
	qcow2:cow(copy on write)占用空间小,支持快照,性能比 raw 差一点,方便传输。
查看磁盘信息:qemu-img info centos7_disk.qcow2
创建磁盘:qemu-img create -f qcow2 centos7_disk.qcow2 10G 
调整磁盘容量:qemu-img resize centos7_disk.qcow2 50G
	注:生产环境中只能调大,调小会导致数据丢失。这里是调到50G。
磁盘格式转换:qemu-img convert -f raw -O qcow2 centos7_disk.raw centos7_disk.qcow2
	注:磁盘格式转换之前需要先关闭虚拟机,转换完之后要导出配置文件,改完之后再通过配置文件恢复虚拟机。

7.内存调整

#先关闭主机
virsh edit <主机名>
#找到<memory unit='KiB'>xxx</memory>和<currentMemory unit='KiB'>4194304</currentMemory>并修改,如这里是4G
<memory unit='KiB'>4194304</memory>
<currentMemory unit='KiB'>4194304</currentMemory>

8.虚拟机克隆(完整克隆)

virt-clone --auto-clone -o <源虚拟机名称> -n <新虚拟机名称>

手动克隆

#1、复制模板虚拟机磁盘为新的磁盘
cp node1 node2
#2、复制模板虚拟机的配置文件为新的配置文件
virsh dumpxml node1>node2
#3、对新的配置文件做出调整
· 修改name
· 删除uuid (直接删除所在行)
· 删除mac地址 (直接删除所在行)
· 修改磁盘路径 (直接删除所在行)

#4、导入新的配置生成新的克隆的虚拟机
virsh define node2.xml

标签:配置文件,--,qcow2,虚拟机,KVM,centos7,使用,disk,安装
From: https://www.cnblogs.com/luguojie/p/18562798

相关文章

  • 校园圈子论坛二手社团跑腿系统需要多少钱?安装前后端需要多长时间?
    关于校园圈子论坛二手社团跑腿系统的开发费用,这取决于多个因素,包括系统的功能复杂度、开发团队的经验和收费标准、是否需要定制开发等。一般来说,如果系统包含基本的用户注册与登录、二手交易、跑腿服务、论坛交流等功能,并且采用较为成熟的技术框架进行开发,那么费用可能会相对较......
  • 使用Fortran实现基本图像识别
    Fortran作为一门高性能科学计算语言,以其强大的数值计算能力而闻名。它在处理多维数组和矩阵运算方面表现出色,非常适合用于实现图像处理任务。下面展示如何用Fortran实现简单的图像边缘检测。代码实现以下代码读取灰度图像数据,并利用Sobel算子进行边缘检测:fortran更多内容访问t......
  • 使用Python实现基本图像识别
    Python是一种强大且易于使用的编程语言,广泛应用于数据科学和图像处理领域。通过其丰富的库支持,我们可以快速实现图像处理任务,例如边缘检测。以下示例展示了如何用Python和基础工具实现简单的边缘检测。代码实现以下代码利用Sobel算子进行灰度图像的边缘检测:python更多内容访问......
  • 电源模块的使用方法 IN和OUT说明 SMP15-35W系列
    电源模块的使用方法IN和OUT说明SMP15-35W系列电源是整个电路可靠工作的核心部分。由于电源电路电流及发热量大,容易出现故障。今天为大家介绍电源的使用方法,BOSHDIA电源模块将电源电路全部集成到一个很小的PCB上,从而实现输出稳定电压及大电流的模块。电源模块可直接贴装在印刷......
  • win10同时安装Mysql5和mysql8
    1.下载安装包,解压。 2.添加环境变量,导入各自的bin到系统变量Path中。    3.进入mysql5的安装目录,新建my.ini文件,粘贴信息,注意更改安装目录路径。1[mysql]2#设置mysql客户端默认字符集3default-character-set=utf84[mysqld]5#设置3305端口6po......
  • 第八章 数组的定义和使用
    一 数组的创建1.作用:用于批量创建相同类型的变量2.要求:相同类型变量3.初始化:(1)动态初始化:定义其长度,内部不具体赋值(2)静态初始化:直接赋值,由其所赋的值来确定注:(1)有带newint[]的初始化和赋值/赋长度可以分两步写若单纯赋值只带{}的,则不可以分开写(2)动态初始化和静态初始......
  • 鸿蒙实战:使用显式Want启动Ability
    文章目录1.实战概述2.实现步骤2.1创建鸿蒙应用项目2.2修改Index.ets代码2.3创建SecondAbility2.4创建Second.ets3.测试效果4.实战总结5.拓展练习-启动文件管理器5.1创建鸿蒙应用项目5.2修改Index.ets代码5.3测试应用运行效果1.实战概述本实战详细阐......
  • 鸿蒙实战:使用隐式Want启动Ability
    文章目录1.实战概述2.实现步骤2.1创建鸿蒙应用项目2.2修改Index.ets代码2.3创建LuzhouAbility2.4创建Luzhou页面2.5设置模块配置文件3.测试效果4.实战总结1.实战概述本次鸿蒙应用实战,先创建项目“ImplicitWantStartAbility”,接着修改Index.ets等代码构建......
  • VMware使用及CentOS 7安装配置
    本文是在VMware虚拟机下安装CentOS7的,并不是在物理机下直接安装。无论是在学习上还是工作上都建议在虚拟机安装Linux系统来进行实验。这样就算实验失败,或者系统崩溃。只需要使用虚拟机的快照功能恢复到上一个快照节点,就可以继续我们的实验,而不需要在物理机上面重新安装Linux。1......
  • [python] Python异步编程库asyncio使用指北
    Python的asyncio模块提供了基于协程(coroutines)的异步编程(asynchronousprogramming)模型。作为一种高效的编程范式,异步编程允许多个轻量级任务并发执行,且相比传统的多线程模型,具有更低的内存消耗。因此,asyncio在需要高并发处理的场景中,尤其是在Web开发、网络请求、API调用和套接字......