libvirt(virsh命令总结)
virsh回车进入交互式界面:
version
pwd
hostname 显示本节点主机名
nodeinfo 显示节点信息
list --all 显示所有云主机
7种状态:
running 运行中
idel 空闲,未运行
paused 暂停状态
shutdown 关闭
crashed 虚拟机崩溃
dying 垂死状态,但是又没有完全关闭或崩溃
shutdown <domain>
destroy <domain> 强制关闭虚拟机(相当于直接拨电源)
start <domain> 启动虚拟机
edit <domain> 编辑该虚拟机的xml文件
dommemstat <domain> 获取domain的内存状态
suspend <domain> 挂起一个正在运行的虚拟机,该虚拟机仍占资源;
resume <domain> 从挂起状态恢复一下虚拟机
vcpuinfo <domain> 显示一些虚拟机的vcpu的信息
vncdisplay <domain> 显示vnc监听地址和端口
快照相关:
snapshot-create <domain> xmlfile 给domain创建一个snapshot,详细内容保存在xmlfile中
snapshot-current <domain> 显示一个domain的当前的snapshot
snapshot-list <domain> 显示一个domain的所有的snapshot
snapshot-revert <domain> snapshot 恢复一个domian到以前的snapshot
snapshot-delete <domain> snapshot --children 删除一个domain的snapshot
如何用libvirt远程管理虚拟机?
要用libvirt连接到超级管理程序,我们需要一个URI,这个URI配合virsh和virt-viewer命令使用,后面可以跟一些可选项,virt-viewer可以调用一些链接参数,例如:virsh -c qemu:///system 当链接到远程机器时,可以定义几种使用的协议:ssh,tcp,tls。当链接到远程机器时,需要使用远程主机的用户和主机名进行链接,如果没有定义链接用户,则会使用本机环境的$USER的用户进行链接,当连接到qemu hypervisor时,接受两种链接类型:system可以有所有的访问权限,session有限制的访问。例如:
使用full access链接至本机的qemu hypervisor,前面的-c 是为了执行后面的list命令(--connect)
virsh -c qemu:///system list
使用full access链接至远程主机的qemu hypervisor,每次都要输入ssh密码,改成ssh无密码登陆就不需要输入密码了,直接显示结果。
virsh -c qemu+ssh://tux@mercur/system 直接进入交互virsh模式
virsh -c qemu+ssh://10.1.1.8/system list 直接显示list后的结果
其余连接格式如下:
qemu:///session (local access to per-user instance)
qemu+unix:///session (local access to per-user instance)
qemu:///system (local access to system instance)
qemu+unix:///system (local access to system instance)
qemu://example.com/system (remote access, TLS/x509)
qemu+tcp://example.com/system (remote access, SASl/Kerberos)
qemu+ssh:///system (remote access, SSH tunnelled)
使用libvirt创建kvm虚拟机:
1、制作虚拟机镜像
qemu-img create -f qcow2 test.qcow2 10G //格式,名字,大小
2、下载并复制iso镜像到指定目录(在第3步中创建xml文件中指定)
3、创建安装配置文件,demo.xml如下,可以根据自己需求更改
<domain type='kvm'>
<name>test_ubuntu</name> //虚拟机名称
<memory>1048576</memory> //最大内存,单位k
<currentMemory>1048576</currentMemory> //可用内存,单位k
<vcpu>8</vcpu> //虚拟cpu个数
<os>
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='cdrom'/> //光盘启动
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='localtime'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/test.qcow2'/> //目的镜像路径
<target dev='hda' bus='ide'/>
</disk>
<disk type='file' device='cdrom'>
<source file='/var/lib/libvirt/images/ubuntu.iso'/> //光盘镜像路径
<target dev='hdb' bus='ide'/>
</disk>
<interface type='bridge'> //虚拟机网络连接方式
<source bridge='kvmbr0'/> //当前主机网桥的名称
<mac address="00:16:3e:5d:aa:a8"/> //为虚拟机分配mac地址,务必唯一,否则dhcp获得同样ip,引起冲突
</interface>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='-1' autoport='yes' listen = '0.0.0.0' keymap='en-us'/>//vnc方式登录,端口号自动分配,自动加1,可以通过virsh vncdisplay来查询
</devices>
</domain>
virsh define demo.xml //创建虚拟机
virsh start test_ubuntu //启动虚拟机
virsh vncdisplay test_ubuntu ////查看虚拟机的vnc端口, 然后就可以通过vnc登录来完成虚拟机的安装
libvirt(virsh命令总结)的更多相关文章
- [转载]libvirt(virsh命令总结)
libvirt(virsh命令总结) virsh回车进入交互式界面: version pwd hostname 显示本节点主机名 nodeinfo 显示节点信息 list --all 显示所有云主机 ...
- libvirt(virsh命令介绍)
有了virt-install是安装虚拟机的命令,当然也需要一个管理虚拟机的命令了,那就是virsh. virsh命令使用 virsh <command> <domain-id> ...
- virsh命令行管理工具
virsh命令行管理工具 Libvirt有两种控制方式,命令行和图形界面 图形界面: 通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚拟机 ...
- virsh命令管理虚拟机
virsh命令管理虚拟机 libvirt有两种控制方式,命令行和图形界面. 1.图形界面:通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚 ...
- virsh 命令
virsh是用与管理虚拟化环境中的客户机和Hypervisor的命令行工具,与virt-manager等工具类似,也是调用libvirt API来实现虚拟化的管理. 在使用virsh命令行进行虚拟化管 ...
- 05.virsh命令的常用操作(kvm)
注:以下命令均可在virsh的man手册页中找到 KVM虚拟机管理常用命令(domain): virsh命令参数 功能 用法举例 list 查看已经存在的domain信息(可以带参数) vir ...
- virsh命令来创建虚拟机
virsh命令来创建虚拟机步骤 (1)生成硬盘镜像文件: 格式:raw或qcow2 # qemu-img create -f raw fdisk.img 10G qemu-img convert re ...
- virsh命令和虚拟机克隆
virsh 命令 virsh list //列出正在运行虚拟机 virsh list --all //列出所有虚拟机 virsh console sunhao-1 //进入名字为sunh ...
- 使用virsh命令创建KVM虚拟机快照
查看虚拟机所在主机和虚拟机名称:[root@node-1 ~]# nova show a88dcf5d-c8b2-46a5-af27-a176d8235c9d|grep hyper| OS-EXT-S ...
随机推荐
- C++那些库
在C++中,库的地位是非常高的. 基础库 boost“准”标准库 boost库是经过千锤百炼,可移植提供源代码的C++库,作为标准库的后备.跨平台的.有一个大的C++社区支持 Boost中比较著名的库 ...
- mysql基本总结
创建数据库 creat table test( #整数通常使用int test_id int, #小数通常使用decimal test_price decimal, #普通文本通常使用,并使用Defa ...
- Foundation Sorting: Quicksort
/* Quick Sorting. * Implementation history:. * 2013-09-15, Mars Fu, first version. */ /* [Quicksort ...
- Android.mk的用法和基础
一个Android.mk file用来向编译系统描述你的源代码.具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次.你可以在每一个Android.mk file中定义一个 ...
- Android中的一些基础知识(二)
这几天在回顾Android的基础知识,就把一些常见的知识点整理一下,以后忘了也可以翻出来看一看. 简单介绍一下Activity的生命周期 在API文档中对生命周期回调的函数描述的很详细,这里我只是翻译 ...
- C#中继承,集合(Eleventh day)
又到了总结知识的时间,今天在云和学院继续学习了继承的一些运用,和集合的运用.下面就总结下来吧 理论: 显示调用父类的构造方法,关键字: base:构造函数不能被继承:子类对象被实例化的时候会先去主动的 ...
- 自定义cell相关注意事项
1.拖线成功后,如果又在.h文件或者.m文件里面删除了对应的属性或者方法.一定要在xib文件中,删除关联.方法是:右键点击一下对应的UI控件,把多余的关联叉掉就行了. 不然容易崩溃.
- Error D8016 '/ZI' and '/Gy-' command-line options are incompatible
使用vs运行工程时出现错误: Severity Code Description Project File Line Suppression StateError D8016 '/ZI' and '/ ...
- MongoDB shell常用命令
Shell操作数据库: 1. 超级用户相关: 1. #进入数据库admin use admin 2. #增加或修改用户密码 db.addUser('name','pwd') 3. #查看用户列表 d ...
- linux shell awk 流程控制语句(if,for,while,do)详细介绍
在linux awk的 while.do-while和for语句中允许使用break,continue语句来控制流程走向,也允许使用exit这样的语句来退出.break中断当前正在执行的循环并跳到循环 ...