• kvm虚拟机命令梳理


    kvm虚拟机命令梳理

      1 1)查看KVM虚拟机配置文件及运行状态
      2 KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/
      3 autostart目录是配置kvm虚拟机开机自启动目录。
      4   
      5 virsh命令帮助
      6 # virsh -help
      7 或直接virsh命令和,再执行子命令。如下所示。
      8 # virsh
      9 欢迎使用 virsh,虚拟化的交互式终端。
     10 输入:'help' 来获得命令的帮助信息
     11 'quit' 退出
     12 virsh # help
     13 .......
     14   
     15 查看kvm虚拟机状态
     16 #virsh list --all
     17   
     18 2)KVM虚拟机开机
     19 # virsh start oeltest01
     20   
     21 3)KVM虚拟机关机或断电
     22 关机
     23 默认情况下virsh工具不能对linux虚拟机进行关机操作,linux操作系统需要开启与启动acpid服务。在安装KVM linux虚拟机必须配置此服务。
     24 # chkconfig acpid on
     25 # service acpid restart
     26 virsh关机
     27 # virsh shutdown oeltest01
     28   
     29 强制关闭电源
     30 # virsh destroy wintest01
     31   
     32 4)通过配置文件启动虚拟机
     33 # virsh create /etc/libvirt/qemu/wintest01.xml
     34   
     35 5)配置开机自启动虚拟机
     36 # virsh autostart oeltest01
     37   
     38 autostart目录是kvm虚拟机开机自启动目录,可以看到该目录中有KVM配置文件链接。
     39   
     40 6)导出KVM虚拟机配置文件
     41 # virsh dumpxml wintest01 > /etc/libvirt/qemu/wintest02.xml
     42   
     43 KVM虚拟机配置文件可以通过这种方式进行备份。
     44   
     45 7)添加与删除KVM虚拟机
     46 删除kvm虚拟机
     47 # virsh undefine wintest01
     48 说明:该命令只是删除wintest01的配置文件,并不删除虚拟磁盘文件。
     49   
     50 重新定义虚拟机配置文件
     51 通过导出备份的配置文件恢复原KVM虚拟机的定义,并重新定义虚拟机。
     52 # mv /etc/libvirt/qemu/wintest02.xml /etc/libvirt/qemu/wintest01.xml
     53 # virsh define /etc/libvirt/qemu/wintest01.xml
     54   
     55 8)编辑KVM虚拟机配置文件
     56 # virsh edit wintest01
     57 virsh edit将调用vi命令编辑/etc/libvirt/qemu/wintest01.xml配置文件。也可以直接通过vi命令进行编辑,修改,保存。
     58 可以但不建议直接通过vi编辑。
     59 # vim /etc/libvirt/qemu/wintest01.xml
     60   
     61 9)irsh console 控制台管理linux虚拟机
     62 配置virsh console见下文
     63 kvm虚拟化学习笔记(六)之kvm虚拟机控制台登录配置
     64 # virsh console oeltest01
     65   
     66 10)其它virsh命令
     67 挂起服务器
     68 # virsh suspend oeltest01
     69   
     70 恢复服务器
     71 # virsh resume oeltest01
     72   
     73 virsh命令丰富。可以执行各种维护任务,本文只是从维护与管理的角度例举了常用的命令,为该命令的使用提供一个思路。
     74   
     75   
     76 -------------------------------------------其他命令-------------------------------------------
     77 1)创建虚拟机
     78 [root@localhost ~]# virt-install --name=centos1  #生成一个虚拟机
     79 --ram 1024 --vcpus=1 
     80 --disk path=/root/centos1.img,size=10 
     81 --accelerate --cdrom /root/CentOS-6.5-x86_64-bin-DVD1.iso 
     82 --graphics vnc,port=5921 --network bridge=br0
     83   
     84 2)virsh的其他操作
     85 [root@localhost /]# virsh start centos1 #启动虚拟机
     86 [root@localhost /]# virt-viewer centos1 #如果有图形界面的话,可以进入虚拟机的界面
     87 [root@localhost ~]# virsh shutdown centos1 #关闭虚拟机
     88 [root@localhost /]# virsh reboot centos1 #重启虚拟机
     89 [root@localhost /]# virsh suspend centos1 #暂停虚拟机
     90 [root@localhost /]# virsh resume centos1 #恢复虚拟机
     91 [root@localhost /]# virsh autostart centos1 #自动加载虚拟机
     92   
     93 -------------------------------------------virsh参数如下-------------------------------------------
     94 autostart      #自动加载指定的一个虚拟机
     95 connect        #重新连接到hypervisor
     96 console        #连接到客户会话
     97 create         #从一个SML文件创建一个虚拟机
     98 start          #开始一个非活跃的虚拟机
     99 destroy        #删除一个虚拟机
    100 define         #从一个XML文件定义一个虚拟机
    101 domid          #把一个虚拟机名或UUID转换为ID
    102 domuuid        #把一个郁闷或ID转换为UUID
    103 dominfo        #查看虚拟机信息
    104 domstate       #查看虚拟机状态
    105 domblkstat     #获取虚拟机设备快状态
    106 domifstat      #获取虚拟机网络接口状态
    107 dumpxml        #XML中的虚拟机信息
    108 edit           #编辑某个虚拟机的XML文件
    109 list           #列出虚拟机
    110 migrate        #将虚拟机迁移到另一台主机
    111 quit           #退出非交互式终端
    112 reboot         #重新启动一个虚拟机
    113 resume         #重新恢复一个虚拟机
    114 save           #把一个虚拟机的状态保存到一个文件
    115 dump           #把一个虚拟机的内核dump到一个文件中以方便分析
    116 shutdown       #关闭一个虚拟机
    117 setmem         #改变内存的分配
    118 setmaxmem      #改变最大内存限制值
    119 suspend        #挂起一个虚拟机
    120 vcpuinfo       #虚拟机的cpu信息
    121 version        #显示virsh版本
    122   
    123 3)virt-clone,如果我们要建几个一样的虚拟机,这个命令,非常有用!
    124 # virt-clone --connect=qemu:#/system -o centos1 -n centos3 -f /root/centos3.img #克隆centos1
    125 正在克隆 centos1.img | 10.0 GB 00:07
    126   
    127 Clone 'centos3' created successfully.
    128 libguestfs-tools是虚拟机一个管理包,很有用的工具
    129 [root@localhost ~]# yum -y install libguestfs-tools #安装工具包
    130   
    131 4)未登录的情况下,查看镜像目录
    132 [root@localhost ~]# virt-ls centos.img /home #查看centos.img镜像文件中/home目录
    133 tank
    134   
    135 5)未登录的情况下,将镜像文件中的文件copy出来
    136 [root@localhost ~]# virsh list --all #查看所有的虚拟机名称
    137 Id 名称 状态
    138 ----------------------------------------------------
    139 1 centos1 running
    140 2 centos6.5 running
    141 - arch 关闭
    142 - arch1 关闭
    143 - arch2 关闭
    144 - arch3 关闭
    145 - arch5 关闭
    146 - centos3 关闭
    147 - ubuntu 关闭
    148 - ubuntu1 关闭
    149 [root@localhost ~]# virt-copy-out -d centos1 /etc/passwd /tmp          #将centos1中的文件copy到tmp下面
    150   
    151 6)查看虚拟机的分区情况
    152 [root@localhost ~]# virt-filesystems -d centos1
    153 /dev/sda1
    154 /dev/VolGroup/lv_root
    155 [root@localhost ~]# virt-list-partitions /root/centos.img
    156 /dev/sda1
    157 /dev/sda2
    158 [root@localhost ~]# virt-df centos.img
    159 Filesystem 1K-blocks Used Available Use%
    160 centos.img:/dev/sda1 495844 34510 435734 7%
    161 centos.img:/dev/VolGroup/lv_root 8780808 2842056 5492700 33%
    162   
    163 7)mount虚拟机
    164 [root@localhost ~]# guestmount -a /root/centos.img -m /dev/VolGroup/lv_root --rw /mnt/usb
    165 [root@localhost ~]# cd /mnt/usb/
    166 [root@localhost usb]# ls
    167 bin dev home lib64 media mnt opt root selinux sys usr
    168 boot etc lib lost+found misc net proc sbin srv tmp var
    169   
    170 8)修改kvm中虚拟机的内存大小
    171 [root@nfs ~]# virsh edit vm01 ##注意vi直接编辑不生效
    172 vm01
    173 df8604c1-dcf3-fa98-420f-6eea7b39c395
    174 1048576 ###本来开始设置为1G,现在这个单位是k
    175 1048576
    176   
    177 修改为1.5G
    178 [root@nfs ~]# expr 1536 * 1024
    179 1572864</p> <p>[root@nfs ~]# virsh list
    180 Id Name State
    181 ----------------------------------
    182 1 win2003 running
    183 3 vm01 running
    184  
    185 [root@nfs ~]# virsh shutdown vm01         ###修改配置文件后需要重新启动下虚拟机,先关闭它
    186 Domain vm01 is being shutdown
    187 >[root@nfs ~]# virsh list                 ###确认已经被关闭
    188 Id Name State
    189 ----------------------------------
    190 1 win2003 running
    191  
    192 [root@nfs ~]# virsh start vm01 ###启动它
    193 Domain vm01 started
    194  
    195 [root@nfs ~]# virsh list
    196 Id Name State
    197 ----------------------------------
    198 1 win2003 running
    199 3 vm01 running
    200   
    201 到机器上查看内存大小:
    202 [root@vm01 liuxiaojie]# free -m
    203 total used free shared buffers cached
    204 Mem: 1505 618 886 0 29 361
    205 -/+ buffers/cache: 227 1277
    206 Swap: 2000 0 2000
    207   
    208 9)删除一个虚拟机(vm01),可以删除一个状态为“shut off”的虚拟机
    209 [root@nfs qemu]# virsh undefine vm01
    210 [root@nfs qemu]# rm -f /home/data/vm01.img
    211   
    212 10)删除一个域
    213 [root@nfs web01]# virsh list --all
    214 Id Name State
    215 ----------------------------------
    216 1 web01 running #处于工作状态
    217 - myweb01 shut off
    218 - myweb03 shut off
    219 - mywin2003 shut off
    220 - myxp shut off
    221 - xp shut off
    222 [root@nfs web01]# virsh undefine web01 ##处于工作状态也能删除!
    223 Domain web01 has been undefined
    224 [root@nfs web01]# virsh list
    225 Id Name State
    226 ----------------------------------
    227 1 web01 running
    228 [root@nfs web01]# virsh destroy web01
    229 Domain web01 destroyed
    230 [root@nfs web01]# virsh list --all ##web01已经没有了!
    231 Id Name State
    232 ----------------------------------
    233 - myweb01 shut off
    234 - myweb03 shut off
    235 - mywin2003 shut off
    236 - myxp shut off
    237 - xp shut off
    238 [root@nfs web01]# virsh define web01
    239 error: Failed to open file 'web01': No such file or directory
    240   
    241 -------------------------------------------virsh相关命令-------------------------------------------
    242 1)安装libvirt
    243 #yum install kvm virt-* libvirt
    244 2)检查是否安装成功
    245 #lsmod |grep kvm
    246 3)相关命令
    247 #virsh -c qemu:#/system list
    248 #virsh list
    249 #virsh list --all                  #查看所有状态的虚拟机
    250 #virsh shutdown myWin7             #关闭myWin7虚拟机
    251 #virsh destroy myWin7          #删除myWin7虚拟机
    252 #virsh start node4                     #开机虚拟机
    253 #virsh define /etc/libvirt/qemu/node5.xml        #根据主机配置文档添加虚拟机
    254 #virsh dumpxml node4 > /etc/libvirt/qemu/node6.xml      #将node4虚机的配置文件保存至node6.xml
    255 #virsh edit node6             #修改node6的配置文件
    256 #virsh suspend vm_name          #暂停虚拟机
    257 #virsh resume vm_name          #恢复虚拟机
    258 4)vm配置文件路径
    259 /etc/libvirtd/qemu/***.xml 可以通过vim对配置文件进行管理,编辑后需要#service libvirtd restart(不会对现有VM有影响。)
  • 相关阅读:
    [WF4.0 实战] AutoResetEvent具体解释(线程独占訪问资源)
    linux下getrlimit与sysconf函数
    36.怎样使用定时任务
    1016. 部分A+B (15)
    找你妹+ipad+wifi,回顾那年的经典游戏
    Oracle 外键约束子表、父表
    字符串 上
    LeetCode103 BinaryTreeZigzagLevelOrderTraversal(二叉树Z形层次遍历) Java题解
    jquery ajax參数加点号状态200进error
    泛型数组随机排列工具类
  • 原文地址:https://www.cnblogs.com/liuyansheng/p/8177926.html
Copyright © 2020-2023  润新知