KVM基础命令详解

KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块。

使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等。

下面给大家介绍下KVM基础命令,内容如下所示:

KVM虚机相关命令:

开机:virsh start test1

关机:virsh shutdown test1

强制关机:virsh destroy test1

重新启动:virsh reboot test1

通过配置文档启动主机:virsh create /etc/libvirt/qemu/test1.xml

查看主机状态:virsh list --all

停止/挂机虚拟机:virsh suspend test1

保存虚拟机:virsh save test1

还原虚拟机:virsh resume test1
从一个已存在的设备配置文件新建一个虚拟机:

virsh dumpxml test1 >/etc/libvirt/qemu/test2.xml
qemu-img create -f qcow2 test2.img 20G

使用virt-install初始化安装一个Centos系统

# virt-install --connect qemu:///system \ #如果使用kvm安装,并且使用的root,默认为此,基于xen或者其它,可参考man virt-install

--n test1 \ #指定虚拟机的显示名称

--c /mnt/centos6.4-x86_64.iso #指定安装镜像,也可以指定cdrom直接安装,如:-c /dev/sr0

--r 2048 \ #指定内存,默认为MB

--arch=x86_64 \ #指定arch模型

--vcpus=2 --check-cpu --cpuset=0-1 \ #指定cpu0,1作为虚拟机的CPU,此处绑定了CPU

--os-type=linux --os-variant=rhel6 \ #指定系统类型和版本

--disk path=/var/lib/libvirt/p_w_picpaths/test1.img,device=disk,bus=virtio,spare=true -s 10 \ #指定磁盘信息,使用virtio驱动加载

--network bridge=br0 \ #指定桥接模式,并指定通过br0网卡进行桥接

--noautoconsol --autostart \ #不自动开启控制台,并且随主机自启动

--vnc #提供vnc端口访问,在这里可以设置密码,也可以不设置

--force

修改内存/CPU:

修改内存大小:virsh setmem test1 4G #默认单位为KB

设置内存的最大值:virsh setmaxmem test1 8G

增大VCPU数量:virsh setvcpus test1 8

备份/还原:

备份:virsh save --bypass-cache test1 /var/lib/libvirt/save/test1_1.save --running

还原:virsh restore/var/lib/libvirt/save/test1_1.save--bypass-cache --running

快照管理:

如果要使用kvm的快照功能,就必须使用qcow2的磁盘格式,而raw只支持内存快照,如果不是,请参考第3节内容修改

查看快照:virsh snapshot-list test1

创建快照:virsh snapshot-create test1 test1.snap1

恢复到快照:virsh snapshot-revert test1 test1.snap1

删除快照:virsh snapshot-delete test1 test1.snap1

KVM虚拟机的迁移

virsh migrate --live test1 qemu+tcp//destnationip/system tcp://destnationip

到此这篇关于KVM基础命令的文章就介绍到这了,更多相关KVM基础命令内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • kvm中使用console命令记录的方法

    前言 在工作中,我们可能都会接触到 KVM 虚拟机,并且公司的很多应用也都会跑在 KVM 虚拟机上.因此,对 KVM的熟练应用,也是运维必不可少的能力之一.那么在 KVM 的实践过程中,我们肯定会经常去思考如何能够更深入.更标准的实践好 KVM.由此,就引发了很多使用经验(技巧). kvm中使用console命令记录 KVM上有个console功能,但是在使用时候会出现以下错误: 无论什么操作都没法动. 所以需要对虚拟机修改以下内容即可正常操作: 以下所以内容都是在虚拟机中修改的,可以用vnc连

  • ubuntu下kvm 命令行安装64位ubuntu报"Couldn't find hvm kernel for Ubuntu tree."的问题分析

    1.安装ubuntu时使用的virt-install的配置: virt-install \ --name test4 \ --ram 1024 \ --disk path=/data/01_ubuntu/ubuntu4.img,size=6 \ --vcpus 1 \ --hvm \ --os-type linux \ --network network=default \ --os-variant ubuntuquantal \ --graphics none \ --console pty,

  • KVM基础命令详解

    KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块. 使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡.磁盘以及图形适配卡等. 下面给大家介绍下KVM基础命令,内容如下所示: KVM虚机相关命令: 开机:virsh start test1 关机:virsh shutdown test1

  • Docker基础命令详解

    docker基本概念 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上. Docker是一个重新定义了程序开发测试.交付和部署过程的开放平台,Docker则可以称为构建一次,到处运行,这就是docker提出的"Build once,Run anywhere" 创建镜像 创建镜像的方法有三种: 基于已有的容器创建 基于本地模板导入 基于dockerfile 基于已有的容器创建 主要使用docker

  • Linux常用ls, alias基础命令详解

    ls命令 作用:列举目录文件信息( list directory content ) 格式:ls [option] [file] 1,命令不跟任何选项与目录,表示列举当前目录的文件信息 ghostwu@dev:~$ ls Desktop examples.desktop linux Pictures python Videos Documents git_test Music project software Downloads info php Public Templates 2,ls -l

  • Centos7的Firewalld防火墙基础命令详解

    一.Linux防火墙的基础 Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实时过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙).Linux系统的防火墙体系基于内核共存:firewalld.iptables.ebtables,默认使用firewalld来管理netfilter子系统. netfilter:指的是Linux内核中实现包过滤防火墙的内部结构,不以程序或文件的形式存在,属于"内核态"的防火墙功能体系: firewalld:指用来管理Linux防护墙的命令

  • mysql数据库查询基础命令详解

    目录 1.启动数据库命令行客户端 2.查询数据库 3.进入数据库 3.查询所在数据库中所有表信息 4.查询数据库某张表结构 5.简单select查询语句(单张表) 5.1查询单张表所有数据 5.2 LIMIT限制查询结果返回数据项 5.3查询指定列数 5.4 WHERE带条件精准查询 5.5 LIKE使用通配符模糊查询 5.6 ORDER BY查询结果排序 1.启动数据库命令行客户端 #linux命令,注意区分大小写 mysql 2.查询数据库 #执行结果:返回所有数据库列表 SHOW DATA

  • hbase shell基础和常用命令详解

    HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服务. 1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase

  • 基于使用paramiko执行远程linux主机命令(详解)

    paramiko是python的SSH库,可用来连接远程linux主机,然后执行linux命令或者通过SFTP传输文件. 关于使用paramiko执行远程主机命令可以找到很多参考资料了,本文在此基础上做一些封装,便于扩展与编写脚本. 下面直接给出代码: # coding: utf-8 import paramiko import re from time import sleep # 定义一个类,表示一台远端linux主机 class Linux(object): # 通过IP, 用户名,密码,

  • linux lsof命令详解及实例

    linux lsof命令详解 简介 lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件.所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口.因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过

  • java通过ssh连接服务器执行shell命令详解及实例

    java通过ssh连接服务器执行shell命令详解 java通过ssh连接服务器执行shell命令:JSch 是SSH2的一个纯Java实现.它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等.你可以将它的功能集成到你自己的 程序中.同时该项目也提供一个J2ME版本用来在手机上直连SSHD服务器. SSH是Secure Shell的缩写,一种建立在应用层和传输层基础上的安全协议.SSH在连接和传送过程中会加密所有数据,可以用来在不同系统或者服务器之间进行安全连接.SSH提

  • linux sed命令详解(推荐)

    概述 sed命令是一个面向字符流的非交互式编辑器,也就是说sed不允许用户与它进行交互操作.sed是按行来处理文本内容的.在shell中,使用sed来批量修改文本内容是非常方便的. sed命令的选项 sed [选项] [动作] 选项与参数: -n :使用安静(silent)模式.在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上.但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来. -e :直接在命令列模式上进行 sed 的动作编辑:

随机推荐