服务器测评网
我们一直在努力

虚拟机命令语句有哪些常用类型及使用场景?

虚拟机命令语句是管理和操作虚拟化环境的核心工具,通过简洁的指令实现对虚拟机全生命周期的控制,包括创建、配置、启动、停止、监控及维护等操作,不同虚拟化平台(如 VMware、KVM、VirtualBox 等)的命令语句存在差异,但核心逻辑和功能目标高度一致,本文将围绕主流虚拟化平台,系统梳理虚拟机命令语句的核心功能、使用场景及最佳实践,帮助用户高效管理虚拟化资源。

虚拟机命令语句有哪些常用类型及使用场景?

虚拟机创建与配置命令

虚拟机的创建是虚拟化管理的起点,命令语句需明确虚拟机的基本参数,如名称、资源配置、磁盘及网络模式等,以 VMware vSphere 为例,vmkfstools 命令可用于创建虚拟磁盘,vmkfstools -c 40G -a lsilogic -d thin my_vm.vmdk 表示创建一个 40GB 的精简配置磁盘,适配 LSI Logic 控制器,而通过 govc(vSphere 命令行工具)创建虚拟机时,需依次定义虚拟机硬件规格:

govc vm.create -name "ubuntu-vm" -m 2048 -c 2 -g "ubuntu64Guest" -disk 20GB -net "VM Network"  

该命令创建一台名为 “ubuntu-vm” 的虚拟机,分配 2GB 内存、2 个 vCPU、20GB 磁盘,并接入默认网络。

对于 KVM(Kernel-based Virtual Machine),virt-install 命令是创建虚拟机的核心工具,支持通过参数驱动自动化部署:

virt-install --name centos7 --ram 2048 --vcpus 2 --disk path=/var/lib/libvirt/images/centos7.qcow2,size=20 --cdrom /opt/CentOS-7-x86_64-DVD-2009.iso --network bridge=virbr0  

上述命令通过 ISO 镜像安装 CentOS 7 虚拟机,配置与 vSphere 示例类似,但需指定网络桥接模式(virbr0 为默认 NAT 网络)。

虚拟机配置调整常用于动态扩容或优化性能,VMware 可通过 govc vm.change 修改虚拟机参数:

govc vm.change -vm "ubuntu-vm" -m 4096 -c 4  

将目标虚拟机内存扩容至 4GB,vCPU 增至 4 个,KVM 环境则需使用 virsh edit <vm-name> 进入配置文件手动调整,或通过 virsh setvcpus 动态修改 vCPU 数量:

virsh setvcpus centos7 4 --live  

--live 参数确保在线生效,无需重启虚拟机。

虚拟机启动、停止与迁移命令

虚拟机的生命周期管理是日常运维的核心任务,启动虚拟机时,VMware 可通过 govc vm.power 控制:

govc vm.power -on "ubuntu-vm"  

KVM 环境则使用 virsh start 命令:

virsh start centos7  

停止虚拟机需区分正常关机与强制关闭,正常关机命令为 govc vm.power -off "ubuntu-vm"virsh shutdown centos7,后者会触发虚拟机内部关机流程;强制关闭则使用 govc vm.power -forceoffvirsh destroy centos7,直接切断电源,可能导致数据未保存,需谨慎使用。

虚拟机迁移(热迁移)是资源调度的关键功能,VMware 的 vMotion 依赖 govc vm.migrate 命令:

govc vm.migrate -host "esxi-host-02" "ubuntu-vm"  

将虚拟机从当前主机迁移至 “esxi-host-02″,要求源主机和目标主机共享存储,KVM 的 live 迁移则通过 virsh migrate 实现,需指定目标主机 URI 和迁移参数:

虚拟机命令语句有哪些常用类型及使用场景?

virsh migrate --live centos7 qemu+ssh://root@target-host/system --persistent  

--live 确保迁移过程中虚拟机业务不中断,--persistent 表示目标主机保留虚拟机配置。

虚拟机监控与日志管理命令

实时监控虚拟机状态是保障系统稳定运行的基础,VMware 的 govc object.collect 可获取虚拟机性能指标:

govc object.collect -s "ubuntu-vm" cpu.usage memory.usage  

返回 CPU 和内存使用率百分比,KVM 环境则使用 virsh dominfo 查看虚拟机基本信息:

virsh dominfo centos7  

包括状态、CPU 数量、内存占用等;virsh domstats 提供详细性能数据:

virsh domstats centos7 --cpu --memory  

日志管理是故障排查的重要手段,VMware 的虚拟机日志默认存储在 /vmfs/volumes/datastore-name/vm-name/ 目录下,可通过 govc datastore.tail 实时查看:

govc datastore.tail "ubuntu-vm/vmware.log"  

KVM 虚拟机日志则通过 virsh console 直接接入虚拟机终端查看,或使用 journalctl(虚拟机内部)分析系统日志:

virsh console centos7  

grep 命令可过滤日志关键字,grep "error" /var/log/libvirt/qemu/centos7.log 快速定位错误信息。

虚拟机快照与克隆命令

快照与克隆是虚拟机备份与复用的核心功能,VMware 的 govc snapshot.create 可创建快照:

govc snapshot.create -m "Pre-update backup" "ubuntu-vm"  

-m 参数添加快照描述,恢复快照则使用:

govc snapshot.revert -vm "ubuntu-vm" "snap-001"  

KVM 环境的快照管理依赖 virsh snapshot-* 命令族,创建快照:

virsh snapshot-create-as centos7 "pre-update" "Backup before system update"  

列出快照:

virsh snapshot-list centos7  

恢复快照:

虚拟机命令语句有哪些常用类型及使用场景?

virsh snapshot-revert centos7 pre-update  

克隆分为完整克隆和链接克隆,VMware 的 govc vm.clone 支持完整克隆:

govc vm.clone -vm "ubuntu-vm" -link=false "ubuntu-vm-clone"  

-link=false 表示独立克隆,不依赖源虚拟机磁盘,KVM 的 virt-clone 命令可实现类似功能:

virt-clone --original centos7 --name centos7-clone --file /var/lib/libvirt/images/centos7-clone.qcow2  

基于源虚拟机磁盘创建新的独立虚拟机,需指定新虚拟机名称和磁盘路径。

虚拟机磁盘与网络管理命令

磁盘管理涉及扩容、格式转换等操作,VMware 的 vmkfstools 可扩展磁盘容量:

vmkfstools -X 60G my_vm.vmdk  

将原 40GB 磁盘扩容至 60GB,需在虚拟机内部使用 fdiskparted 调整分区表,KVM 的 qemu-img 命令支持磁盘格式转换,例如将 RAW 格式转为 QCOW2(支持快照和压缩):

qemu-img convert -f raw -O qcow2 disk.raw disk.qcow2  

网络管理需配置虚拟网卡模式(如 NAT、桥接、仅主机),VMware 的 govc vm.network.change 可修改网络适配器:

govc vm.network.change -vm "ubuntu-vm" -net "New Network" -net.adapter vmxnet3  

将虚拟机网络切换至 “New Network”,并使用 vmxnet3 驱动(高性能),KVM 的 virsh attach-interface 命令动态添加网卡:

virsh attach-interface centos7 type bridge source=virbr0 model=virtio  

添加一块桥接至 virbr0 的 virtio 网卡,virtio 为高性能半虚拟化驱动。

虚拟机命令语句是虚拟化管理的“瑞士军刀”,通过简洁指令实现对虚拟机的精细化控制,不同平台的命令语法虽有差异,但核心功能(创建、配置、迁移、监控等)高度一致,熟练掌握这些命令,不仅能提升运维效率,还能在自动化脚本、灾备场景中发挥关键作用,实际操作中,需结合具体虚拟化平台文档,注意命令参数的兼容性,并遵循“最小权限”原则,确保虚拟化环境的安全与稳定。

赞(0)
未经允许不得转载:好主机测评网 » 虚拟机命令语句有哪些常用类型及使用场景?