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如下,可以根据自己需求更改

 1 <domain type='kvm'>
 2         <name>test_ubuntu</name> //虚拟机名称
 3         <memory>1048576</memory> //最大内存,单位k
 4         <currentMemory>1048576</currentMemory> //可用内存,单位k
 5         <vcpu>8</vcpu> //虚拟cpu个数
 6         <os>
 7           <type arch='x86_64' machine='pc'>hvm</type>
 8           <boot dev='cdrom'/> //光盘启动
 9        </os>
10        <features>
11          <acpi/>
12          <apic/>
13          <pae/>
14        </features>
15        <clock offset='localtime'/>
16        <on_poweroff>destroy</on_poweroff>
17        <on_reboot>restart</on_reboot>
18        <on_crash>destroy</on_crash>
19        <devices>
20          <emulator>/usr/libexec/qemu-kvm</emulator>
21          <disk type='file' device='disk'>
22           <driver name='qemu' type='qcow2'/>
23            <source file='/var/lib/libvirt/images/test.qcow2'/> //目的镜像路径
24            <target dev='hda' bus='ide'/>
25          </disk>
26          <disk type='file' device='cdrom'>
27            <source file='/var/lib/libvirt/images/ubuntu.iso'/> //光盘镜像路径
28            <target dev='hdb' bus='ide'/>
29          </disk>
30         <interface type='bridge'> //虚拟机网络连接方式
31           <source bridge='kvmbr0'/> //当前主机网桥的名称
32           <mac address="00:16:3e:5d:aa:a8"/> //为虚拟机分配mac地址,务必唯一,否则dhcp获得同样ip,引起冲突
33         </interface>
34         <input type='mouse' bus='ps2'/>
35          <graphics type='vnc' port='-1' autoport='yes' listen = '0.0.0.0' keymap='en-us'/>//vnc方式登录,端口号自动分配,自动加1,可以通过virsh vncdisplay来查询
36        </devices>
37      </domain>

  virsh define  demo.xml    //创建虚拟机

  virsh  start    test_ubuntu   //启动虚拟机

  virsh  vncdisplay   test_ubuntu   ////查看虚拟机的vnc端口, 然后就可以通过vnc登录来完成虚拟机的安装

 

 

优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/256639

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。