virsh查看/管理虚拟机

1.virsh查看/管理虚拟机
问题
本案例要求熟悉KVM虚拟化的virsh管理工具的的基本使用,从命令行来操作虚拟机,完成以下基本任务:
1)查看KVM服务器信息
2)列出有哪些虚拟机、指定虚拟机的状态
3)基本的开关机操作
4)将虚拟机设置为自动运行
方案
virsh命令行管理的常见用法:
1)virsh:直接进交互模式
2)virsh nodeinfo:查看KVM节点(服务器)信息
3)virsh list:列出正在运行的虚拟机
4)virsh list --all:列出所有虚拟机(包括未启动的)
5)virsh dominfo 虚拟机名称:查看指定虚拟机的信息
6)virsh start 虚拟机名称:将指定的虚拟机开机
7)virsh reboot 虚拟机名称:将指定的虚拟机重启
8)virsh shutdown 虚拟机名称:将指定的虚拟机正常关机
9)virsh destroy 虚拟机名称:将指定的虚拟机强制关机(相当于拔电源)
10)virsh autostart 虚拟机名称:将指定的虚拟机设置随KVM自动开机
11)virsh autostart --disable 虚拟机名称:禁止自动开机
步骤
实现此案例需要按照如下步骤进行。
步骤一:直接使用virsh交互模式
执行不带任何参数的virsh命令,即可进入交互模式。在virsh交互模式下,可以快速、连续地执行多条虚拟机管理指令,不用每次都指定virsh,最后再exit退出;这种方式与在Shell命令行执行virsh时后面跟上虚拟机管理指令的作用是等效的。
[root@kvmsvr ~]# virsh //进入virsh交互模式
欢迎使用 virsh,虚拟化的交互式终端。

输入:‘help’ 来获得命令的帮助信息
‘quit’ 退出

virsh # list //查看所有开机的虚拟机
Id 名称 状态

3 rh6_n1 running

virsh # exit //退出
步骤二:查看虚拟机信息
1)查看KVM节点(服务器)信息
[root@kvmsvr ~]# virsh dominfo
错误:命令 ‘dominfo’ 需要 选项
[root@kvmsvr ~]# virsh nodeinfo
CPU 型号: x86_64
CPU: 2
CPU 频率: 2594 MHz
CPU socket: 1
每个 socket 的内核数: 2
每个内核的线程数: 1
NUMA 单元: 1
内存大小: 4048888 KiB
2)列出正在运行的虚拟机
[root@kvmsvr ~]# virsh list
Id 名称 状态

3 rh6_n1 running
3)列出所有虚拟机(包括未启动的)
[root@kvmsvr ~]# virsh list --all
Id 名称 状态

3 rh6_n1 running

  • testpc                         关闭
    

4)查看指定虚拟机的信息
[root@kvmsvr ~]# virsh dominfo rh6_n1
Id: 3
名称: rh6_n1
UUID: 0bd7cdcc-2579-9d5c-0513-700a36ba1b9c
OS 类型: hvm
状态: running
CPU: 1
CPU 时间: 240.9s
最大内存: 1048576 KiB
使用的内存: 1048576 KiB
Persistent: yes
自动启动: 禁用
Managed save: no
安全性模式: none
安全性 DOI: 0
步骤三:基本的开关机操作
1)将虚拟机rh6_n1正常关机
若指定的虚拟机已经在运行,可以通过virsh发送shutdown指令来关机:
[root@kvmsvr ~]# virsh shutdown rh6_n1 //关闭虚拟机rh6_n1
域 rh6_n1 被关闭
[root@kvmsvr ~]# virsh list --all //确认关闭结果(需等待至关机完成)
Id 名称 状态

  • rh6_n1                         关闭
    
  • testpc                         关闭
    

2)将虚拟机rh6_n1开机
针对处于关闭状态的虚拟机,可以通过virsh发送start指令来开机:
[root@kvmsvr ~]# virsh start rh6_n1 //开启虚拟机rh6_n1
域 rh6_n1 已开始
[root@kvmsvr ~]# virsh list --all //确认开机结果
Id 名称 状态

4 rh6_n1 running

  • testpc                         关闭
    

3)将虚拟机rh6_n1重启
针对启动完毕的正常虚拟机,可以通过virsh发送reboot指令来重启(虚拟机当前的操作系统及状态必须能够响应此请求):
[root@kvmsvr ~]# virsh reboot rh6_n1
域 rh6_n1 正在被重新启动
在重启指定虚拟机的时候,若要确认结果,可以通过virt-manager管理器来双击指定的虚拟机以观察重启响应过程,如图-1所示。
virsh查看/管理虚拟机_第1张图片
4)将虚拟机rh6_n1强制关机(相当于拔电源)
当正常关机或重启无法响应时,或者没有必要等待(比如重做系统)正常关机时,可以通过virsh发送destroy指令来强制关闭正在运行的虚拟机:
[root@kvmsvr ~]# virsh list --all //查看当前的虚拟机状态
Id 名称 状态

5 rh6_n1 running

  • testpc                         关闭
    

[root@kvmsvr ~]# virsh destroy rh6_n1 //强制关闭rh6_n1虚拟机
域 rh6_n1 被删除

[root@kvmsvr ~]# virsh list --all //确认关闭结果
Id 名称 状态

  • rh6_n1                         关闭
    
  • testpc                         关闭
    

5)虚拟机rh6_n1的自动开机设置
一台KVM虚拟机的“自动启动”状态,决定了当KVM服务器启动的时候,这台虚拟机是否也随之一起开机。启用此功能的virsh指令为autostart:
[root@kvmsvr ~]# virsh dominfo rh6_n1 //查看默认的状态
Id: -
名称: rh6_n1
… …
自动启动: 禁用 //不随KVM自动开机
… …

[root@kvmsvr ~]# virsh autostart rh6_n1 //设置rh6_n1为自启动
域 rh6_n1标记为自动开始

[root@kvmsvr ~]# virsh dominfo rh6_n1 //确认配置结果
Id: -
名称: rh6_n1
… …
自动启动: 启用 //随KVM自动开机
… …
若要关闭指定虚拟机的自动开机设置,需要执行virsh指令autostrt --disable:
[root@kvmsvr ~]# virsh autostart --disable rh6_n1 //取消rh6_n1的自启动
域 rh6_n1取消标记为自动开始

[root@kvmsvr ~]# virsh dominfo rh6_n1 //确认取消结果
Id: -
名称: rh6_n1
… …
自动启动: 禁用 //不随KVM自动开机

你可能感兴趣的:(virsh查看/管理虚拟机)