简介:
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 +域名(虚拟机的名称)