一 安装KVM
环境:Centos7.3
首先检查自己服务器或者虚拟机CPU是否支持
egrep ‘(vmx|svm)‘ /proc/cpuinfo
安装阿里云镜像站
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装KVM
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python python-virtinst libvirt-client virt-install virt-viewer -y
详解:
校验
lsmod | grep kvm
kvm_intel 170181 6 kvm 554609 1 kvm_intel irqbypass 13503 5 kvm
开启KVM 并设置开机自动启动
systemctl start libvirtd
systemctl enable libvirtd
查看运行状态
systemctl status libvirtd
● libvirtd.service - Virtualization daemon Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled) Active: active (running) since 四 2018-03-01 15:12:08 CST; 15min ago Docs: man:libvirtd(8) http://libvirt.org Main PID: 3237 (libvirtd) CGroup: /system.slice/libvirtd.service ├─1808 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.co... ├─1812 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.co... └─3237 /usr/sbin/libvirtd
配置网卡设置(这里使用的是桥接)
现将自己的网卡配置 备份一份,以防万一出错
cd /etc/sysconfig/network-scripts/
cp ifcfg-em1 ifcfg-em1.bak
修改网卡配置(有好几种方案,不一定非要这样,)
DEVICE=em1 TYPE=Ethernet ONBOOT=yes BRIDGE=br0
创建一个新的文件 ifcfg-br0
DEVICE=br0 TYPE=Bridge ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.70.125 NETMASK=255.255.255.0 GATEWAY=192.168.70.1
重新启动网卡
systemctl restart network
查看网桥
brctl show bridge name bridge id STP enabled interfaces br0 8000.782bcb1992cf no em1 vnet0 vnet1 virbr0 8000.525400c55958 yes virbr0-nic
安装就基本结束了!!!!
测试搭建一台虚拟机*(安装一台Centos6.5)
创建ISO镜像路径
mkdir -p /iso
将Centos6.5镜像上传到服务器上(如果没有 安装一下,yum install -y lrzsz)
rz -y
创建KVM虚拟机目录
mkdir -p /kvm/test/
创建虚拟机
virt-install -n linux-web01 -r 2048 --disk /kvm/test/web01.img,format=qcow2,size=20 --network bridge=br0 --os-type=linux --os-variant=rhel6 --cdrom /iso/CentOS-6-x86_64-DVD-1511.iso --vnc --vncport=5910 --vnclisten=0.0.0.0
- -name:虚拟机的名字
- -ram:内存大小MB
- -vcpus:CPU个数
- -cdrom:ISO镜像位置
- -os-variant:OS类型,例如rhel 6,solaris
- -network:网络,友情链接:创建通过Virt Manager创建桥接网络
- -graphics:Guest显示设置
- -disk path:磁盘位置
打开防火墙
打开防火墙上的5910端口 firewall-cmd --zone=public --add-port=5910/tcp --permanent firewall-cmd --reload
下载一个VNC
直接连接,安装完成。这里我就跳过了,安装好后,启动虚拟机就可以了
virsh start test
virsh list --all
Id 名称 状态
----------------------------------------------------
2 web01 running
3 web02 running
4 test running
- test01 关闭
(二)克隆(test 是刚才创建的)
virsh list --all Id 名称 状态 ---------------------------------------------------- 2 web01 running 3 web02 running 4 test running - test01 关闭
先把tset关闭掉(如果这里没有关闭掉,是有因为电源模块的问题,)
virsh shutdown test
创建虚拟机目录
mkdir -p /kvm/linux-mysql-01
克隆
virt-clone -o test -n mysql01 -f /kvm/linux-mysql-01/mysql01.img
WARNING 设置图形设备端口为自动端口,以避免相互冲突。
正在分配 ‘mysql01.img‘ | 10 GB 00:00:02
成功克隆 ‘mysql01‘。
详解
--original:指定被克隆的虚拟机
--name:克隆后目标虚拟机的名称
--file:指定克隆后目标虚拟机的存储路径
virsh list --all Id 名称 状态 ---------------------------------------------------- 2 web01 running 3 web02 running - mysql01 关闭 - test 关闭 - test01 关闭
可以使用VNC直接连接了(如果连接不上)
virsh dumpxml mysql01
看一下VNC的端口 在使用VNC加上端口就可以
删除