KVM常用命令

张开发
2026/4/4 19:42:57 15 分钟阅读
KVM常用命令
创建虚拟机virt-install --virt-type kvm\--os-typelinux\--os-variant rhel7\--namecentos7.0\--memory2048\--vcpus2\--disk/home/KVM-data/data/centos7.0,formatqcow2,size10\--cdrom/opt/CentOS-7-x86_64-DVD-2009.iso\--networknetworkdefault\--graphicsspice\--noautoconsole注释--virt-type kvm指定使用 KVM 作为虚拟化类型。 --os-typelinux表明安装的操作系统类型为 Linux。 --os-variant rhel7指定安装的操作系统变体为 RHEL7这有助于virt-install针对该系统做一些优化。--namecentos7.0为虚拟机设定名称为centos7.0。--memory2048给虚拟机分配 2048MB即 2GB的内存。--vcpus2为虚拟机分配2个虚拟 CPU。--disk/home/KVM-data/data/centos7.0,formatqcow2,size30创建一个大小为 30GB、格式为qcow2的磁盘镜像文件/home/KVM-data/data/centos7.0作为虚拟机的磁盘。--cdrom/home/KVM-data/iso/CentOS-7-x86_64-Minimal-2009.iso把home/KVM-data/iso/CentOS-7-x86_64-Minimal-2009.iso这个 ISO 镜像文件作为虚拟机的光驱。--networknetworkdefault将虚拟机连接到名为default的网络。--graphicsspice开启 SPICE 图形化界面方便用户通过 SPICE 客户端连接到虚拟机进行操作。 --noautoconsole不自动打开虚拟机的控制台。链接克隆虚拟机1 创建虚拟机 略#基础镜像文件ubuntuCode-01:/etc/libvirt/qemu$ ll /home/KVM-data/data/ 总计1608728drwxr-xr-x2ubuntu ubuntu40964月1417:55 ./ drwxr-xr-x4ubuntu ubuntu40964月1410:57../ -rw-------1libvirt-qemu kvm322174320644月1412:09 centos7.02 创建链接盘ubuntuCode-01:/etc/libvirt/qemu$sudoqemu-img create-fqcow2-Fqcow2-b/home/KVM-data/data/centos7.0 /home/KVM-data/data/k8s_master02 Formatting/home/KVM-data/data/k8s_master02,fmtqcow2cluster_size65536extended_l2offcompression_typezlibsize32212254720backing_file/home/KVM-data/data/centos7.0backing_fmtqcow2lazy_refcountsoffrefcount_bits16#查看ubuntuCode-01:/etc/libvirt/qemu$ ll /home/KVM-data/data/ 总计1608728drwxr-xr-x2ubuntu ubuntu40964月1417:55 ./ drwxr-xr-x4ubuntu ubuntu40964月1410:57../ -rw-------1libvirt-qemu kvm322174320644月1412:09 centos7.0 -rw-r--r--1root root1970884月1417:55 k8s_master02-f qcow2指定克隆镜像的格式为qcow2。-F qcow2指定基础镜像的格式为qcow2。-b指定基础镜像的路径。/home/KVM-data/data/k8s_master02指定克隆镜像的存储路径和文件名3 导出xml文件#导出centos7.0的xml文件ubuntuCode-01:~$cd/etc/libvirt/qemu/ ubuntuCode-01:/etc/libvirt/qemu$sudovirshdumpxml centos7.0k8s_master01.xml#删除uuid mac 修改name source fileubuntuCode-01:~$sudovimk8s_master01.xml4导入配置文件#把k8s_master01.xml 定义为虚拟机ubuntuCode-01:~$virshdefine k8s_master01.xml#启动虚拟机ubuntuCode-01:~$virshstart k8s_master01virsh常用命令虚拟机生命周期管理列出虚拟机virsh list显示当前正在运行的虚拟机列表。virsh list --all显示所有虚拟机列表包括正在运行和已关闭的。启动虚拟机virsh start 虚拟机名称启动指定名称的虚拟机。例如virsh start my_vm会启动名为my_vm的虚拟机。关闭虚拟机virsh shutdown 虚拟机名称正常关闭指定名称的虚拟机类似于在虚拟机内选择关机操作。virsh destroy 虚拟机名称强制关闭指定名称的虚拟机相当于直接切断电源。重启虚拟机virsh reboot 虚拟机名称重启指定名称的虚拟机。挂起和恢复虚拟机virsh suspend 虚拟机名称挂起指定名称的虚拟机暂停其运行。virsh resume 虚拟机名称恢复指定名称的虚拟机运行。虚拟机配置管理定义虚拟机virsh define XML配置文件路径根据指定的 XML 配置文件定义一个新的虚拟机。例如virsh define /path/to/vm_config.xml。删除虚拟机virsh undefine 虚拟机名称删除指定名称的虚拟机的配置但不删除虚拟机的磁盘镜像文件。修改虚拟机配置virsh edit 虚拟机名称使用默认文本编辑器打开指定名称虚拟机的 XML 配置文件你可以在其中修改虚拟机的配置如内存、CPU 等。网络管理列出网络virsh net-list显示当前定义的网络列表。virsh net-list --all显示所有网络列表包括活动和非活动的。启动和停止网络virsh net-start 网络名称启动指定名称的网络。virsh net-destroy 网络名称停止指定名称的网络。定义和删除网络virsh net-define 网络XML配置文件路径根据指定的 XML 配置文件定义一个新的网络。virsh net-undefine 网络名称删除指定名称的网络配置。存储管理列出存储池virsh pool-list显示当前定义的存储池列表。virsh pool-list --all显示所有存储池列表包括活动和非活动的。启动和停止存储池virsh pool-start 存储池名称启动指定名称的存储池。virsh pool-destroy 存储池名称停止指定名称的存储池。定义和删除存储池virsh pool-define 存储池XML配置文件路径根据指定的 XML 配置文件定义一个新的存储池。virsh pool-undefine 存储池名称删除指定名称的存储池配置。快照管理创建快照virsh snapshot-create-as 虚拟机名称 快照名称为指定名称的虚拟机创建一个名为快照名称的快照。列出快照virsh snapshot-list 虚拟机名称列出指定名称虚拟机的所有快照。恢复快照virsh snapshot-revert 虚拟机名称 快照名称将指定名称的虚拟机恢复到名为快照名称的快照状态。删除快照virsh snapshot-delete 虚拟机名称 快照名称删除指定名称虚拟机的名为快照名称的快照。

更多文章