kvm安装虚拟机

简介:

1.KVM是开源软件,全称是kernel-based virtual machine(基于内核的虚拟机)。

2.是x86架构且硬件支持虚拟化技术(如 intel VT 或 AMD-V)的Linux全虚拟化解决方案。

3.KVM能在不改变linux或windows镜像的情况下同时运行多个虚拟机,(它的意思是多个虚拟机使用同一镜像)并为每一个虚拟机配置个性化硬件环境(网卡、磁盘、图形适配器……)

开启设备支持虚拟化

BIOS 高级设置里面 选择CPU 选择Intel Virtual Technology并回车。注意:若无VT选项或不可更改,则表示你的电脑不支持VT技术。

先关闭防火墙和selinux

service iptables stop    
setenforce 0                

检查服务器是否支持虚拟化

# vmx    如果有输出VMX就支持虚拟化
grep -E -o 'vmx|svm' /proc/cpuinfo

安装KVM所需组件

centos

yum install -y kvm virt-* libvirts bridge-utils qemu-img
/etc/rc.d/init.d/libvirtd start
/etc/rc.d/init.d/messagebus start
chkconfig libvirtd on
chkconfig messagebus on

加载kvm模块

[root@localhost ~]# modprobe kvm-intel
[root@localhost ~]# lsmod | grep kvm
kvm_intel             54285  0 
kvm                    333172  1 kvm_intel    

配置网卡

创建桥接网卡命令 : virsh iface-bridge eth0 br0

[root@localhost ~]# virsh iface-bridge eth0 br0     出现下面的错误 重启一下libvirt服务就好了
error: Failed to reconnect to the hypervisor
error: no valid connection
error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory
[root@localhost ~]# /etc/init.d/libvirtd restart
Stopping libvirtd daemon:                                  [  OK  ]
Starting libvirtd daemon:                                  [  OK  ]
[root@localhost ~]# virsh iface-bridge eth0 br0
Created bridge br0 with attached device eth0
Bridge interface br0 started                              成功桥接
[root@localhost ~]# service network restart           重启网卡

此时的网卡信息

注意 :因为eth0网卡因为与br0 网卡进行桥接,所以eth0不显示ip是正常的

查看目前所有的网桥接口

[root@localhost ~]# brctl show
bridge name bridge id       STP enabled interfaces
br0     8000.000c29eb8697   yes     eth0
virbr0      8000.525400941201   yes     virbr0-nic

修改VNC配置

[root@localhost ~]#  vim /etc/libvirt/qemu.conf
    #vnc_listen = "0.0.0.0"  去掉  # 号并wq保存

重启libvirtd和messagebus服务

[root@localhost ~]# service libvirtd restart
Stopping libvirtd daemon:                                  [  OK  ]
Starting libvirtd daemon:                                  [  OK  ]
[root@localhost ~]# service messagebus restart
Stopping system message bus:                               [  OK  ]
Starting system message bus:                               [  OK  ]

debian10 安装

apt install qemu qemu-kvm qemu-system qemu-utils
apt install libvirt-clients libvirt-daemon-system virtinst 

启动默认网络

virsh net-start default

创建虚拟机

# 创建镜像存放目录
mkdir /home/image       
# 创建虚拟磁盘存放目录
mkdir -p /home/kvm   
# 把镜像文件拷贝到镜像存放目录
dd if=/root/CentOS-6.10-x86_64-bin-DVD1.iso of=/home/image/Centos6.iso     
# 进入虚拟磁盘目录创建img
cd /home/kvm  
# 创建虚拟磁盘文件
qemu-img create -f qcow2 -o preallocation=metadata kvm1.img 15G

安装虚拟机

virt-install --name=kvm1 --ram 1024 --vcpus=1 --check-cpu --os-type linux --network network=default -f /home/kvm/kvm1.img --location /home/image/Centos6.iso --extra-args 'console=ttyS0,115200n8 serial'  --autostart

相关参数解释

--name 虚拟机名称
--ram 内存大小MB
--vcpus cpu核数
--check-cpu  检查指定的虚拟CPU数不要超过无论CPU,如果超过将返回警告信息。
--os-type linux 指定系统类型
--network network=default  连接到nat default网络,桥接:--network bridge=BRIDGE (连接到BRIDGE的桥接网卡上)
-f /home/kvm/kvm1.img 指定虚拟机文件地址
--graphics none
--location /home/image/Centos6.iso 指定安装源镜像路径
--extra-args 'console=ttyS0,115200n8 serial' 执行从"--location"选项指定位置的客户机安装时,附加内核命令行参数到安装程序。(设置console连接所需参数) 
--autostart 指定虚拟机在物理机启动后自动启动;

安装过程

(debian新增一个窗口,连接进入虚拟机)

按照提示一步一步操作就行,或自行百度

虚拟机的连接

查看所有的虚拟机(关闭和运行的虚拟机)

virsh list --all

连接虚拟机

virsh console +域名(虚拟机的名称)