三、kvm虚拟化部署


#安装kvm软件包

yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v


#补充安装kvm虚拟化一些管理工具包

yum -y install libguestfs-tools


#查看虚拟机运行情况并开启


[root@nginx network-scripts]# service libvirtd status

libvirtd is stopped

[root@nginx network-scripts]# service libvirtd start

Starting libvirtd daemon:                                  [  OK  ]

[root@nginx network-scripts]# virsh -c qemu:///system list

 Id    Name                           State

----------------------------------------------------


#查看加载模块

[root@nginx network-scripts]# lsmod | grep kvm

kvm_intel              55496  0 

kvm                   337772  1 kvm_intel


#查看虚拟工具版本

[root@nginx ~]# virsh --version

0.10.2

[root@nginx ~]# ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm

[root@nginx ~]# qemu-kvm -version

QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2-2.479.el6_7.4), Copyright (c) 2003-2008 Fabrice Bellard


#配置桥接网卡

[root@nginx ~]# cd /etc/sysconfig/network-scripts/


[root@nginx network-scripts]# cat ifcfg-em1

DEVICE=em1

TYPE=Ethernet

BRIDGE="br0"

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=none

HWADDR=C5:1F:46:F8:A5:20

IPADDR=10.9.9.16

PREFIX=24

GATEWAY=10.9.9.2

DNS1=218.201.4.3

DOMAIN=218.201.17.2

NAME="System em1"


wKiom1cXP9-jvsmcAAAwaWLQStU221.png

[root@nginx network-scripts]# cp ifcfg-em1 ifcfg-br0


[root@nginx network-scripts]# cat ifcfg-br0 
DEVICE=br0
TYPE=Bridge

ONBOOT=yes
BOOTPROTO=static
HWADDR=C5:1F:46:F8:A5:20
IPADDR=10.9.9.16
PREFIX=24
GATEWAY=10.9.9.2
DNS1=218.201.4.3
DOMAIN=218.201.17.2

wKiom1cXP2yDCe-TAAAplqm9zZg428.png

#重启网卡

[root@nginx network-scripts]# /etc/init.d/network restart

Shutting down interface em1:  bridge br0 does not exist!

                                                           [  OK  ]

Shutting down loopback interface:                          [  OK  ]

Bringing up loopback interface:                            [  OK  ]

Bringing up interface em1:                                 [  OK  ]

Bringing up interface br0:  Determining if ip address 10.9.9.16 is already in use for device br0...

                                                           [  OK  ]


#查看网卡配置,这样桥接网卡就替换了em1

# ifconfig

wKioL1cXQPbA5C4BAACZXVsMB5A857.png

查看网桥

# brctl show

wKioL1cXQRjzLCN_AAAR0nYKPPw880.png

桥接网卡就配置成功了!

=============================================

四、kvm虚拟机的安装


创建ISO镜像和虚拟机的安装目录

mkdir -p /root/iso

mkdir -p /data/kvm

上传ISO镜像文件至/root/iso目录下,这里采用CentOS-6.6-x86_64-bin-DVD1.iso


本次采用从其他服务器上推送过来(集群内网中100M/s,4.5G镜像文件大约40秒左右传完):

scp -P30124 /home/ywliyq/iso/CentOS-6.6-x86_64-bin-DVD1.iso ywliyq@10.9.9.16:~



方法一:kvm虚拟机的安装(xshell下通过virt-manager的图形界面安装)


xshell无法打开virt-manager的图形界面,

首先,只安装xshell是不行,需要安装xmanager

其次,安装好xmanager后,打开xshell,在连接属性的tunneing中,勾选 Forwarding X11 connection to选项,可以正常打开virt-manager的图形界面。

wKioL1cXQUrSnAdYAACc44WOErg304.png

完成后使用# virt-manager即可打开图形界面

virt-manager建立一个KVM虚拟机

wKiom1cXQKbALH5oAAC3ezfxuCM100.png

要创建的虚拟机名称lamp

wKiom1cXQOuQsnwMAAC8HoQ1EmM149.png

选择iso镜像的路径,及操作系统类型和版本

wKioL1cXQdjA_N1tAAC8UaM5EBc706.png

分配虚拟机的内存及vcpu的核数

wKiom1cXQTTQpZT5AACh-NhIIaA747.png

创建虚拟机镜像文件

wKiom1cXQy-Rvb1SAAEQCKcSeng558.png分配镜像文件初始大小,qcow2有自动扩展空间容量的功能

wKioL1cXRCmCq2xwAACqVUy7yIU785.png

设置网络桥接,勾选安装前自定义配置

wKioL1cXRE2A9bPwAADftWvZmG8491.png

设置虚拟机开机自启动

wKioL1cXRGSCAxnGAAFrKitT2Gs742.png

修改桥接网络类型

wKioL1cXRIzjRuFwAAFanN4Q-to752.png

注意:进入安装界面后会出现键盘布局错乱的局面,下面是解决方法:

KVM通过virt-manager远程管理guest机器时键盘错乱解决方法


一、virt-manager方式(推荐)

如果要避免这种情况,在使用virt-install安装的时候,就加入键盘布局的字段

--keymap=en-us

在虚拟机关闭的状态下,通过virt-manager界面选中相应的虚拟机:

open-->Details-->Display VNC-->keymap-->en-us

保存后再启动虚拟机就可以了

wKiom1cXQ_qxq2FxAADf8zHbOFc086.jpg

二、命令行方式

关闭要调整的虚拟机,编辑虚拟机配置文件

#virsh edit 'your vm name'

找到配置文件中的以下字段:

<graphics type='vnc' port='-1'/>

加入键盘的语言布局后如下:

<graphics type='vnc' port='-1' keymap='en-us'/>

保存退出后,重新载入虚拟机配置文件

#virsh create /etc/libvirt/qemu/'your vm name'.xml



配置修改完成启动虚拟机

wKioL1cXRN2DdKPIAAC_8JINb7c081.png

开始安装,自动进入安装界面

wKioL1cXRQTQ87xdAAeZITjoDUo159.png

接下来和平时的安装方式一样了

系统完成后需要做相应的基础优化