kvm命令管理虚拟机

Posted itzhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kvm命令管理虚拟机相关的知识,希望对你有一定的参考价值。

virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式;
查网桥命令
[root@zxw6 ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c295c6c9e no ens33
virbr0 8000.52540005d291 yes virbr0-nic

(1)基础操作 --- 命令行下管理虚拟机
语法结构:
virsh <command> <domain-id> [OPTIONS]
help            列出命令下的所有参数
help list      列出 list 命令下的参数
帮助菜单
(2)除了这些简单命令,实际在 virsh 形式下还有更多的命令:
virsh help     打印帮助
virsh attach-device      从一个 XML 文件附加装置
virsh attach-disk          附加磁盘设备
virsh attach-interface   获得网络界面
virsh destroy                删除一个域
virsh detach-device      从一个 XML 文件分离设备
virsh detach-disk         分离磁盘设备
virsh detach-interface  分离网络界面
virsh define                 回复虚拟机
virsh undefine             删除一个虚机域

virsh list           列出当前宿主机上处于运行状态的虚拟机
virsh list --all    列出当前宿主机上所有的虚拟机
virsh start vm1 (虚拟机name) 开启某一台虚拟机
virsh shutdown vm1   (虚拟机name) 正常关闭一台虚拟机
virsh destroy vm1      强制关闭某一台虚拟机
virsh autostart vm1    开机自启动虚拟机vm1
virsh autostart  --disable vm1 关闭开机自启动
virsh edit vm1   编辑某个虚拟机的配置文件
virsh pool-list   列出存储池

虚拟机保存路径
[root@zxw6 network-scripts]# cd /etc/libvirt/qemu
[root@zxw6 qemu]# ls
autostart centos7.0.xml networks


命令行下创建 && 管理虚拟机
Virt-install:命令行下创建虚拟机的命令,不过在它后面需要跟上很多的参数
    --name: 虚拟机的名字。
    --disk Location: 磁盘映像的位置。
    --graphics : 怎样连接 VM ,通常是 SPICE 。
    --vcpu : 虚拟 CPU 的数量。
    --ram : 以兆字节计算的已分配内存大小。
    --location : 指定安装源路径
    --network : 指定虚拟网络,通常是 virbr0 或者自己设定的 br0
第一步:创建磁盘管理
qemu-img create -f qcow2 -o size=3G /var/lib/libvirt/images/zxw.qcow2
第二步:下载
[root@zxw6 images]# yum install virt-install -y
第三步:创建
[root@zxw6 images]# virt-install --name=zxw --disk path=/var/lib/libvirt/images/zxw.qcow2 --ram=1024 --vcpu=1 --graphics spice --location=/var/lib/libvirt/images/CentOS-7-x86_64-DVD-1611.iso --network=bridge=br0
WARNING 需要图形显示,但未设置 DISPLAY。不能运行 virt-viewer。
WARNING 没有控制台用于启动客户机,默认为 --wait -1

开始安装......
搜索文件 .treeinfo...... | 366 B 00:00
搜索文件 vmlinuz...... | 5.1 MB 00:00
搜索文件 initrd.img...... | 41 MB 00:01
创建域...... | 0 B 00:00
ERROR unsupported format character ‘奠(0xffffffe7) at index 47
域安装好像没有成功。
如果是这样,可以运行下列命令重启您的域:
virsh --connect qemu:///system start zxw
否则,请重新开始安装。
第四步进入图形化安装

注:以此安装操作之后,会在桌面显示一个 virtviewer ,进入到安装步骤

 技术图片

 

删除一个虚拟机
[root@zxw6 qemu]# virsh undefine zxw
域 zxw 已经被取消定义

[root@zxw6 qemu]# ls
autostart centos7.0.xml networks
回复一个虚拟机
[root@zxw6 ~]# virsh define zxw.xml
定义域 zxw(从 zxw.xml)

[root@zxw6 ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
1 centos7.0 running
- zxw 关闭

 


克隆一个虚机:
virt-clone -o vm2 -n vm4 -f /var/lib/libvirt/images/vm4.qcow2
[root@zxw6 images]# virt-clone -o centos7.0 -n zxw -f /var/lib/libvirt/images/zxw.qcow2

 四、KVM 通过virsh console连入虚拟机
 新安装一台虚拟机后,是无法通过virsh console 命令连入虚拟机中的,这时我们需要开启虚拟机的console功能。
1、centos7以下,及其他情况
(1)添加ttyS0的许可,允许root登陆
         [root@localhost ~]# echo "ttyS0" >> /etc/securetty
(2)编辑/etc/grub.conf中加入console=ttyS0

技术图片

 

(3)编辑/etc/inittab,在最后一行加入内容:S0:12345:respawn:/sbin/agetty ttyS0 115200
  技术图片

 

  

(4)重启服务器
         reboot
(5)宿主机上测试
         virsh console vm-name
(6)退出console连接的虚拟机li
         按 ctrl+] 组合键退出virsh console

以上是关于kvm命令管理虚拟机的主要内容,如果未能解决你的问题,请参考以下文章

KVM命令集管理虚拟机

使用Kvm命令集管理虚拟机

实操干货KVM命令管理虚拟机与性能优化

KVM管理虚拟机命令

KVM命令集管理虚拟机

KVM命令集管理虚拟机