kvm

一、简介

kvm(Kernel-based Virtual Machine,基于内核的虚拟机),是一个开源的系统虚拟化模块。KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术),是基于硬件的完全虚拟化。

二、查看是否支持虚拟化

在VMware虚拟机中开启虚拟化技术
在这里插入图片描述
AMD处理器
[root@server ~]# grep svm /proc/cpuinfo
Intel处理器
[root@server ~]# grep vmx /proc/cpuinfo

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 
clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl 
xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 
x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 
3dnowprefetch arat tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx 
rdseed adx smap clflushopt xsaveopt xsavec xsaves

我这台电脑是Intel处理器的,故查询svm没有结果

三、安装kvm虚拟化模块

libvirt:操作和管理KVM虚拟机的虚拟化API
virt-manager:基于libvirt的GUI工具
[root@server ~]# yum install libvirt virt-manager -y
重启服务
[root@server ~]# systemctl restart libvirtd
查看是否已安装kvm模块
[root@server ~]# lsmod | grep kvm

kvm_intel             162153  0
kvm                   525259  1 kvm_intel

四、图形化界面安装虚拟机

启动图形化界面管理工具
[root@server ~]# virt-manager
选择创建新的虚拟机
在这里插入图片描述
使用本地光盘或镜像,需要拷贝镜像到虚拟机中,点击Forward
在这里插入图片描述
从本地磁盘选择镜像
在这里插入图片描述
选择镜像的位置,点击open
在这里插入图片描述
选择完成之后点击Forward
在这里插入图片描述
设置内存和cpu
在这里插入图片描述
设置磁盘大小,注意这里不是创建物理磁盘,而是虚拟磁盘,后边会说到
在这里插入图片描述
设置虚拟机名称,点击finish
在这里插入图片描述
emmm
在这里插入图片描述
网络的配置
1.本机需配置网桥br0
[root@server ~]# nmcli connection add con-name br0 ifname br0 type bridge
[root@server ~]# nmcli connection modify br0 ipv4.addresses 192.168.10.10/24 ipv4.method manual connection.autoconnect yes
2.将本机的一个网卡eno50332216桥接到br0
[root@server ~]# nmcli connection add con-name br0-port0 ifname eno50332216 type bridge-slave master br0
3.将虚拟机的网卡桥接到br0
在这里插入图片描述
4.虚拟机的IP地址设置为和网桥地址同一网段
[root@kvm-vmx 桌面]# nmcli connection modify eth0 ipv4.addresses 192.168.10.100/24 ipv4.method manual connection.autoconnect yes
[root@kvm-vmx 桌面]# ifdown eth0
[root@kvm-vmx 桌面]# ifup eth0
5.本机上ssh登陆虚拟机

[root@server ~]# ssh root@192.168.10.100
root@192.168.10.100's password:
Last login: Sun Dec  1 14:26:53 2019
[root@kvm-vmx ~]#

在这里插入图片描述
在这里插入图片描述
虚拟机中设置桥接模式,只能桥接到本机的一个物理网卡上,比如桥接到br0底下的eno67109440
在这里插入图片描述
Windows中的VMware虚拟机也一样,只能桥接到一张物理网卡上。
在这里插入图片描述
Linux中网桥下可以有多张网卡,被虚拟化为端口,它们的IP及MAC都不再可用,且它们被设置为接收任何包,最终由bridge设备来决定数据包的去向,网桥设备br0绑定了eth0和eth1。对于网络协议栈的上层来说,只看得到br0,因为桥接是在数据链路层实现的,上层不需要关心桥接的细节。因此这里的IP地址是配给br0,而不是br0底下的网卡(端口)。此图片来自网络,如侵删
删除虚拟机
在这里插入图片描述
在这里插入图片描述
注意这里的圈出来的地方,我们可以查看一下这个文件夹
[root@server ~]# ll -h /var/lib/libvirt/images/

total 7.8G
-rw-------. 1 root root 9.1G Dec  1 12:40 rhel7.1-2.qcow2
-rw-r--r--. 1 root root 3.9G Dec  1 03:52 rhel7.1-clone.qcow2
-rw-------. 1 root root 8.1G Dec  1 03:52 rhel7.1.qcow2

这里就是存放虚拟机虚拟磁盘的位置,和在Windows上存放VMware虚拟机一个道理。
并且此时有可能并没有真正删除虚拟机文件,还需要删除这个文件
[root@server ~]# rm -f /var/lib/libvirt/images/rhel7.1-2.qcow2
查看运行的虚拟机
[root@server ~]# virsh list --all

 Id    Name                           State
----------------------------------------------------
 -     rhel7.1                        shut off
 -     rhel7.1-clone                  shut off

四、命令行界面安装虚拟机

准备一个分区来安装虚拟机
[root@server ~]# lsblk | grep sdb

sdb      8:16   0    3G  0 disk

准备一个桥接网络
[root@server ~]# nmcli connection add con-name br0 ifname br0 type bridge
[root@server ~]# nmcli connection modify br0 ipv4.addresses 192.168.10.10/24 ipv4.method manual connection.autoconnect yes
[root@server ~]# nmcli connection add con-name br0-port0 ifname eno50332216 type bridge-slave master br0
安装命令行工具包
[root@server ~]# yum install virt-install -y
开始安装
[root@server ~]# virt-install --name test --ram 1024 --vcpus=1 --disk path=/dev/sdb --check path_in_use=off --graphics spice --location=/iso/rhel-server-7.2-x86_64-dvd.iso --network bridge=br0 --os-type=linux --os-variant=rhel7
参数说明

参数说明
–name=NAME虚拟机名称,需全局惟一
–ram=MEMORY虚拟机内在大小,单位为MB
–vcpus=VCPUS[,maxvcpus=MAX][,sockets=#][,cores=#][,threads=#]VCPU个数及相关配置
–disk=DISKOPTS指定存储设备及其属性;例如: --disk path=/dev/sda5。
–check path_in_use=off如果已将该磁盘划分给其他VM,则不弹出警告。
–graphics TYPE,opt1=val1,opt2=val2指定图形显示相关的配置,此选项不会配置任何显示硬件(如显卡),而是仅指定虚拟机启动后对其进行访问的接口,通常不用选定它
–location=LOCATION安装源URL,支持FTP、HTTP及NFS等,如ftp://172.16.0.1/pub
–network=NETWORK,opt1=val1,opt2=val2将虚拟机连入宿主机的网络中,其中NETWORK可以为
bridge=BRIDGE:连接至名为“BRIDEG”的桥设备
network=NAME:连接至名为“NAME”的网络
–os-variant优化性能,通常不需要

安装完成后会到下面的界面
在这里插入图片描述
virsh常用命令

参数说明
virsh --help查看命令帮忙
virsh list显示正在运行的虚拟机
virsh list --all显示所有的虚拟机
virsh start vm-node1启动vm-node1虚拟机
virsh shutdown vm-node1关闭vm-node1虚拟机
virsh destroy vm-node1虚拟机vm-node1强制断电
virsh suspend vm-node1挂起vm-node1虚拟机
virsh resume vm-node1恢复挂起的虚拟机
virsh undefine vm-node1删除虚拟机,慎用
virsh dominfo vm-node1查看虚拟机的配置信息
virsh domiflist查看网卡配置信息
virsh domblklist vm-node1查看该虚拟机的磁盘位置
virsh edit vm-node1修改vm-node1的xml配置文件
virsh dumpxml vm-node1查看KVM虚拟机当前配置
virsh dumpxml vm-node1 > vm-node1.bak.xml备份vm-node1虚拟机的xml文件,原文件默认路径/etc/libvirt/qemu/vm-node1.xml
virsh autostart vm-node1KVM物理机开机自启动虚拟机,配置后会在此目录生成配置文件/etc/libvirt/qemu/autostart/vm-node1.xml
virsh autostart --disable vm-node1取消开机自启动
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值