kvm虚拟化环境如何安装

67次阅读
没有评论

共计 8894 个字符,预计需要花费 23 分钟才能阅读完成。

这篇文章主要介绍了 kvm 虚拟化环境如何安装,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让丸趣 TV 小编带着大家一起了解一下。

kvm 虚拟化环境安装
1. 操作系统安装
本文采用 Centos6.4X64 操作系统,也可以采用 RHEL/CentOS6.x。
(1)查看系统版本、内核版本

查看系统版本

[root@KVM ~]# cat /etc/redhat-release
CentOS release 6.4 (Final)

查看内核版本

[root@KVM ~]# uname -a
Linux KVM 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
注: 2.6.20 以下的内核需要升级。
(2)关闭 selinux,iptables,重启后生效
①. 关闭 selinux
[root@kvm ~]# vim /etc/sysconfig/selinux
SELINUX=disabled
②. 关闭 iptables
[root@kvm ~]# iptables -F
[root@kvm ~]# iptables -X
[root@kvm ~]# /etc/init.d/iptables save
[root@kvm ~]# /etc/init.d/iptables stop
(3) 重启
[root@kvm ~]# reboot

2. 虚拟化环境配置
(1)VMware 内的 Centos 开启虚拟化

说明 1: 半虚拟化是不能运行与安装 KVM 虚拟机的。
(2) 查看系统是否支持 KVM 虚拟化
[root@KVM ~]# egrep‘(vmx|svm)’–color=always /proc/cpuinfo

若实际环境没有, 需要到主板 BIOS 中开启 Virtual Technolege(VT, 虚拟化技术)
(3) 安装 kvm 软件包
[root@KVM ~]# yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v libguestfs-tools qemu-kvm gcc*
3. 查看虚拟化环境
(1) 查看虚拟机环境
[root@KVM ~]# /etc/init.d/libvirtd start
[root@KVM ~]# virsh -c qemu:///system list
Id Name State
—————————————————-

(2)查看 kvm 模块支持
[root@KVM ~]# lsmod |grep kvm
kvm_intel 55624 0
kvm 338535 1 kvm_intel
(3) 查看虚拟工具版本
[root@KVM ~]# virsh –version
0.10.2
[root@KVM ~]# virt-install –version
0.600.0
[root@KVM ~]# ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm
[root@KVM ~]# qemu-kvm -version
QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2-2.448.el6_6.4), Copyright (c) 2003-2008 Fabrice Bellard
4. 手动配置虚拟网桥
(1) 关闭 networkmanager 服务
[root@KVM ~]# /etc/init.d/NetworkManager stop
[root@KVM ~]# chkconfig NetworkManager off
(2) 创建 br0 网 k

[root@KVM ~]# cd /etc/sysconfig/network-scripts/
[root@KVM network-scripts]# cp ifcfg-eth0 ifcfg-br0
[root@KVM network-scripts]# vim ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:41:DA:81
TYPE=Ethernet
UUID=21501ff5-e313-494c-a402-50f2a84f1f5c
ONBOOT=yes
NM_CONTROLLED=yes

BOOTPROTO=static
IPADDR=192.168.15.14
NETMASK=255.255.255.0
GATEWAY=192.168.15.2

BRIDGE=br0
[root@KVM network-scripts]# vim ifcfg-br0
DEVICE=br0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.15.14
NETMASK=255.255.255.0
GATEWAY=192.168.15.2
DNS1=114.114.114.114
TYPE=Bridge
(3)重启 network 服务。
[root@KVM network-scripts]# /etc/init.d/network restart
(4)查看网桥 br0.

(4)查看网桥

到此 kvm 虚拟化环境安装完毕。

kvm 虚拟化学习笔记 (二) 之 windows kvm 虚拟机安装

开始安装 windows 2003 (1) 上传 2003 iso 文件到 /data/iso 文件夹中

(2) 开始安装
[root@KVM ~]# cat create_win_kvm.sh 
 virt-install \
–name=win2003_1 \
–ram 1024 \
–vcpus=2 \
–disk path=/data/img/win2003_1.img,size=8 \
–accelerate \
–cdrom /data/win_server_2003_R2x64.iso \
–vnc \
–vncport=5915 \
–vnclisten=0.0.0.0 \
–network bridge=br0 –force –autostart
(3) 通过 vnc 连接,然后进行安装过程,也可以通过控制台继续安装过程。

注:文件复制完毕后,windows 会重启,这里虚拟机会关闭,需要手动启动,而且 VNC 无法使用。

启动 win2003_1 后用 vnc 连接安装 wind2003 时出现如下

(4) 接上面,登录控制台。
如果其它环境无法连接控制台,可以远程安装 vnc 服务器端工具,通过 vnc 登录服务器,可以最终安全完成。无需要我们分两步。 
## 双击 win2003_1

(5) 手动挂载光驱,如下图所示,一步一步的操作如下。

返回控制台,继续安装过程。

driver name= qemu type= raw cache= writeback /

target dev= vda bus= virtio /

/disk

mac address= 52:54:00:da:f1:a6 /

model type= virtio /


(6)进入系统更新网卡和 SCSI 控制器的驱动,重启后就会应用新的硬件了。

5. 解决 KVM 虚拟机鼠标同步问题
kvm 虚拟化 windows 操作系统鼠标有点不灵活等问题,在这里通过以下方式解决。在虚拟机的配置中增加:
1
2 # virsh edit wintest01

测试 virsh console 命令 [root@KVM ~]# virsh console centos2

至此 virsh console 命令进入控制台配置完毕,今后将对 linux 虚拟机很方便的 console 方式进行管理。
kvm 虚拟化学习笔记 (七) 之 kvm 虚拟机克隆
kvm 虚拟机的克隆分为两种情况,本文也就通过以下两种情况进行克隆,克隆虚拟机为 Centos 6.4X64。
(1) KVM 主机本机虚拟机直接克隆。
(2) 通过复制配置文件与磁盘文件的虚拟机复制克隆(适用于异机的静态迁移)。
1. 本机虚拟机直接克隆
(1) 查看虚拟机配置文件
[root@KVM ~]# cat /etc/libvirt/qemu/centos3.xml

虚拟机磁盘文件: /data/img/Centos3.img
虚拟机名称:Centos3
[root@KVM ~]# virsh list –all

(2) 开始克隆
[root@KVM ~]# virt-clone -o centos3 -n Linux3 -f /data/img/Linux3.img
说明:克隆虚拟机应保持关闭状态,以 centos3 做为源,克隆 centos3 虚拟机,并创建名称为 Linux3 虚拟机,使用磁盘文件 /data/img/Linux3.img 
(3) 启动虚拟机
[root@KVM ~]# virsh start Linux3
[root@KVM ~]# virsh list

(4) 修改主机名,IP 地址等
[root@localhost ~]# hostname Linux3
[root@localhost ~]# bash
[root@Linux3 ~]# vi /etc/sysconfig/network
HOSTNAME=Linux3
修改 IP 地址
[root@Linux3 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.15.135
NETMASK=255.255.255.0
GATEWAY=192.168.15.2
DNS1=114.114.114.114
[root@Linux3 ~]# /etc/init.d/network restart
2. 复制配置文件与磁盘文件克隆
(1) 导入 kvm 虚拟机配置文件
这里采用 centos3 做为模板,进行克隆。
[root@KVM ~]# virsh list –all

[root@KVM ~]# virsh dumpxml centos3 /etc/libvirt/qemu/Linux03.xml

(2) 复制 kvm 虚拟机磁盘文件
本系列文章都是采用虚拟磁盘文件进行测试,没有使用 lvm 卷。
通过查看配置文件:虚拟磁盘位置
[root@KVM ~]# cp /data/img/Centos3.img /data/img/Linux03.img

(3) 直接编辑修改配置文件
修改 name,uuid,disk 位置,vnc 端口
此时还是将该配置文件注册进来,无法通过 virsh edit 进行编辑。
[root@node1 data]# vi /etc/libvirt/qemu/Linux03.xml

Linux03
8f2bb4a7-c7ed-32aa-3676-9fb05923260d

(4) 定义新虚拟机配置文件
[root@KVM ~]# virsh define /etc/libvirt/qemu/Linux03.xml

启动虚拟机

[root@KVM ~]# virsh start Linux03

(5) 登录虚拟机进行主机名,IP 等修改

[root@localhost ~]# vi /etc/sysconfig/network
HOSTNAME=Linux03
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.15.133
NETMASK=255.255.255.0
GATEWAY=192.168.15.2
DNS1=114.114.114.114

本文到此通过两种方式进行 kvm 虚拟机克隆,其实各有用处。
再次说明:本文克隆的虚拟机是 Centos6.4, 如果克隆的虚拟机是 RHEL/CentOS/OEL7.x 操作系统,还需要修改 /etc/udev/rules.d/70-persistent-net.rules 文件。
kvm 虚拟化学习笔记 (八) 之 kvm 虚拟机 vnc 配置
本文是通过 vnc 方式访问虚拟主机上的 KVM 虚拟机。
这里的通过 vnc 方式访问虚拟机不是在 kvm 虚拟机安装配置 vnc 服务器,通过虚拟主机的 IP 地址与端口进行访问,kvm 虚拟化对 vnc 的支持相对来说比 xen 要好很多,在虚拟主机上配置 VNC 访问虚拟机,也是为了多提供一种方式访问虚拟机而已。
1. 修改 qemu.conf
[root@KVM ~]# vim /etc/libvirt/qemu.conf
vnc_listen =“0.0.0.0”
说明 1:vnclisten 默认绑定 127.0.0.1 在配置文件里指定 VNC 绑定 0.0.0.0IP, 就不用在安装 kvm 虚拟机时指定 vnclisten 参数了。
说明 2:在虚拟主机上有很多个虚拟机的时候,需要指定每个虚拟机的端口,否则将会很乱。
2. 修改虚拟机配置文件
[root@KVM ~]# virsh edit Linux03

启动虚拟机并测试 VNC

vnc 工具登录

改为字符界面启动,vnc 也能出现界面,这点比 xen 虚拟化 vnc 要好。vnc 登录如下。到此 kvm 虚拟机管理已经介绍了两种方式,一种是在 KVM 虚拟主机上配置 VNC, 一种是在 kvm 虚拟主机上配置 virsh console 控制台,当然虚拟化管理器就不用说了。
kvm 虚拟化学习笔记 (九) 之 kvm 虚拟机时间配置
注:在虚拟化环境中,虚拟机在长时间运行过程中,时间会变慢,通常的作法是配置 ntpdate 定时与时间服务器进行时间同步的计划任务。
KVM 虚拟机默认采用 utc 时间,需要专门修改,以及考虑 kvm 时间同步问题。
1. kvm 虚拟机修改时间配置文件
kvm 虚拟机采用 utc 时间,需要先修改配置文件使用 KVM 虚拟机的时间与虚拟主机同步。
[root@KVM ~]# virsh edit Linux03

关于 kvm 虚拟机时间问题解决思路 (1) 虚拟机时间慢是所有虚拟化平台的一共性问题。(2) 解决时间的最终解决方法就是在生产环境中配置时间服务器,kvm 虚拟化服务器与 kvm 机均都要配置时间同步的计划任务,这才是解决这一个问题最终解决方案。示例:如果能访问互联网,最简单了,需要 kvm 虚拟机与主机时间同步,但是运行一段时间会慢,一定要做时间同步,特别是对时间敏感的环境。

crontab -e

01 */3 * * * /usr/sbin/ntpdate ntp.fudan.edu.cn /dev/null 2 1
关于虚拟机时间配置本文讨论完毕。
kvm 虚拟化学习笔记 (十) 之 kvm 虚拟机快照备份
kvm 虚拟机默认使用 raw 格式的镜像格式,性能最好,速度最快,它的缺点就是不支持一些新的功能,如支持镜像,zlib 磁盘压缩,AES 加密等。
要使用镜像功能,磁盘格式必须为 qcow2。下面开始 kvm 虚拟机快照备份的过程。
进一步的学习参考:kvm+libvirt 虚拟机快照浅析 http://itxx.sinaapp.com/blog/content/130
1. 查看现有磁盘镜像格式与转换
(1) 查看磁盘格式
[root@KVM ~]# qemu-img info /data/img/kvm_centos2.img

对虚拟机进行快照管理 (1) 对 oeltest01 虚拟机创建快照 也可以 virsh snapshot-create-as centos2 centos2_snapshot 创建后个快照别名。[root@KVM ~]# virsh snapshot-create-as centos2 centos2_snaphshot

(2) 查看虚拟机镜像快照的版本
[root@KVM ~]# virsh snapshot-list centos2

(3) 查看当前虚拟机镜像快照的版本
可以看到为当前最新的快照版本。
[root@KVM ~]# virsh snapshot-create-as centos2 centos2_snaphshot
[root@KVM ~]# virsh snapshot-current centos2

启动 centos2, 安装 ftp, 在做一个快照.

[root@KVM ~]# virsh start centos2
[root@centos2 ~]# yum -y install vsftpd
[root@KVM ~]# virsh snapshot-create-as centos2 centos_installftp
[root@KVM ~]# qemu-img info /data/img/kvm_centos2.qcow2

快照配置文件在 /var/lib/libvirt/qemu/snapshot/ 虚拟机名称 / 下  
4. 恢复虚拟机快照
(1) 恢复虚拟机快照必须关闭虚拟机。
[root@KVM ~]# virsh shutdown centos2

确认虚拟机是关机状态  
(2) 确认需要恢复的快照时间,这里恢复到 centos2_installftp 
(3) 执行恢复,并确认恢复版本
[root@KVM ~]# virsh snapshot-revert centos2 centos2_installftp 
(4) 登录到 centos2 验证 ftp 命令

直接通过 dd 命令扩展现有虚拟机磁盘大小, 扩展之后, 原磁盘大小增大, 进入虚拟机系统后, 直接通过 fdisk 分区新添加的空间, 然后将该分区并入 lvm 逻辑卷中, 扩大磁盘空间。
①. 关闭扩容 kvm(centos1)
[root@kvm ~]# virsh shutdown centos1
[root@kvm ~]# virsh list –all

②. 直接扩展现有磁盘空间(centos1_new.img)
[root@kvm ~]# du -sh /data/img/centos1_new.img
[root@kvm ~]# dd if=/dev/zero bs=1024MB count=2 /data/img/centos1_new.img

③. 启动 kvm(centos1)
[root@kvm ~]# virsh start centos1
[root@kvm ~]# virsh list

④. 查看分区列表.(注: 创建分区自便)
[root@centos1 ~]# df -h
[root@centos1 ~]# fdisk -l /dev/sdb

二、qcow2 磁盘格式扩展思路如下
(1) 可以采用 raw 磁盘格式磁盘的扩展方式一致的方式进行。
(2) qcow2 格式磁盘,直接通过 qemu-img 直接扩展 qcow2 磁盘, 新添加一块 raw 格式的磁盘加入到 KVM 虚拟机, 然后通过虚拟机系统 lvm 逻辑卷管理方式进行管理, 扩展磁盘空间。
下面将开始通过 qcow2 格式添加磁盘。
方式一:添加一块 qcow2 磁盘加入虚拟机
1. 查看现在虚拟机磁盘信息
①. 查看 kvm 虚拟机(centos1) 磁盘格式
[root@kvm ~]# virsh edit centos1
 ②. 查看磁盘格式信息
[root@kvm ~]# qemu-img info /data/img/kvm_centos1.qcow2
③. 进入虚拟机, 查看磁盘容量
[root@centos1 ~]# df -h
④. 添加一块 qcow2 磁盘
[root@kvm ~]# qemu-img create -f qcow2 /data/img/kvm_centosA1.qcow2 2G
 ⑤. 关闭 kvm(centos1) 添加一块 qcow2 磁盘信息加入配置文件
[root@kvm ~]# virsh shutdown centos1 
[root@kvm ~]# virsh edit centos1 
⑥. 启动虚拟机并配置磁盘
root@kvm ~]# virsh start centos1
[root@centos1 ~]# fdisk -l 
2. 配置 LVM 扩展磁盘
①. 磁盘分区
[root@centos1 ~]# fdisk /dev/sdb 
②. 扩展 lvm 逻辑卷。
[root@centos1 ~]# pvcreate /dev/sdb1
[root@centos1 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 VolGroup lvm2 a– 9.51g 0
/dev/sdb1 lvm2 a– 2.00g 1020.00m
[root@centos1 ~]# vgextend VolGroup /dev/sdb1
[root@centos1 ~]# lvextend -L +1024MB /dev/mapper/VolGroup-lv_root
[root@centos1 ~]# resize2fs /dev/mapper/VolGroup-lv_root
[root@centos1 ~]# df -h 
可以看到, 根”/”分区增长了 1G 容量。
方式二:直接扩展 qcow2 磁盘 (拿 kvm_Centos4 做演示)
(1) 关闭虚拟机。
(2) 删除配置文件中第二块磁盘信息
1. 直接扩展 qcow2 磁盘
(1) 查看磁盘
[root@kvm ~]# virsh edit centos40
(2) 直接扩展 qcow2 磁盘
[root@kvm ~]# qemu-img resize /data/img/kvm_centos4.qcow2 +4G 经过前后对比,磁盘大小已由 14G 扩展到 18G, 已扩展,qcow2 磁盘格式必须采用此方式进行扩展,不要使用 dd 方式,dd 方式适用于 raw 格式。
2. 进入系统开始扩展磁盘
(1) 启动 kvm(centos4) 并查看分区大小
[root@kvm ~]# virsh start centos4
[root@centos4 ~]# fdisk -l 
(2) 开始分区
[root@centos4 ~]# fdisk /dev/vda 查看现在磁盘空间
[root@centos4 ~]# df -h (3) 格式化分区并挂载。
[root@centos4 ~]# mkfs.ext4 /dev/vda3
[root@centos4 ~]# mkdir /database
[root@centos4 ~]# mount /dev/vda3 /data
[root@centos4 ~]# df -h 到此 kvm 虚拟机扩展磁盘空间成功,当虚拟机磁盘格式换成 qcow2 后,确实有很多需要注意的地方,qcow2 格式支持动态扩展与快照功能,虽然性比 raw 稍差, 但确实很实用。

感谢你能够认真阅读完这篇文章,希望丸趣 TV 小编分享的“kvm 虚拟化环境如何安装”这篇文章对大家有帮助,同时也希望大家多多支持丸趣 TV,关注丸趣 TV 行业资讯频道,更多相关知识等着你来学习!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-16发表,共计8894字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)