图片 29

你可以使用 virsh,总架构图 

第五步:使用命令行运营设想机

在起步设想机早先,大家供给创制它的开端磁盘镜像。为此,你须求利用
qemu-img 命令来生成一个 qemu-kvm 镜像。上面包车型地铁指令将会成立 10 GB
大小的空磁盘,并且它是 qcow2 格式的。

$ qemu-img create -f qcow2 /home/dev/images/alice.img 10G

使用 qcow2
格式的磁盘镜像的功利正是它在创设之初并不会给它分配全体尺寸磁盘体积(这里是
10
GB),而是趁着虚构机汉语件的扩展而稳步增大。因而,它对空中的选取更为低价。

当今,你能够因此使用早先创立的 xml
配置文件运转你的虚构机了。下边包车型地铁通令将会创建二个虚构机,然后自行运转它。

$ virsh create alice.xml
Domain alice created from alice.xml

留心:
倘让你对二个曾经存在的虚构机推行了了上面包车型大巴命令,那么这么些操作将会在未曾别的警报的动静下抹去那多少个已经存在的设想机的全套新闻。假设您早就创建了叁个设想机,你只怕会使用下边包车型地铁命令来运营设想机。

$ virsh start alice.xml

接受如下命令确认三个新的设想机已经被创制并打响的被运行。

$ virsh list

 Id    Name                           State
----------------------------------------------------
 3     alice                          running

同一,使用如下命令确认你的设想机的假造网卡已经被成功的丰裕到了你从前创立的
br0 网桥中。

$ sudo brctl show

图片 1

Centos6.5安装kvm虚拟化

KVM简介:
1.KVM是开源软件,全称是kernel-based virtual
machine(基于内核的设想机)。
2.是x86布局且硬件支撑设想化本领(如 intel VT 或
英特尔-V)的Linux全虚构化解决方案。
3.KVM能在不矫正linux或windows镜像的景色下同期运营四个虚构机,(它的乐趣是多少个设想机使用同一镜像)并为每一个设想机配置天性化硬件景况(网卡、磁盘、图形适配器……)

一、设置设想机扶植设想化
图片 2

二、先关闭防火墙和selinux

[root@cany ~]# service iptables stop    关闭防火墙
[root@cany ~]# setenforce 0                关闭selinux(临时生效)
setenforce: SELinux is disabled

长久生效方法

[root@cany ~]# vim /etc/sysconfig/selinux   SELINUX=enforcing 改为disabled 并reboot生效

三、检查服务器是还是不是帮助设想化

[root@cany ~]# grep -E -o 'vmx|svm' /proc/cpuinfo
vmx    如果有输出VMX就支持虚拟化

四、安装KVM所需组件,VM使用桥接互联网,使用yum安装方式(配置好yum源)

[root@cany ~]# yum install -y kvm virt-* libvirts bridge-utils qemu-img

五、加载kvm模块,查看kvm模块是还是不是被加载

[root@cany ~]# modprobe kvm-intel
[root@cany ~]# lsmod | grep kvm
kvm_intel             54285  0 
kvm                    333172  1 kvm_intel     成功加载!

六、配置网卡,具体参数如下
创制桥接网卡命令 : virsh iface-bridge eth0 br0 恐怕直接编辑网卡配置

[root@cany ~]# virsh iface-bridge eth0 br0     出现下面的错误 重启一下libvirt服务就好了
error: Failed to reconnect to the hypervisor
error: no valid connection
error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory
[root@cany ~]# /etc/init.d/libvirtd restart
Stopping libvirtd daemon:                                  [  OK  ]
Starting libvirtd daemon:                                  [  OK  ]
[root@cany ~]# virsh iface-bridge eth0 br0
Created bridge br0 with attached device eth0
Bridge interface br0 started                              成功桥接
[root@cany ~]# service network restart           重启网卡

那儿的网卡新闻

图片 3
静心 :因为eth0网卡因为与br0 网卡实行桥接,所以eth0不出示ip是常规的

七、查看近年来有所的网桥接口

[root@cany ~]# brctl show
bridge name bridge id       STP enabled interfaces
br0     8000.000c29eb8697   yes     eth0
virbr0      8000.525400941201   yes     virbr0-nic

八、修改VNC配置

[root@cany ~]#  vim /etc/libvirt/qemu.conf
    #vnc_listen = "0.0.0.0"  去掉  # 号并wq保存

九、重启libvirtd和messagebus服务

[root@cany ~]# service libvirtd restart
Stopping libvirtd daemon:                                  [  OK  ]
Starting libvirtd daemon:                                  [  OK  ]
[root@cany ~]# service messagebus restart
Stopping system message bus:                               [  OK  ]
Starting system message bus:                               [  OK  ]

十、创建、安装LVM虚拟机

[root@cany ~]# mkdir /abc         创建镜像存放目录
[root@cany ~]# mkdir -p /data/kvm     创建虚拟磁盘存放目录
[root@cany ~]# dd if=/dev/cdrom of=/abc/Centos6.iso     把Centos6.5系统的镜像文件拷贝到abc目录下
8726528+0 records in
8726528+0 records out
4467982336 bytes (4.5 GB) copied, 157.25 s, 28.4 MB/s
[root@cany libvirt]# cd /data/kvm/    进入虚拟磁盘目录创建img
[root@cany kvm]# qemu-img create -f qcow2 -o preallocation=metadata kvm_cany.img 5G
Formatting 'kvm_cany.img', fmt=qcow2 size=5368709120 encryption=off cluster_size=65536 preallocation='metadata' 
[root@cany kvm]# ls
kvm_cany.img

设置虚拟机

[root@cany kvm]# virt-install --name=kvm_cany --ram 512 --vcpus=1 -f /data/kvm/kvm_cany.img --cdrom=/abc/Centos6.iso --graphics vnc,listen=0.0.0.0,port=7788 --force --autostart

Starting install...
Creating domain...                                                                            |    0 B     00:00     
Cannot open display: 
Run 'virt-viewer --help' to see a full list of available command line options
Domain installation still in progress. You can reconnect to 
the console to complete the installation process.

如果遇到安装失败  请对虚拟磁盘存放目录权限  chmod -R 777 /data/kvm

VNC客商端连接KVM设想机
软件:VNC Viewer
图片 4
图片 5
VNC连上了后来,安装系统就ok了!安装完结后,vnc会自动挂断,因为这时虚拟机并未有运营!!!

应用 virsh调整台为 KVM 系统管理若干职务上面就让我们来手动开启刚刚安装的KVM虚拟机

[root@cany kvm]# virsh
Welcome to virsh, the virtualization interactive terminal.

Type:  'help' for help with commands
       'quit' to quit

virsh # list --all
 Id    Name                           State
----------------------------------------------------
 -     kvm_cany                       shut off

virsh # start kvm_cany
Domain kvm_cany started

再一次利用VNC客商端举行连接 并对其网卡举行配置
图片 6

只顾:出现网卡重启失利的话 将eth0网卡配置文件中的 HWADDTiggo改过成MACADDEvoque

rm -rf /etc/udev/rules.d/70-persistent-net.rules

在虚构机上查看KVM设想机械运输市价况

图片 7

3、qemu-kvm命令语法

qemu-kvm [options] [disk_image]

分选有多数品种:标准选项、块设备相关选项、展现选项、网络选项、…

(1)标准选项:
  -machine [type=]name:-machine help来获取列表,用于指定模拟的主机类型; 
  -cpu cpu:-cpu help来获取列表;用于指定要模拟的CPU型号;
  -smp n[,maxcpus=cpus][,cores=cores][,threads=threads]多少线程[,sockets=sockets]多少核:指明虚拟机上vcpu的数量及拓扑;
  -boot [order=drives][,once=drives]只用一次(如按照系统时只用一次光盘引导)[,menu=on|off] [,splash=sp_name][,splash-time=sp_time][,reboot-timeout=rb_time][,strict=on|off]
  order:各设备的引导次序:c表示第一块硬盘,d表示第一个光驱设备;-boot order=dc,once=d
  -m megs:虚拟机的内存大小;
  -name NAME:当前虚拟机的名称,要惟一;

(2)块设备相关的选项:
  -hda/-hdb file:指明IDE总线类型的磁盘映像文件路径;第0和第1个;
  -hdc/-hdd file:第2和第3个;
  -cdrom file:指定要使用光盘映像文件; 
  -drive [file=file路径][,if=type接口][,media=d接口对应的设备类型][,index=i] [,cache=writethrough|writeback|none|directsync|unsafe][,format=f]:
    ① file=/PATH/TO/SOME_IMAGE_FILE:映像文件路径;
    ② if=TYPE:块设备总线类型,ide, scsi, sd, floppy, virtio,...
    ③ media=TYPE:介质类型,cdrom和disk;
    ④ index=i:设定同一类型设备多个设备的编号;
    ⑤ cache=writethrough|writeback|none|directsync|unsafe:缓存方式;
    ⑥ format=f:磁盘映像文件的格式;
  CentOS磁盘镜像文件下载: https://cloud.centos.org/centos/7

(3)显示选项:
  -display type:显示的类型,sdl, curses, none和vnc;
  -nographic:不使用图形接口; 显卡型号
  -vga [std|cirrus|vmware|qxl|xenfb|none]:模拟出的显卡的型号;
  -vnc display[,option[,option[,...]]]]:启动一个vnc server来显示虚拟机接口; 让qemu进程监听一个vnc接口; 
    display:
      ① HOST:N
        在HOST主机的第N个桌面号输出vnc;
      ② unix:/PATH/TO/SOCK_FILE
      ③ none
    options:
      password:连接此服务所需要的密码;
  -monitor stdio:在标准输出上显示monitor界面;
    Ctrl-a, c:在console和monitor之间切换;
    Ctrl-a, h

(4)网络选项:
  -net nic[,vlan=n][,macaddr=mac][,model=type][,name=str][,addr=str][,vectors=v]
    为虚拟机创建一个网络接口,并将其添加至指定的VLAN;
    model=type:指明模拟出的网卡的型号,ne2k_pci,i82551,i82557b,i82559er,rtl8139,e1000,pcnet,virtio;
      net nic,model=?
    macaddr=mac:指明mac地址;52:54:00:

  -net tap[,vlan=n][,name=str][,fd=h][,fds=x:y:...:z][,ifname=name][,script=file][,downscript=dfile]:
    通过物理的TAP网络接口连接至vlan;
    script=file:启动虚拟机时要执行的脚本,默认为/etc/qemu-ifup
    downscript=dfile:关闭虚拟机时要执行的脚本,/etc/qemu-ifdown
    ifname=NAME:自定义接口名称;
其它选项:
  -daemonize:以守护进程运行;

 

当你想要对设想机的前期希图和末代管理落到实处自动化操作时,像 virsh
那样的命令行管理工科具是卓殊实用的。同样,virsh
帮衬多个管理器也就意味着你可以通过相仿的 virsh
接口去管理分裂的虚构机微电脑。

3、创建叁个虚构机

(1)创设三个设想机,用kubuntu 的镜像文件(用windows、linux
什么镜像文件都行)

[root@master ~]# qemu-kvm -cpu host -smp 2,sockets=1,cores=2,threads=1 -m 512 -drive file=/data/imgs/test.img,if=virtio,media=disk,format=qcow2 -drive file=/root/kubuntu-17.10-desktop-amd64.iso,if=ide,media=cdrom -boot order=dc,once=d -vnc 172.16.1.7:0

深入分析:命令详细解释见上面

 

(2)vnc 登陆实验设想机

[root@master ~]# vncviewer 172.16.1.7:0

图片 8

 

有为数不少两样的艺术去管理运维在 KVM 处理程序上的虚构机。比方,virt-manager
正是四个流行的依靠图形分界面包车型客车前端设想机管理工科具。不过,若是你想要在还未图形窗口的服务器蒙受下采用KVM
,那么依据图形分界面包车型大巴缓和方案显然是无效的。事实上,你可以独有运用包装了
kvm 命令行脚本的命令行来保管 KVM 设想机。作为代替方案,你能够动用 virsh
那些轻易采用的命令路程序来管理客商虚构机。在 virsh 中,它经过和 libvirtd
服务通讯来达到调控虚构机的目的,而 libvirtd
能够调节五个例外的设想机微处理器,包涵 KVM,Xen,QEMU,LXC 和 OpenVZ。

4、营造虚构机间的虚构通道

① 给2个设想机加 IP ,在同一网段

# ifconfig eth0 10.1.0.1/16 up

# ifconfig eth0 10.1.0.2/16 up

解析:一旦增多了IP,即是仅主机格局了

 

② 测量检验虚构通道是或不是衔接

# ping 10.1.0.2

图片 9

# ping 10.1.0.1

图片 10

 

第一步:确认你的硬件平台扶助设想化

率先步,首先要认同你的 CPU 扶持硬件虚构化增加(e.g.,Intel VT 恐怕英特尔-V卡塔尔国,那是 KVM 对硬件的须要。下边包车型大巴吩咐可以检查硬件是或不是帮助虚构化。

$ egrep '(vmx|svm)' --color /proc/cpuinfo

图片 11

若是在输出中不分包 vmx 只怕 svm 标记,那么就表示你的 cpu
不援救硬件设想化。由此你不可能在你的机器上行使 KVM 。确认了 cpu 支持 vmx
也许 svm 之后,接下去初步设置 KVM。

对于 KVM 来讲,它不要求运转在颇负 陆十六位内核系统的主机上,不过平常大家会推荐在 64 位系统的主机上边运营 KVM。

1、创立物理桥桥接接口br0

[root@master ~]# systemctl start libvirtd.service

[root@master ~]# virsh iface-bridge eth0 br0

浅析:把团结的物理网卡eth0 作为调换机,把br0 当网卡,提供IP

在乎:命令可能会卡死或出错,终端被挟持退出;等一会,在登入就OK 了

图片 12

 

第二步:安装KVM

采纳 apt-get 安装 KVM 和相关的客商空间工具。

$ sudo apt-get install qemu-kvm libvirt-bin

设置时期,libvirtd 顾客组(在 debian 上是 libvirtd-qemu
顾客组)将会被创设,并且你的顾客 id
将会被电动增多到该组中。那样做的目标是令你能够以贰个普通客户而不是 root
顾客的地位去管理设想机。你能够应用 id
命令来确认这点,上面将会报告您怎么去显得你的组 id:

$ id <your-userID>

图片 13

比如因为一些原因,libvirt(在 debian 中是 libvirt-qemu)未有在你的组 id
中被找到,你也足以手动将你协调增多到对应的组中,如下所示:

在 ubuntu 上:

$ sudo adduser [youruserID] libvirtd

在 debian 上:

$ sudo adduser [youruserID] libvirt-qemu

根据如下命令重新载入更新后的组成员关系。若是必要输入密码,那么输入你的登录密码就可以。

$ exec su -l $USER

这时候,你应当可以以普通客户的地位去实行 virsh
了。做三个之类所示的测量试验,那些命令将会以列表的情势列出可用的设想机(当前的列表是空的)。倘令你未曾境遇权限难题,那表示到近日截至一切都以寻常的。

$ virsh list

 Id    Name                           State

6、c1 虚构机磁盘设备的热插拔

(1)成立10G 大小抛荒格式的磁盘印象文件

[root@master ~]# qemu-img create -f qcow2 -o
preallocation=metadata,size=10G /data/imgs/c1.2.img

[root@master ~]# qemu-img info /data/imgs/c1.2.img 查询

图片 14

 

(2)把磁盘设备加到c1 上

[root@master ~]# virsh domblklist c1 查看c1 原来就有的磁盘设备

[root@master ~]# virsh attach-disk c1 /data/imgs/c1.2.img vda

图片 15

 

(3)连接至虚拟机,能够对那么些磁盘做分区、文件系统格式化、挂载等操作

[root@master ~]# virsh console c1

# fdisk /dev/vda

# fdisk -l /dev/vda1

图片 16

 

(3)把磁盘设备拔掉

图片 17

 

在这里篇作品中,小编会示范怎么在 ubuntu 和 debian 上经过应用 virsh
命令行去运作 KVM。

2、创造虚构的预备

(1)计划物理网桥

[root@master imgs]# brctl addbr br-c1-and-c2 成立网桥接口

[root@master imgs]# ifconfig br-c1-and-c2 up 激活网桥

[root@master imgs]# brctl show

图片 18

 

(2)计划激活连接网桥脚本

① [root@master ~]# vim /etc/qemu-ifup-pn1

#!/bin/bash
#
bridge=br-c1-and-c2
if [ -n "$1" ];then
        ip link set $1 up
        sleep 1
        brctl addif $bridge $1
        [ $? -eq 0 ] && exit 0 || exit 1
else
        echo "Error: no interface specified."
        exit 2
fi

② 加推行权限

[root@master ~]# chmod +x /etc/qemu-ifup-pn1

 

长途连接虚构机

为了远程访谈四个正值运维的虚构机的调节台,你能够利用VNC客商端。

先是,你供给利用如下命令寻觅用于设想机的VNC端口号。

$ sudo netstat -nap | egrep '(kvm|qemu)'

图片 19

在此个例子中,用于 alice 虚构机的 VNC 端口号是 5900。
然后运营三个VNC客商端,连采用二个端口号为5900的VNC服务器。在大家的例证中,设想机扶助由CentOS光盘文件运营。

图片 20

实战五:推荐多少个图形化管理设想机的工具

(1)图形管理工科具:

  kimchi:基于H5研究开发的web GUI;virt-king; 英特网搜寻kimchi kvm
有安装使用教程

  OpenStack:IaaS 相当重量级,极度吃财富;起码10台以上的虚构机才用它

  oVirt:比kimchi 功效强盛的多,比OpenStack轻量;但配备也较麻烦

  proxmox VE

(2)kvm
官方的管理工科具栈:

 

第四步:用命令行成立叁个虚构机

对此虚构机来讲,它的陈设新闻被积存在它对应的xml文件中。由此,成立二个设想机的第一步就是希图叁个与设想机对应的
xml 文件。

上面是八个演示 xml 文件,你能够遵照必要手动改革它。

    <domain type='kvm'>
      <name>alice</name>
      <uuid>f5b8c05b-9c7a-3211-49b9-2bd635f7e2aa</uuid>
      <memory>1048576</memory>
      <currentMemory>1048576</currentMemory>
      <vcpu>1</vcpu>
      <os>
        <type>hvm</type>
        <boot dev='cdrom'/>
      </os>
      <features>
        <acpi/>
      </features>
      <clock offset='utc'/>
      <on_poweroff>destroy</on_poweroff>
      <on_reboot>restart</on_reboot>
      <on_crash>destroy</on_crash>
      <devices>
        <emulator>/usr/bin/kvm</emulator>
        <disk type="file" device="disk">
          <driver name="qemu" type="raw"/>
          <source file="/home/dev/images/alice.img"/>
          <target dev="vda" bus="virtio"/>
          <address type="pci" domain="0x0000" bus="0x00" slot="0x04" function="0x0"/>
        </disk>
        <disk type="file" device="cdrom">
          <driver name="qemu" type="raw"/>
          <source file="/home/dev/iso/CentOS-6.5-x86_64-minimal.iso"/>
          <target dev="hdc" bus="ide"/>
          <readonly/>
          <address type="drive" controller="0" bus="1" target="0" unit="0"/>
        </disk>
        <interface type='bridge'>
          <source bridge='br0'/>
          <mac address="00:00:A3:B0:56:10"/>
        </interface>
        <controller type="ide" index="0">
          <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x1"/>
        </controller>
        <input type='mouse' bus='ps2'/>
        <graphics type='vnc' port='-1' autoport="yes" listen='0.0.0.0'/>
        <console type='pty'>
          <target port='0'/>
        </console>
      </devices>
    </domain>

地点的主机xml配置文件定义了如下的设想机内容。

  • 1GB内存,三个虚构cpu和一个硬件驱动
  • 磁盘镜像:/home/dev/images/alice.img
  • 从 CD-ROM 引导(/home/dev/iso/CentOS-6.5-x86_64-minomal.iso)
  • 互联网:贰个桥接到 br0 的假造网卡
  • 透过 VNC 远程访谈

<uuid></uuid> 中的 UUID
字符串可以轻便生成。为了得到几个即兴的 uuid 字符串,你大概须求选用 uuid
命令行工具。

$ sudo apt-get install uuid
$ uuid

调换一个主机 xml 配置文件的格局正是由此三个曾经存在的虚构机来导出它的
xml 配置文件。如下所示。

$ virsh dumpxml alice > bob.xml

图片 21

实战四:命令行工具virt 创设设想机及命令管理设想机

主题素材管理

本人在开创虚构机的时候遇到了一个八花九裂:

error: internal error: no supported architecture for os type ‘hvm’

比如你的硬件不援助虚构化的话你或者就能境遇那么些错误。(比如,英特尔VT恐怕英特尔-V),这是运作KVM所必备的。要是你相逢了这几个荒唐,而你的cpu援救设想化,那么这里可以给您有的可用的设计方案:

率先,检查你的内核模块是或不是错失。

$ lsmod | grep kvm

一经内核模块未有加载,你必须服从如下形式加载它。

$ sudo modprobe kvm_intel (for Intel processor)
$ sudo modprobe kvm_amd (for AMD processor)

第四个缓和方案正是增加 –connect qemu:///system 参数到 virsh
命令中,如下所示。当您正在你的硬件平台上运用超过一个设想机微机的时候就需求丰硕那一个参数(譬喻,VirtualBox,VMware)。

$ virsh --connect qemu:///system create alice.xml

当本人试着访谈作者的设想机的登入调节台的时候际遇了错误:

 $ virsh console alice
 error: internal error: cannot find character device <null>

其一错误产生的原由是您未以前在您的设想机配置文件中定义调节台设备。在 xml
文件中丰裕下边包车型大巴里边设备部分就可以。

<console type='pty'>
  <target port='0'/>
</console>

2、使用KVM 的准备

(1)前提:

① 必得跑在x86 系统的布局上

② 必需扶持硬件级虚构化

  vmx:Intel VT-x

  svm:AMD AMD-v

③ 在设想机上再虚构化,需伸开设想化 AMD VT-x/EPT

图片 22

 

(2)判别CPU是或不是帮助硬件虚构化:

[root@master ~]# grep -i -E ‘(vmx|svm|lm)’ /proc/cpuinfo

留意:vmx 或 svm 必得现身一个,表示是支撑的

  vmx:Intel VT-x

  svm:AMD AMD-v

图片 23

 

(3)安装前希图

① 装载KVM 模块

[root@master ~]# yum install libvirt-daemon-kvm qemu-kvm
virt-manager
-y

[root@master ~]# modprobe
kvm
装载kvm 模块

 

② 检验kvm 模块是或不是装载

[root@master ~]# lsmod |grep kvm

图片 24

[root@master ~]# ll /dev/kvm 字符设备

图片 25

 

③ 安装客商端工具 qemu-kvm

[root@master ~]# yum install libvirt-daemon-kvm qemu-kvm
virt-manager -y

 

图片 26

5、通过仅主机网桥连通宿主机

(1)在宿主机上的br-c1-and-c2 网桥,加多设想机网段的地址

① 每创建三个虚构主机,都会有另四分之二在宿主机上

图片 27

② [root@master ~]# ip addr add 10.1.0.10/16 dev br-c1-and-c2

[root@master ~]# ip a show br-c1-and-c2

图片 28

 

(2)测量检验仅主机网桥

# ping 10.1.0.10 在虚构机上ping

图片 29

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章