virsh命令管理虚拟机 

   libvirt有两种控制方式,命令行和图形界面。

  1.图形界面:通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚拟机,还可以直接控制虚拟机的桌面。

  2.命令行就是接下来我所说的。如何通过命令行来控制虚拟机。

创建虚拟机

  在/etc/libvirt/qemu下新建xml文件,如node.xml。需要有内存、cpu、硬盘设置、光驱以及vnc等等。以下是我根据Openstack启的虚机修改而成,没办法,直接用Openstack的文件启动虚机会失败的,网桥不兼容什么的原因,具体的我忘了,原谅我那只有7秒钟的记忆吧~代码贴到下面了:

 <domain type='qemu'>
<name>node3</name>
<uuid>84b31010-6124-4529-baf9-bae25e18d933</uuid>
<memory unit='KiB'>524288</memory>
<currentMemory unit='KiB'>524288</currentMemory>
<vcpu placement='static'>1</vcpu>
<sysinfo type='smbios'>
<system>
<entry name='manufacturer'>Red Hat Inc.</entry>
<entry name='product'>OpenStack Nova</entry>
<entry name='version'>2014.1.1-2.el6</entry>
<entry name='serial'>421c7a3a-7f61-cde9-13cb-8b5804fc62cc</entry>
<entry name='uuid'>84b31010-6124-4529-baf9-bae25e18d933</entry>
</system>
</sysinfo>
<os>
<type arch='x86_64' machine='rhel6.5.0'>hvm</type>
<boot dev='hd'/> //硬盘启动
<smbios mode='sysinfo'/>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode='host-model'>
<model fallback='allow'/>
</cpu>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<controller type='usb' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
</controller>
<memballoon model='virtio'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</memballoon>
</devices>
</domain>

  代码分析: 

  1.<domain type='kvm'>                             域类型,也可以是xen

  2.<name>node3</name>                          虚拟机的名字

  3.<memory unit='KiB'>524288</memory>                  虚拟机的最大内存

  4.<currentMemory unit='KiB'>524288</currentMemory>     虚拟机当前的内存

  5.<vcpu>2</vcpu>                        该虚拟机的cpu数

  6.<boot dev='hd'/>                       hd表示从硬盘启动,cdrom表示从光盘启动

  7.<type arch='x86_64' machine='rhel6.5.0'>hvm</type>   表示全虚拟化

  其实还有好多其他的属性:

  1.<console type='pty'>                       console用来代表交互性的控制台

  2.<interface type='bridge'>                     网桥

  3.<source bridge='virbr0'/>                   网桥名

  4.<mac address='00:16:36:1e:1d:04'/>            MAC地址

  5.<graphics type='vnc' autoport='yes' keymap='en-us'/>       图形类型

  编辑之后就可以保存退出了。

启动虚拟机

 virsh define /etc/libvirt/qemu/node3.xml
virsh start node3

 第一行命令就是创建定义也就是创建一个虚拟机。第二行就是启动刚刚创建的虚拟机,如果启动成功,可以使用命令

 virsh list

 查看刚刚启动的虚拟机。

迁移虚拟机

 在进行迁移之前,需要先配置一下你的两台物理机,具体配置方法请移步Openstack虚拟机热迁移,然后参照此文进行配置。

 配置完成后先使用命令行

 virsh -c qemu+ssh://ip/system

 进行测试,如果可以进入virsh然后可以进行如下的命令进行迁移:

 virsh migrate --live qemu+ssh://ip/system --unsafe

其它操作

  virsh start x                                     启动名字为x的非活动虚拟机

  virsh create x.xml                          创建虚拟机(创建后,虚拟机立即执行,成为活动主机)

  virsh suspend x                                暂停虚拟机

  virsh resume x                                 启动暂停的虚拟机

  virsh shutdown x                          正常关闭虚拟机

  virsh destroy x                                 强制关闭虚拟机

  virsh dominfo x                                 显示虚拟机的基本信息

  virsh domname 2                                   显示id号为2的虚拟机名

  virsh domid x                                   显示虚拟机id号

  virsh domuuid x                               显示虚拟机的uuid

  virsh domstate x                             显示虚拟机的当前状态

  virsh dumpxml x                              显示虚拟机的当前配置文件(可能和定义虚拟机时的配置不同,因为当虚拟机启动时,需要给虚拟机分配id号、uuid、vnc端口号等等)

  virsh setmem x 512000                    给不活动虚拟机设置内存大小

  virsh edit x                                     编辑配置文件(一般是在刚定义完虚拟机之后)

 

   PS:本博客欢迎转发,但请注明博客地址及作者~

  博客地址:http://www.cnblogs.com/voidy/

  <。)#)))≦

virsh命令管理虚拟机的更多相关文章

  1. nova 命令管理虚拟机

    nova命令管理虚拟机: $ nova list #查看虚拟机$ nova stop [vm-name]或[vm-id] #关闭虚拟机$ nova start [vm-name]或[vm-id] #启 ...

  2. kvm命令管理虚拟机

    virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式: KVM 工具集合 libvirt:操作和管理KVM虚机的虚拟化 ...

  3. virsh命令和虚拟机克隆

    virsh 命令 virsh list  //列出正在运行虚拟机 virsh list --all     //列出所有虚拟机 virsh  console sunhao-1  //进入名字为sunh ...

  4. kvm--virsh命令行下管理虚拟机

    virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式: (1)基础操作 --- 命令行下管理虚拟机 virsh list ...

  5. Service系统服务(一):安装一个KVM服务器、KVM平台构建及简单管理、virsh基本管理操作、xml配置文件的应用、为虚拟机制作快照备份、快建新虚拟机

    一.安装一个KVM服务器 目标: 本例要求准备一台 RHEL7.2 服务器,将其搭建为KVM平台,主要完成下列操作: 1> 关闭本机的SELinux保护.防火墙服务   2> 挂载RHEL ...

  6. kvm虚拟机不能使用virsh shutdownw命令关闭虚拟机的解决方法

    今天笔者在对kvm虚拟机进行管理时,使用virsh shutdown命令关闭指定的虚拟机时,发现虽然有如下的提示,但其实虚拟机却一直不会真正的关闭. 经过查看virsh命令帮助和上网查询,才得知vir ...

  7. virsh命令行管理工具

    virsh命令行管理工具 Libvirt有两种控制方式,命令行和图形界面 图形界面: 通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚拟机 ...

  8. 使用virsh命令创建KVM虚拟机快照

    查看虚拟机所在主机和虚拟机名称:[root@node-1 ~]# nova show a88dcf5d-c8b2-46a5-af27-a176d8235c9d|grep hyper| OS-EXT-S ...

  9. virsh命令来创建虚拟机

    virsh命令来创建虚拟机步骤 (1)生成硬盘镜像文件: 格式:raw或qcow2 # qemu-img create -f raw fdisk.img 10G qemu-img convert re ...

随机推荐

  1. C# 发Domino邮件 报错误 Password or other security violation for database 的解决方案

    错误提示: Password or other security violation for database ******* 问题产生的描述: 之前C#发邮件是好的 加上了附件部分代码之后,出现了这 ...

  2. Cypress测试工具

    参考博客:  https://testerhome.com/articles/19035 最近一段时间学习了cypress的测试工具, 她是一个端到端的测试web工具. 环境准备 1.工具:vs co ...

  3. GitLab关于SSH的使用

    SSH Git是分布式版本控制系统,这意味着您可以在本地工作,但您也可以将更改共享或“推送”到其他服务器.在将更改推送到GitLab服务器之前,您需要一个用于共享信息的安全通信通道. SSH协议提供此 ...

  4. 【Oracle】曾经的Oracle学习笔记(4-7)多表联合查询,子查询,动态条件查询

    一.多表联合查询 二.子查询 三.动态条件查询 LESSON 4 Displaying Data from Multiple Tables------------------------------- ...

  5. Neo4j-3.0.3 (Debian 8)

    平台: Ubuntu 类型: 虚拟机镜像 软件包: neo4j-3.0.3 basic software database graph database infrastructure neo4j op ...

  6. pat乙级1067

    1.用cin输入数据后,再用getline 输入,还是会输入cin已经输入的数据,即cin和getline互相独立. 2.题目中没有说尝试的密码不包含空格,因此不能用cin,而用getline. #i ...

  7. Windows底层开发前期学习准备工作

    1.若对Windows底层开发没有兴趣,不建议继续深究, 若有些兴趣可以继续. 2. 先广泛打基础,比如C/ASM/C++/MFC,再学习Windows核心编程,对R3上的一些开发有所熟悉,再系统的学 ...

  8. app之间的跳转和传参问题

    app 之间跳转和传参: 首先 创建2个app   formApp (需要跳转到另外app的项目)     toApp(被跳转的项目) 一:在toApp 项目中的操作: 1:创建URLSchemes ...

  9. JQuery的checkbox全选与全不选操作

    最主要是:子选择框要与总选择框的状态一致,即当选择总选择框时,向子选择框添加属性,使用jquery中的attr属性 例: html中的代码 <input type="checkbox& ...

  10. C# 运用DirectoryInfo类和FileInfo类

    DirectoryInfo类和FileInfo类的基类都是FileSystemInfo类,这个类是一个抽象类,也就是说你不可以实例化该类,只能通过继承产生其子类并实例化其子类.然而你却可以运用由该类定 ...