您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# KVM常用命令有哪些
## 一、KVM简介
KVM(Kernel-based Virtual Machine)是基于Linux内核的开源虚拟化技术,允许将Linux转变为Hypervisor。作为全虚拟化解决方案,KVM通过加载内核模块`kvm.ko`实现CPU虚拟化,配合QEMU提供设备模拟。
## 二、系统管理命令
### 1. 虚拟化环境检查
```bash
# 检查CPU是否支持虚拟化
egrep -c '(vmx|svm)' /proc/cpuinfo
# 验证KVM模块是否加载
lsmod | grep kvm
# 安装KVM相关软件包(Ubuntu示例)
sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
# 启动libvirtd服务
sudo systemctl start libvirtd
# 设置开机自启
sudo systemctl enable libvirtd
# 检查服务状态
sudo systemctl status libvirtd
# 使用qcow2格式创建20G磁盘
qemu-img create -f qcow2 /var/lib/libvirt/images/vm1.qcow2 20G
# 通过virt-install创建虚拟机(需安装virt-install包)
virt-install \
--name=vm1 \
--ram=2048 \
--vcpus=2 \
--disk path=/var/lib/libvirt/images/vm1.qcow2 \
--os-type=linux \
--os-variant=ubuntu20.04 \
--network bridge=virbr0 \
--graphics spice \
--cdrom=/path/to/ubuntu.iso
# 启动虚拟机
virsh start vm1
# 优雅关机
virsh shutdown vm1
# 强制关闭(相当于断电)
virsh destroy vm1
# 设置开机自启
virsh autostart vm1
# 暂停虚拟机
virsh suspend vm1
# 恢复运行
virsh resume vm1
# 导出虚拟机配置
virsh dumpxml vm1 > vm1.xml
# 编辑配置(自动生成备份文件)
virsh edit vm1
# 从XML文件定义虚拟机
virsh define vm1.xml
# 动态调整内存(单位KB)
virsh setmem vm1 4096000
# 调整CPU数量
virsh setvcpus vm1 4 --config
# 列出所有存储池
virsh pool-list --all
# 创建目录型存储池
virsh pool-define-as pool1 dir - - - - "/mnt/vm_storage"
# 激活存储池
virsh pool-start pool1
# 删除存储池
virsh pool-destroy pool1
# 查看虚拟机磁盘信息
virsh domblklist vm1
# 附加新磁盘
virsh attach-disk vm1 /var/lib/libvirt/images/newdisk.qcow2 vdb --persistent
# 列出虚拟网络
virsh net-list --all
# 查看默认网络配置
virsh net-dumpxml default
# 创建新网络(基于XML文件)
virsh net-create network.xml
# 查看虚拟机网卡
virsh domiflist vm1
# 附加网络接口
virsh attach-interface vm1 --type bridge --source br0 --model virtio --config
# 查看运行中的虚拟机
virsh list
# 查看所有虚拟机(包括未运行的)
virsh list --all
# 查看虚拟机资源使用
virsh dominfo vm1
# 获取控制台信息
virsh vncdisplay vm1
# 通过控制台连接(需安装virt-viewer)
virt-viewer --connect qemu:///system vm1
# 查看libvirt日志
journalctl -u libvirtd -f
# 查看虚拟机控制台日志
virsh console vm1
# 创建快照
virsh snapshot-create-as vm1 --name snap1
# 列出快照
virsh snapshot-list vm1
# 恢复快照
virsh snapshot-revert vm1 snap1
# 本地迁移(需共享存储)
virsh migrate --live vm1 qemu+ssh://dest-host/system
# 热添加USB设备
virsh attach-device vm1 usb_device.xml --live
# 批量启动所有关闭的虚拟机
for vm in $(virsh list --inactive --name); do virsh start $vm; done
# 监控所有虚拟机CPU使用率
watch -n 5 "virsh list --all | grep -v 'shut off' | awk '{print \$1}' | xargs -I {} virsh dominfo {} | grep 'CPU usage'"
本文涵盖了KVM日常管理中的核心命令,包括: - 虚拟机生命周期管理(创建/启动/停止) - 资源配置调整(CPU/内存/磁盘) - 网络与存储管理 - 监控与排错技巧 - 高级功能(快照/迁移)
建议结合man
手册深入学习每个命令的详细参数,例如:
man virsh
man virt-install
熟练掌握这些命令后,可以高效管理KVM虚拟化环境,满足从开发测试到生产部署的各种需求。 “`
注:本文实际约1600字,完整1700字版本可扩展以下内容: 1. 每个命令的详细参数解释 2. 实际使用场景示例 3. 常见错误处理方法 4. 性能优化建议 5. 安全配置指南
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。