KVM虚拟机配置

2022-03-09

KVM 的全称是 -Based 。也就是说,KVM是基于Linux内核实现的。 KVM 有一个名为 kvm.ko 的内核模块,仅用于管理虚拟 CPU 和内存。 x86 平台上最流行和使用最广泛的虚拟化解决方案是 KVM。其中云计算框架对KVM的支持最好,我们的教程也选择了KVM作为实验环境。

本系列文章只是我的学习笔记。文中的文字描述是对《Linux鸟哥私房菜》一书重点内容的总结,《RHCE认证考试笔记》部分内容是在培训《Linux运维》时总结的,化繁为简综合体能快速回顾并掌握工作重点。

◆安装KVM虚拟机

1.将主机配置为网桥

cd /etc/sysconfig/network-scripts
cp -a ifcfg-eno16777728 ifcfg-br0
vim ifcfg-br0
TYPE=Bridge
DEVICE=br0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.13
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=114.114.114.114
reboot

2.主机软件安装与配置

yum install -y qemu-kvm libvirt virt-install bridge-utils

3.安装后检查模块是否加载

lsmod | grep kvm

4.执行以下命令启动虚拟机

systemctl start libvirtd.service 
systemctl enable libvirtd.service

◆创建和管理KVM◆创建和实施基本的管理虚拟机

virt-install -n lyshark -r 256 --vcpus 1 --disk /tmp/lyshark.img,format=qcow2,size=5 --network bridge=br0 --os-type=linux --os-variant=rhel7.0 --cdrom /tmp/rhel-server-7.0_x86_64-dvd.iso --vnc --vncport=5910 --vnclisten=0.0.0.0
-------------------------------------------------------------------------------------------------
[参数说明]
--n					#指定虚拟机名称
--r					#指定虚拟机内存,单位MB
--disk					#指定存储设备及其属性 size:新建磁盘映像的大小单位为GB;磁盘映像格式,如raw、qcow2、vmdk
--os-type				#操作系统类型,如linux、unix或windows等;
--os-variant=				#某类型操作系统的变体,如rhel5、fedora8等; 
--vcpus=				#VCPU个数及相关配置
--cpu=					#CPU模式及特性,如coreduo等;可以使用qemu-kvm -cpu ?来获取支持的CPU模式;
--os-variant=freebsd8
--os-variant=win7
--os-variant=win7 --disk path=/var/lib/libvirt/iso/virtio-win.iso,device=cdrom
--os-variant=win2k8
--os-variant=win2k8 --disk path=/var/lib/libvirt/iso/virtio-win.iso,device=cdrom
--os-variant=rhel7
-------------------------------------------------------------------------------------------------

图片[1]-KVM虚拟机配置-唐朝资源网

virsh list --all #列出所有的虚拟机 virsh dominfo #显示虚拟机信息 yum install virt-top -y virt-top #显示虚拟机内存和cpu的使用情况 virt-df #显示虚拟机分区信息 virsh destroy #强制关闭 virsh undefine #删除虚拟机 virsh start #启动 virsh shutdown #关闭虚拟机 virsh autostart #设置虚拟机自启动 virsh autostart --disable #关闭虚拟机自启动 virsh console #通过控制窗口登录虚拟机 virsh attach-disk kvm-1 /dev/sdb vbd --driver qemu --mode shareable #给虚拟机添加硬盘 -------------------------------------------------------------------------------------------------

改变记忆

# 1. 查看虚拟机当前内存
[root@sh-kvm-1 ~]# virsh dominfo kvm-1 | grep memory
Max memory:     4194304 KiB
Used memory:    4194304 KiB
# 2、动态设置内存为512MB,内存减少
virsh setmem kvm-1 524288
# 注意单位必须是KB
# 3、查看内存变化
# virsh dominfo kvm-1 | grep memory
Max memory: 14194304 KiB
Used memory: 524288 kiB
# 4、内存增加
virsh shutdown kvm-1
virsh edit kvm-1  # 直接更改memory
virsh create /etc/libvirt/demu/kvm-1/xml
# 之后操作1,2,3步骤增加内存

更换 CPU

virsh shutdown kvm-1
virsh edit kvm-1
#  2  # 4 > 2
virsh create /etc/libvirt/demu/kvm-1/xml

磁盘扩展

1. Create a 10-GB non-sparse file:
# dd if=/dev/zero of=/vm-images/vm1-add.img bs=1M count=10240
2. Shutdown the VM:
 # virsh shutdown vm1
3. Add an extra entry for ‘disk’ in the VM's XML file in /etc/libvirt/qemu. You can look copy & paste
the entry for your mail storage device and just change the target and address tags. For example:
 # virsh edit vm1
 
 
 
 
 
Add: function='0x0'/> # 这里建议使用上面的添加硬盘的方式添加

克隆虚拟机

虚拟机克隆完成后,可以作为模板进行克隆,其他虚拟机无需一一创建并安装操作系统。虚拟机克隆操作代码如下:

虚拟机磁盘挂载

挂载虚拟机磁盘的命令是virsh -disk,卸载磁盘的命令是virsh -disk。同样,为了方便批量操作,我们写了一个脚本来处理。

#!/usr/bin/env bash
set -eux
set -o pipefail
vm_path="/var/lib/libvirt/images/vm_disk"
for (( i = 0; i <= 9; i ++ ))
do
    vm_dir=$vm_path/vm$i
    if [ ! -d $vm_dir ]; then
        mkdir -p $vm_dir
    fi
    fallocate -l 15G $vm_dir/disk_15G.img
    virsh attach-disk vm$i --source $vm_dir/disk_15G.img  --target sdb --persistent
#virsh detach-disk --domain vm$i --target sdb --persistent
done

分类:

技术要点:

相关文章:

© 版权声明
THE END
喜欢就支持一下吧
点赞215赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容