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

KVM安装以及使用

时间:2024-12-24 13:20:59浏览次数:9  
标签:配置文件 -- qcow2 虚拟机 KVM centos7 使用 disk 安装

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/18627206

相关文章

  • Win10 系统安装 Linux 子系统教程(WSL2 + Ubuntu 20.04 + xlaunch桌面 )
    安装WSL1安装WSL1(1)启用“适用于Linux的Windows子系统”可选功能需要先启用“适用于Linux的Windows子系统”可选功能,然后才能在Windows上安装Linux分发。可以使用命令行的方式,也可以使用图形界面的方式。图形界面方式在【设置->更新与安全->开发者选项】中开......
  • 三目运算符的使用
    Timing_Length=(Timing_Length==3)?0:Timing_Length++;在C语言(以及很多类似的编程语言中),三目运算符(?:)要求其第二和第三操作数(也就是?后面和:后面的表达式)是能返回一个确定值的常规表达式。在Timing_Length=(Timing_Length==3)?0:Timing_Length++;这个语句里,Ti......
  • Ubuntu22.04 LTS 安装nvidia显卡驱动
    准备跑老师给定的Github上的多模态源码,但是用了这么久ubuntu还没有尝试过安装nvidia驱动,好在也是一次成功,于是记录下来。借鉴的是https://blog.csdn.net/Eric_xkk/article/details/131800365这篇文章,按照流程来基本没有问题,不过个人觉得有些步骤比较冗余,所以记录下来主要流程关......
  • WSL2 ubuntu18.04 使用xfce4时Xlaunch黑屏问题以及解决,X server already running on d
    显示xfce4启动成功却没有画面显示在Ubuntu终端输入startxfce4启动X服务时,显示:/usr/bin/startxfce4:Xserveralreadyrunningondisplay10.255.255.254:0,且Xlaunch黑屏无输入。如图所示:分析原因:出现Xserveralreadyrunningondisplay10.255.255.254:0说明X服务......
  • 使用http请求触发jenkins构建
    我的需求:每当有一个post请求发送,触发我jenkins的一个构建,生成一个新docker实例。安装jenkins使用docker构建镜像:https://docker.unsee.techdockerpulljenkins/jenkins:ltsmkdir-p~/jenkins_homesudochown1000:1000~/jenkins_home启动dockerrun-d-p8080:808......
  • Centos8 安装 navidrome
    navidrome是一个开源的,用于搭建个人音乐库的软件,洛雪的六音源经常不可用,正好我有一台低配的云服务器,就想着搭一个自己的音乐库。[navidrome下载地址](Releases·navidrome/navidrome)网上大部分教程都是用docker拉镜像,启动容器即可使用,简单方便,但因为我的服务器配置较低,再装doc......
  • 记一次百度地图JSAPI的使用
    百度开放平台百度地图开放平台注册登录百度账号进入控制台创建应用,复制你的key(自己找,就在网页上,找不到就转行吧)页面代码引入百度地图JS代码<scripttype="text/javascript"src="https://api.map.baidu.com/api?v=3.0&ak=你的key"></script>在哪引都没事,无论你是Vue项......
  • 推荐使用画境来免费观看奈飞等流媒体平台
    最近发现了一个免费看奈飞等各大流媒体网站的app,下载地址:https://video1.iamok.in/download.html效果图: 奈飞: 迪士尼: 亚马逊primevideo: HBO: 目前只支持PC版本,但可以借助串流工具到电视观看,有兴趣的小伙伴快去试试吧~......
  • 关于dpkg打包成deb格式的安装包
    deb格式适用于Ubuntu、deepin、UOS等操作系统,适用于各种架构mips64el,amd64、X86等架构的服务器。Ubuntu用dpkg将qt可执行程序制作成deb安装包一、用linuxdeployqt工具打包可执行程序此步骤可将可执行程序依赖的动态库等打包,过程点击此处查看。二、dpkg打包前的准备用dpkg打包前需......
  • 使用umi的插件功能编写一个自定义插件,实现在打包前去除代码中所有svg图片的title内容
    1.在src下面新建plugins文件夹,并在其中创建你的插件文件,比如removeSvgTitle.js。2.编写插件代码:/**Description:当调用打包命令时,去除代码中所有svg图片的title内容,本地打包会改变源文件,提交会比较多,无其他影响*@Author:aoshilin*@Date:2024-09-2711:23:25*......