常用命令

创建新镜像:qemu-img create -f qcow2 /var/lib/libvirt/images/$1.img 100G

创建新镜像:qemu-img create -f qcow2 -o preallocation=metadata /var/lib/libvirt/images/$1.img 200G (真实大小)
创建虚拟机:virt-install --name $1 --ram 4096 --vcpus=2 --disk path=/var/lib/libvirt/images/$1.img,size=100 --accelerate --cdrom /data/iso/ubuntu-14.04.5-server-amd64.iso --graphics vnc,listen=0.0.0.0
基于老镜像创建镜像:qemu-img create -f qcow2 -b /var/lib/libvirt/images/old.img /var/lib/libvirt/images/new.img
启动虚拟机:virsh start vmname
关闭虚拟机:virsh shutdown vmname
强制关闭虚拟机:virsh destroy vmname
删除虚拟机:virsh undefine vmname
查看虚拟机网卡:virsh domiflist vmname
添加网卡:virsh attach-interface vmname --type bridge --source br1 --config
删除网卡:virsh detach-interface vmname --type bridge --mac 52:54:00:14:86:cf
克隆虚拟机:virt-clone -o old_vmname -n new_vmname -f /var/lib/libvirt/images/new_vmname.img
创建快照:virsh snapshot-create-as vmname snapshot_name
查看虚拟机快照:virsh snapshot-list vmname
回滚快照:virsh snapshot-revert --domain vmname snapshot_name
删除快照:virsh snapshot-delete vmname snapshot_name
根据配置文件起虚拟机: virsh define /etc/libvirt/qemu/INIT-CASSANDRA-01.xml

virsh edit vmname    动态修改kvm配置文件

添加磁盘:

方法一:virsh attach-disk $kvmname  $镜像位置 vda --subdriver qcow2 --config --live

方法二:

1,创建磁盘:

qemu-img create -f qcow2 /data/vm/huge.img 500G

2,编写一个xml文件(disk.xml):

<disk type='file' device='disk'>

<driver name='qemu' type='qcow2' cache='none'/>

<source file='/data/vm/huge.img'/>

<target dev='vdb' bus='virtio'/>

</disk>

3,添加磁盘:

virsh attach-device --persistent vm-name disk.xml

安装新机器

qemu-img create -f qcow2 /var/lib/libvirt/images/$1.img 100G

virt-install --name $1 --ram 4096 --vcpus=2 --disk path=/var/lib/libvirt/images/$1.img,size=100 --accelerate --cdrom /data/iso/ubuntu-14.04.5-server-amd64.iso --graphics vnc,listen=0.0.0.0
virsh domiflist vsftp #查看vsftp虚拟机的网卡信息
virsh attach-interface vsftp --type bridge --source br1 --config #创建vsftp另一块网卡(注意网桥是两个不一样的)
virsh detach-interface vsftp --type bridge --mac 52:54:00:14:86:cf #删除网卡
ps -ef|grep $虚拟机名称 #查看vnc

vnc连接,添加一块虚拟机网卡

虚机网卡配置

vim /etc/network/interfaces

ubuntu网卡配置:

root@ubuntu:/etc# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
auto ens3
iface ens3 inet static
address 192.168.0.90
netmask 255.255.255.0
gateway 192.168.0.254
dns-nameservers 192.168.0.25
dns-search redmine
auto ens6
iface ens6 inet static
address 10.0.18.90
netmask 255.255.252.0
# gateway 10.0.16.1
network 10.0.16.0
broadcast 10.0.19.255

centos网卡配置

[root@kvm3 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.0.53
NETMASK=255.255.255.0
[root@kvm3 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1

rc.local添加命令
route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.0.16.1

报错

是因为配置文件中的os部分系统信息不正确导致,可以先virsh-install一台虚拟机,将os部分拷贝即可

vmname.xml

 <domain type='kvm'>          ##描述hypervisor
<name>centos7.</name>        ##定义虚拟机整体信息
<uuid>c2d264d3-5c61-4d2e--b28673c1f64b</uuid>
<memory unit='KiB'></memory>
<currentMemory unit='KiB'></currentMemory>
<vcpu placement='static'></vcpu>
<os>                  ##系统信息
<type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type>
<boot dev='hd'/>      ##开机从哪里启动
</os>
<features>          ##硬件资源特性
<acpi/>
<apic/>
</features>
<cpu mode='custom' match='exact'>
<model fallback='allow'>Haswell-noTSX</model>
</cpu>
<clock offset='utc'>
<timer name='rtc' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
</clock>
<on_poweroff>destroy</on_poweroff>      ##突发事件处理
<on_reboot>restart</on_reboot>
<suspend-to-mem enabled='no'/>
<suspend-to-disk enabled='no'/>
</pm>
<devices>                ##外设资源
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>    ##描述虚拟磁盘image
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/centos7.0.qcow2'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
</disk>
<controller type='usb' index='' model='ich9-ehci1'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x7'/>
</controller>
<controller type='usb' index='' model='ich9-uhci1'>
<master startport=''/>
</controller>
<controller type='usb' index='' model='ich9-uhci2'>
<master startport=''/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x1'/>
</controller>
<controller type='usb' index='' model='ich9-uhci3'>
<master startport=''/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x2'/>
<controller type='virtio-serial' index=''>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</controller>
<interface type='bridge'>    ##虚拟网络,基于网桥
<mac address='52:54:00:6a:1e:54'/>
<source bridge='br0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<serial type='pty'>      ##串口信息可以不用更改
<target port=''/>
</serial>
<console type='pty'>
<target type='serial' port=''/>
</console>
<channel type='unix'>
<target type='virtio' name='org.qemu.guest_agent.0'/>
<address type='virtio-serial' controller='' bus='' port=''/>
</channel>
<channel type='spicevmc'>
<target type='virtio' name='com.redhat.spice.0'/>
<address type='virtio-serial' controller='' bus='' port=''/>
</channel>
<input type='tablet' bus='usb'/>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
<graphics type='vnc' port='-1' autoport='yes' keymap='en-us'/>
<sound model='ich6'>      ##从此往下的内容可以不用更改
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</sound>
<video>
<model type='qxl' ram='' vram='' vgamem='' heads=''/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
<redirdev bus='usb' type='spicevmc'>
</redirdev>
<redirdev bus='usb' type='spicevmc'>
</redirdev>
<memballoon model='virtio'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
</memballoon>
</devices>
</domain>

第一行定义了虚拟机的名字。libvirt可以通过虚拟机的名字对虚拟机进行管理。在同一台物理机上,虚拟机的名字必须要保证唯一的。如果存在重名的情况,添加和创建虚拟机时,会失败。

第二行定义的虚拟机的UUID。在同一台物理机上,UUID值也必须是唯一的,否则会出现冲突。

第三四行描述虚拟机的内存信息,通常以KB为单位。

第五行指明了分配的虚拟CPU的个数。

kvm:日常使用的更多相关文章

  1. KVM之五:KVM日常管理常用命令

    1.查看.编辑及备份KVM 虚拟机配置文件 以及查看KVM 状态: 1.1.KVM 虚拟机默认的配置文件在 /etc/libvirt/qemu 目录下,默认是以虚拟机名称命名的.xml 文件,如下,: ...

  2. kvm日常维护

    1.列出物理机器上安装的虚拟[root@localhost ~]# virsh list --all Id Name State------------------------------------ ...

  3. 005.KVM日常管理2-virt管理

    一 安装管理工具 [root@kvm-host ~]# rpm -qa|grep libguestfs-tools #查看相关管理工具,若没安装,可使用yum安装.   二 日常管理 2.1 命令格式 ...

  4. 004.KVM日常管理1

    一 常用命令 1.1 查看虚机列表及状态 [root@kvm-host ~]# virsh list --all 1.2 连接虚机 [root@kvm-host ~]# virsh console v ...

  5. kvm日常管理

    创建虚拟机 快速启动虚拟机 [root@localhost ~]# yum install kvm libvirt python-virtinst qemu-kvm virt-viewer bridg ...

  6. KVM 日常使用命令

    [root@Eren liwm]# ps ax | grep kvm  681 ?        S<     0:00 [kvm-irqfd-clean]17597 pts/0    S+   ...

  7. kvm虚拟机日常管理和配置操作命令梳理

    KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理.1)查看KVM虚拟机配置文件及运行状态KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/autostart目录是配置kvm ...

  8. kvm虚拟机日常操作命令梳理

    KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理.废话不多说,下面列出kvm日常管理中的命令 1)查看KVM虚拟机配置文件及运行状态 KVM虚拟机默认配置文件位置: /etc/libvirt ...

  9. 使用kvm虚拟出Centos6.5系统相关步骤

    使用kvm虚拟出Centos6.5系统相关步骤 kvm是啥东西,亲们自行百度哇,一两句话也说不清楚,直接进主题使用宿主机虚拟出一台centos6.5的系统,当然其他系统也可以的,考虑到企业常用服务器系 ...

  10. Ubuntu18.04服务器使用netplan网络构建桥接kvm虚拟机

    参考链接 Ubuntu 18.04 LTS安装KVM虚拟机 如何在 Ubuntu 18.04 服务器上安装和配置 KVM KVM日常管理和克隆 KVM详解 1.准备工作 首先需要检查一下CPU是否支持 ...

随机推荐

  1. bzoj 2006: [NOI2010]超级钢琴【st表+堆】

    设计一个五元组(i,l,r,p,v),表示在以i为左端点,右端点落在(l,r)中的情况下,取最大值v时右端点落在p.把这个五元组塞到优先队列里,以v排序,每次取出一个,然后把这个取过的五元组分成两个( ...

  2. 【POJ - 1661】Help Jimmy (动态规划)

    Help Jimmy Descriptions: "Help Jimmy" 是在下图所示的场景上完成的游戏. 场景中包括多个长度和高度各不相同的平台.地面是最低的平台,高度为零,长 ...

  3. 【Maven】CentOS7使用Nexus3搭建maven私服

    一.简介 Maven是一个采用纯Java编写的开源项目管理工具, Maven采用了一种被称之为Project Object Model(POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做PO ...

  4. linux ls touch、umask、 chattr

    1.$PATH2.ls -al ~ (~ 显示隐藏的文件) 3$ cd ~ // 回到自己的主文件4.cp /var/log/wtmp . //复制到当前目录,最后的“.”不要忘 ls -l /var ...

  5. ACMer需要的 java基本知识

    1.基本定义 import java.util.*; import java.io.*; public class Main { public static void main(String[] ar ...

  6. 01背包(分组) HDOJ 4341 Gold miner

    题目传送门 题意:有n个金矿,每个金矿有抓取的消耗的时间和价值,矿工在原点,问在T时间内能得到的最大的价值 分析:唯一和01背包不同的是金矿可能共线,也就是抓取近的金矿后才能抓后面共线的金矿.这是分组 ...

  7. 在linux环境下使用itext生成pdf

    转载请注明出处 https://www.cnblogs.com/majianming/p/9537173.html 项目中需要对订单生成pdf文件,在不断的尝试之后,终于生成了比较满意的pdf文档. ...

  8. Oracle中的序列

    序列是什么? 序列是用来生成唯一.连续的整数的数据库对象.序列通常用来自动生成主键或唯一键的值.序列可以按升序排列,也可以按照降序排列. 其实Oracle中的序列和MySQL中的自增长差不多一个意思. ...

  9. redis 远程连接方法

    解决方法 1.修改redis服务器的配置文件 vi redis.conf 注释以下绑定的主机地址 # bind 127.0.0.1 或 vim  redis.conf bind  0.0.0.0 pr ...

  10. (6)《Head First HTML与CSS》学习笔记---结尾、《HTML5权威指南》读书笔记

    1.内联元素的外边距.内边距与块元素稍有不同. 如果一个内联元素四周都增加外边距,只能看到左边和右边会增加空间:你也可以对内联元素的上下增加内边距,不过这个内边距不会影响包围它的其他内联元素的间距—— ...