云服务器免费试用

kvm虚拟机(kvm虚拟机和vmware区别)

服务器知识 0 1506

本文目录:

  • 1、kvm虚拟化技术实现原理
  • 2、KVM:virt-install创建虚拟机
  • 3、安装kvm虚拟机并导入导出
  • 4、kvm多虚拟机崩溃
  • 5、KVM虚拟机直连存储(V3700)
  • 6、kvm虚拟机收费吗

kvm虚拟化技术实现原理

Qemu, PearPC, Bochs, ...

VMWare Workstation, VirtualBox, VMWare Server, Parallels Desktop, KVM(hvm), XEN(hvm)

LXC, OpenVZ, libcontainer, runC, rkt, Linux V Servers, Virtuozzo, ...

wine

jvm, pvm, ...

Type-I:Hypervisor直接运行于硬件;

Type-II:Hypervisor运行主机OS之上;

硬件级物理内存映射到虚拟机

KVM 是基于虚拟化扩展(Intel VT 或者 AMD-V)的 X86 硬件的开源的 Linux 原生的全虚拟化解决方案。KVM 中,虚拟机被实现为常规的 Linux 进程,由标准 Linux 调度程序进行调度;虚机的每个虚拟 CPU 被实现为一个常规的 Linux 进程。这使得 KMV 能够使用 Linux 内核的已有功能。

但是,KVM 本身不执行任何硬件模拟,需要客户空间程序通过 /dev/kvm 接口设置一个客户机虚拟服务器的地址空间,向它提供模拟的 I/O,并将它的视频显示映射回宿主的显示屏。目前这个应用程序是 QEMU。

KVM模块load进内存之后,系统的运行模式:

扫描物理内存,发现多个虚拟机实例有相同的内存空间,合并成为一个共享内存空间,节省内存。

运行中的一个kvm虚拟机就是一个qemu-kvm进程,运行qemu-kvm程序并传递给它合适的选项及参数即能完成虚拟机启动,终止此进程即能关闭虚拟机;

kvm:核心模块

CentOS 7创建物理桥,使用内核自带的桥接模块实现:

桥接口配置文件保留地址信息;

物理网卡配置文件:

删除地址、掩码和网关等相关的配置,添加

重启网络服务即可:

此时会断网,到虚拟机重启一下,发现已生成网桥,但还要配置网桥的dns,否则无法上网。

其他终端图形登录[root@node-60 ~]# ssh -X root@192.168.1.64

参考链接:

KVM:virt-install创建虚拟机

grep -E 'vmx|svm' /proc/cpuinfo

#-E grep的扩展模式

#当前cpu是否支持硬件虚拟化

lsmod | grep kvm

#检查是否加载kvm模块,kvm只是一个linux模块,在kvm安装完成后整个linux系统会变成一个hypervisor(虚拟机管理层)。而qemu和virt、virsh相当于是两个家族,qemu只支持命令行模式(创建、删除、管理等操作),virt-install创建虚拟机,virsh只能管理虚拟机(无法创建),virt-manager提供web界面。

总结来说,libvirt家族和qemu家族都可以实现对虚拟机的生命周期管理,同一个目的不一样的工具而已。

mkdir /home/vm

将CentOS-7-x86_64-Minimal-1810.iso上传到此目录下

virt-install -n centos3 -r 256 --disk /home/vm/ccc.img,format=qcow2,size=2 --network bridge=br0 --os-variant=rhel7.6 --cdrom /home/vm/CentOS-7-x86_64-Minimal-1810.iso --vnc --vncport=6666 --vnclisten=0.0.0.0

-n    虚拟机名字

-r    内存(默认单位MB)

--disk    制定磁盘(可以提前使用qemu-img创建,也可以在此处创建)

    *使用qemu-img创建磁盘    qemu-img create -f qcow2 aaa.img 10G

--network    指定虚拟机使用的网络,这里使用br0,需要提前准备好此桥设备

--cdrom    指定镜像文件

--vnc    设置vnc,指定vnc监听端口和监听地址

#上述命令输入完成后直接回车即可

弹出上述告警框不用理会

此时查看宿主机打开端口,出现我们监听的6666端口

使用vnc客户端新建连接,ip地址填宿主机地址,端口6666,名称就是虚拟机名称

颜色级别设置成rgb222,然后点击OK

双击连接图标,进入安装界面

注意:

1、在执行virt-install时一定要仔细,别漏了任何一个参数。我就是少了--vnc这个参数导致vnc怎么也连不上

2、宿主机要跑虚拟机,确保cpu、内存资源足够,否则安装会出问题

安装kvm虚拟机并导入导出

1、确保支持cpu虚拟化

cat /proc/cpuinfo | egrep 'svm|vmx'

2、安装qemu-kvm、libvirt、virt-install包

yum -y install qemu-kvm libvirt virt-install

3、开启libvirtd服务病开机自启

systemctl start libvirtd systemctl enable libvirtd

4、创建一个磁盘文件

qemu-img create -f qcow2 ./centos7-kvm.qcow2 10G

5、创建虚拟机。类型为kvm,名称随意,内存1G,镜像文件指定位置,磁盘文件就是步骤4中的,网络默认,图形选择vnc

virt-install --virt-type kvm --name centos7-2020 --ram 1024 --cdrom=/home/kvm/CentOS-7-x86_64-Minimal-2003.iso --disk path=/home/kvm/centos7-kvm.qcow2 --network network=default --graphic vnc,listen=0.0.0.0 --noautoconsole

6、宿主机安装vnc server

yum -y install tigervnc-server tigervnc vnc vnc-server

systemctl  daemon-reload

7、执行下述命令设置密码

vncserver 

8、启动服务(我自己的环境这个服务没起来,但还是可以用的)

systemctl start vncserver@gao:1

9、关闭防火墙和selinux

10、vnc客户端连接宿主机5901,然后正常安装虚拟机

导出虚拟机

——本实验是将qcow2格式导出为qcow2

1、一条命令即可

-从表示压缩,-O表示导出格式,111.qcow2位导出后的文件

qemu-img convert -c -O qcow2 centos7-kvm.qcow2 111.qcow2

导入虚拟机

——使用virt-manager工具导入

1、安装virt-manager

yum -y install virt-manager

2、打开

virt-manager

3、新建虚拟机,选择镜像导入

选择对应的111.qcow2文件

配置cpu、内存、网络等信息

完成新的虚拟机创建

ok

kvm多虚拟机崩溃

系统bug。在正常情况下,kvm多虚拟机是不会崩溃的,kvm多虚拟机崩溃是由于系统bug导致的,重启即可解决。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。

KVM虚拟机直连存储(V3700)

需求:物理机安装HBA卡,连接到IBM V3700存储,存储上新建一个2T的卷,映射到该物理机,想让该物理机上的vm1直接挂挂载存储上的2T空间。

误区:通过虚拟系统管理器virt-manager设置物理磁盘存储池,这样做如下图,类型处选择 物理磁盘设备

点击完成后会报错:Format of device '/dev/sdc' does not match the expected format 'dos'

正确做法:虚拟机vm1关机后,在“添加新虚拟机硬件” 窗口 “选择或创建自定义存储”下面的空白处直接填/dev/sdb或者/dev/sdc(根据实际情况)。实际上,最好不使用/dev/sd*条目,而使用/dev/disk/by-id目录中设备的链接,这样,如果设备名称发生更改(因为您插入了USB驱动器或其他设备),它仍然可以工作。

通过以下指令可查看/dev/sdb等对应的by-id

ls -l /dev/disk/by-id

通过不重启服务器刷新磁盘列表

ls /sys/class/scsi_host/

echo "- - -" /sys/class/scsi_host/host0/scan

echo "- - -" /sys/class/scsi_host/host1/scan

echo "- - -" /sys/class/scsi_host/host2/scan

echo "- - -" /sys/class/scsi_host/host3/scan

fdisk -l

kvm虚拟机收费吗

kvm虚拟机不收费。kvm虚拟机软件是一个免费的软件,在商业应用环境下,完全可以作为一个不错的可以替代VMware workstations的解决方案。但是对于很多已经运行在了VMware workstations的虚拟机镜像来说,要是想避免收费,可以把VMwarestations的虚拟机vmdk的格式转换成qcow2格式的镜像,这样就可以方便在KVM虚拟机软件上运行了。KVM的虚拟化需要硬件支持,是基于硬件的完全虚拟化。

【kvm虚拟机】的内容来源于互联网,如引用不当,请联系我们修改。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942@qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: kvm虚拟机(kvm虚拟机和vmware区别)
本文地址: https://solustack.com/21589.html

相关推荐:

网友留言:

我要评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。