kvm入门

kvm入门

egrep “svm|vmx” /proc/cpuinfo                  #查看系统是否支持虚拟化
yum install -y qemu-kvm qemu-kvm-tools libvirt         #安装kvm相关软件
systemctl start libvirtd                  #开启libvirtd,管理kvm用
systemctl enable libvirtd             #开机启动libvirtd
ifconfig                                          #启动了一个虚拟网卡
ps -aux | grep dns                        #同时启动了一个dnsmasq

创建虚拟机
whereis qemu-img

rpm -qf /usr/bin/qemu-img

qemu-img create -f raw /opt/CentOS-7-x86_64.raw 10G   #创建镜像,-f指定文件格式

yum install -y virt-install    #可以安装虚拟机命令

virt-install –virt-type kvm –name CentOS-7-x86_64 –ram 2048 –cdrom=/opt/CentOS-7-x86_64-DVD-1708.iso –disk path=/opt/CentOS-7-x86_64.raw –network network=default –graphics vnc,listen=0.0.0.0 –noautoconsole #创建虚拟机

virsh list –all #查看所有的虚拟机

virsh start CentOS-7-x86_64 #启动虚拟机

ps aux | grep kvm #查看kvm进程

cd /etc/libvirt/qemu/

virsh dumpxml CentOS-7-x86_64 > backup.xml #备份xml文件,libvirt通过xml文件定义虚拟机

virsh shutdown CentOS-7-x86_64 #关闭虚拟机

virsh undefine CentOS-7-x86_64 #删除虚拟机

virsh define backup.xml #恢复虚拟机

virsh suspend CentOS-7-x86_64 #挂起虚拟机

virsh resume CentOS-7-x86_64 #恢复挂起虚拟机

virsh –help|grep snapshot #查看生成快照命令

#动态添加cpu数量
virsh edit CentOS-7-x86_64 #使用此命令编辑xml文件
修改前:<vcpu placement=’static’>1</vcpu>
修改后:<vcpu placement=’auto’ current=”1″>4</vcpu> 源文件cpu设置为静态无法改变,这里改成动态,默认为1个,最大可扩容4个,注意修改后必须重启才能生效,然后执行下面命令动态修改
virsh –help |grep cpu 查看cpu相关命令
virsh setvcups CentOS-7-x86_64 2 –live 使用此命令动态添加cpu个数为2个

动态修改内存大小
virsh qemu-monitor-command CentOS-7-x86_64 –hmp –cmd balloon 1024 #修改内存为1024m

virsh qemu-monitor-command CentOS-7-x86_64 –hmp –cmd info balloon #查看当前内存

注意:修改的内存不能大于xml文件中定义的大小,如下所示
<memory unit=’KiB’>2097152</memory>
<currentMemory unit=’KiB’>2097152</currentMemory>

qemu-img convert -f raw -O qcow2 CentOS-7-x86_64.raw test.qcow

brctl show
brctl addbr br0
brctl addif br0 ens33
ip addr del dev ens33 192.168.195.133/24
ifconfig br0 192.168.195.133/24 up
ip ro li
route add default gw 192.168.195.2
virsh edit CentOS-7-x86_64

修改前:
<interface type=’network’>
<mac address=’52:54:00:a8:4f:0c’/>
<source network=’default’/>
修改后:
<interface type=’bridge’>
<mac address=’52:54:00:a8:4f:0c’/>
<source bridge=’br0’/>

优化
taskset -cp 0 7536 #绑定到0号cpu

bios#打开EPT功能

cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never

cat /sys/block/sda/queue/scheduler #修改磁盘的调度算法,理解下面三种调度算法
noop [deadline] cfq

hcwei