KVM虚拟化安装配置(一)
KVM的虚拟化简介
KVM(全称Kernel-based Virtual Machine)是一套开源的全虚拟化解决方案,同时也支持半虚拟化。KVM不同于其他(如Xen),它是集成到Linux内核的Hypervisor,在X86架构上需要硬件支持(如Intel VT技术或者AMD V技术)虚拟化技术。KVM由一个可加载的内核模块kvm.ko提供核心虚拟化基础构造,和一个处理器特殊的模块kvm-intel.ko 或者 kvm-amd.ko组成。
在KVM虚拟主机上,可以允许运行多个Linux或Windows虚拟机,每个虚拟机都有各自的虚拟硬件:网卡、磁盘、图形适配器等。
这里KVM的安装环境是VMware和CentOS6.7_64位系统
前提需要足够大的硬件配置支持,如KVM主机内存需要至少2个G,硬盘需要40G以上。
检查CPU是否支持虚拟化技术,查看虚拟机设置虚拟化引擎部分,把【虚拟化Inter VT-x/EPT或AMD-V/RVI(V)】选项打钩。
同时可以在主机下查看CPU是否支持虚拟化,可以使用egrep 'vmx|svm' --color /proc/cpuinfo查看,若有输出则支持。
现在开始安装KVM
Step1:清除防火墙规则并把Selinux关闭
1
2
3
4
|
[root@kvm ~] # service iptables stop
[root@kvm ~] # iptables -F
[root@kvm ~] # sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
[root@kvm ~] # setenforce 0
|
Step2:安装KVM核心包和其他所必须的虚拟化软件包
kvm: KVM核心模块,它在默认Linux内核中提供KVM管理程序
virt: 创建、克隆、虚拟机命令,以及图形化管理工具virt-manager
qemu-img: qemu组件,使用qemu命令来创建磁盘等
libvirts: 虚拟机管理工具,使用virsh等命令来管理和控制虚拟机
bridge-utils: 设置网络网卡桥接
KVM的安装需要解决的依赖比较多,其中virt需要安装200多个依赖包,安装过程比较费时,大约十几分钟,这取决于你的机器。
1
|
[root@kvm ~] # yum -y install kvm virt* libvirt qemu-img bridge-utils
|
Step3:确认安装KVM是否已经成功
检查KVM模块是否加载
1
2
3
|
[root@kvm ~] # lsmod |grep kvm
kvm_intel 55624 0
kvm 341551 1 kvm_intel
|
查看virt版本
1
2
3
4
|
[root@kvm ~] # virt-install --version
0.600.0
[root@kvm ~] # virsh --version
0.10.2
|
1
2
3
|
[root@kvm ~] # virsh list --all
Id Name State
----------------------------------------------------
|
Step4:接下来可以创建并安装虚拟机,首先是配置网卡
进入/etc/sysconfig/network-scripts/目录下,拷贝eth0网卡配置文件ifcfg-eth0为ifcfg-br0
1
2
|
[root@kvm ~] # cd /etc/sysconfig/network-scripts/
[root@kvm network-scripts] # cp ifcfg-eth0 ifcfg-br0
|
编辑ifcfg-eth0文件
1
2
3
4
5
6
7
8
|
DEVICE=eth0
HWADDR=00:0C:29:6C:57:4E
TYPE=Ethernet
UUID=41b2bd36-fc1a-4bbf-ab3f-2e11a9fc888a
ONBOOT= yes
NM_CONTROLLED= yes
BOOTPROTO=none
BRIDGE=br0
|
编辑ifcfg-br0文件
1
2
3
4
5
6
7
8
9
10
11
|
DEVICE=br0
#HWADDR=00:0C:29:6C:57:4E
TYPE=Bridge
UUID=41b2bd36-fc1a-4bbf-ab3f-2e11a9fc888a
ONBOOT= yes
NM_CONTROLLED= yes
BOOTPROTO=static
IPADDR=192.168.1.33
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
|
重启网络服务
1
2
3
4
5
6
7
8
|
[root@kvm network-scripts] # service network restart
Shutting down interface br0: [ OK ]
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
Bringing up interface br0: Determining if ip address 192.168.1.33 is already in use for device br0...
[ OK ]
|
查看一下网卡信息,其中br0就是刚刚创建的网卡配置文件,可以看到设置的IP已经生效
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
[root@kvm ~] # ifconfig
br0 Link encap:Ethernet HWaddr 00:0C:29:6C:57:4E
inet addr:192.168.1.33 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe6c:574e /64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1211 errors:0 dropped:0 overruns:0 frame:0
TX packets:193 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:100106 (97.7 KiB) TX bytes:18094 (17.6 KiB)
eth0 Link encap:Ethernet HWaddr 00:0C:29:6C:57:4E
inet6 addr: fe80::20c:29ff:fe6c:574e /64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:160842 errors:0 dropped:0 overruns:0 frame:0
TX packets:84216 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:210835385 (201.0 MiB) TX bytes:7062228 (6.7 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1 /128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 b) TX bytes:560 (560.0 b)
virbr0 Link encap:Ethernet HWaddr 52:54:00:07:F1:48
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
|
Step5:启动或重启libvirtd和messagebus服务
启动libvirtd、messagebus
1
2
3
4
|
[root@kvm ~] # service libvirtd start
Starting libvirtd daemon: [ OK ]
[root@kvm ~] # service messagebus start
Starting system message bus: [ OK ]
|
查看网络接口列表
1
2
3
4
|
[root@kvm ~] # brctl show
bridge name bridge id STP enabled interfaces
br 08000.000c296c574e no eth0
virbr0 8000.52540007f148 yes virbr0-nic
|
Step6:创建一个虚拟机
首先创建一个用来存放虚拟机的目录/kvm,当然要先查看一下磁盘大小情况再选择的位置
1
2
3
4
5
6
7
|
[root@kvm ~] # df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda3 ext4 43G 1.3G 39G 4% /
tmpfs tmpfs 932M 0 932M 0% /dev/shm
/dev/sda1 ext4 190M 31M 149M 18% /boot
[root@kvm ~] # mkdir /kvm
|
创建一个预分配的元数据选项的qcow2格式镜像文件(用来存储虚拟机的磁盘镜像)
1
2
|
[root@kvm ~] # qemu-img create -f qcow2 -o preallocation=metadata /kvm/centos6.7_v1.img 10G
Formatting '/kvm/centos6.7_v1.img' , fmt =qcow2 size=10737418240 encryption=off cluster_size=65536 preallocation= 'metadata'
|
stat命令输出磁盘镜像信息
1
2
3
4
5
6
7
8
|
[root@kvm ~] # stat /kvm/centos6.7_v1.img
File: ` /kvm/centos6 .7_v1.img'
Size: 10739318784Blocks: 3488 IO Block: 4096 regular file
Device: 803h /2051dInode : 2490371 Links: 1
Access: (0644 /-rw-r--r-- ) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2016-01-15 17:08:46.695998217 +0800
Modify: 2016-01-15 17:08:46.694998217 +0800
Change: 2016-01-15 17:08:46.694998217 +0800
|
info命令查看磁盘镜像的大小信息
1
2
3
4
5
6
|
[root@kvm ~] # qemu-img info /kvm/centos6.7_v1.img
image: /kvm/centos6 .7_v1.img
file format : qcow2
virtual size: 10G (10737418240 bytes)
disk size: 1.7M
cluster_size: 65536
|
下面通过文本模式安装一个512内存、1核心、磁盘大小10G的linux系统。使用virt-install命令来创建虚拟机
1
2
3
4
5
6
7
8
9
10
11
12
|
[root@kvm ~] # virt-install \
--name centos6.7_v1 \
-- ram 512 \
--disk path= /kvm/centos6 .7_v1.img, format =qcow2,size=10,bus=virtio \
--vcpus 1 \
--os- type linux \
--os-variant rhel6 \
--network bridge=br0 \
--graphics none \
--location= /dev/sr0 \
--console pty,target_type=serial \
--extra-args 'console=ttyS0,115200n8 serial'
|
部分输出内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
Starting install ...
Retrieving file .treeinfo... | 676 B 00:00 ...
Retrieving file vmlinuz... | 8.1 MB 00:00 ...
Retrieving file initrd.img... | 69 MB 00:00 ...
Creating domain... | 0 B 00:00
Connected to domain centos6.7_v1
Escape character is ^]
[1;256r
Google, Inc.
Serial Graphics Adapter 12 /07/11
SGABIOS $Id: sgabios.S 8 2010-04-22 00:03:40Z nlaredo $ (mockbuild@c6b18n1.dev.centos.org) Wed Dec 7 17:04:47 UTC 2011
Term: 121x32
4 0
SeaBIOS (version seabios-0.6.1.2-30.el6)
Machine UUID 51dca1d8-adbc-51d1-1f39-343ad2c7a49f
gPXE (http: //etherboot .org) - 00:03.0 C100 PCI2.10 PnP BBS PMM1FE0@10 C100
Probing EDD (edd=off to disable)... ok
......
Greetings.
anaconda installer init version 13.21.239 starting
mounting /proc filesystem... done
creating /dev filesystem... usb 2-1: new full speed USB device number 2 using uhci_hcd
done
starting udev... done
mounting /dev/pts (unix98 pty) filesystem... udevd[48]: error setting /sys/class/firmware/timeout : No such file or directory
done
mounting /sys filesystem... done
anaconda installer init version 13.21.239 using a serial console
trying to remount root filesystem read write... done
Welcome to CentOS for x86_64
┌───────────┤ Disc Found ├───────────┐
│ │
│ To begin testing the media before │
│ installation press OK. │
│ │
│ Choose Skip to skip the media test │
│ and start the installation. │
│ │
│ ┌────┐ ┌──────┐ │
│ │ OK │ │ Skip │ │
│ └────┘ └──────┘ │
│ │
│ │
└────────────────────────────────────┘
<Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next screen
|
接下来的安装操作就变得简单了,安装完成选择Reboot就进入虚拟机了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
┌─────────────────────┤ Package Installation ├──────────────────────┐
│ │
│ │
│ 0% │
│ │
│ Packages completed: 6 of 225 │
│ │
│ Installing glibc-common-2.12-1.166.el6.x86_64 (107 MB) │
│ Common binaries and locale data for glibc │
│ │
│ │
│ │
└───────────────────────────────────────────────────────────────────┘
|
查看一下磁盘信息和登录信息
1
2
3
4
5
6
|
[root@localhost ~] # df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
ext4 8.3G 644M 7.3G 9% /
tmpfs tmpfs 246M 0 246M 0% /dev/shm
/dev/vda1 ext4 477M 33M 419M 8% /boot
|
1
2
3
4
|
[root@localhost ~] # last
root ttyS0 Fri Jan 15 18:01 still logged in
reboot system boot 2.6.32-573.el6.x Fri Jan 15 18:00 - 18:03 (00:02)
wtmp begins Fri Jan 15 18:00:36 2016
|
退出返回到KVM主机,键入ctrl+]即可,在KVM主机中使用virsh list可以查看虚拟机列表
[root@kvm ~]# virsh list --all
Id Name State
----------------------------------------------------
4 centos6.7_v1 running
进入虚拟机,使用virsh console命令
1
2
3
4
|
[root@kvm ~] # virsh console centos6.7_v1
Connected to domain centos6.7_v1
Escape character is ^]
[root@localhost ~] #
|
使用virsh命令管理虚拟机
1
|
[root@kvm ~] # virsh shutdown hostname #关闭虚拟机,需要在虚拟机中安装acpid服务并启动
|
1
|
[root@kvm ~] # virsh destroy hostname #强制关闭电源
|
1
|
[root@kvm ~] # virsh undefine hostname #删除虚拟机
|
KVM虚拟化安装配置(一)相关推荐
- centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课
centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课 上半节课 下半节课 f
- 虚拟化宿主服务器网络设置,kvm虚拟化安装配置手册
环境 系统 centos6.2-x86_64 IP地址 192.168.0.99 1.KVM宿主机安装: 一.安装条件: 1)含有KVM的Linux 发行版本必须在64bit环境中才能使用 ...
- linux 中添加kvm虚拟化,一文告诉你Linux如何配置KVM虚拟化--安装篇
KVM全称"Kernel-based Virtual Machine",即基于内核的虚拟机,在linux内启用kvm需要硬件,内核和软件(qemu)支持,这篇文章教你如何配置并安装 ...
- RHEL 6上KVM的安装配置及使用-将物理接口桥接到桥接器
作业环境服务器端 操作系统:Red Hat Enterprise Linux Server release 6.0 (Santiago) KVM:qemu-kvm-0.12.1.2-2.113.el6 ...
- KVM虚拟化安装的虚拟机全屏设置
当我们用KVM虚拟化装机发现装出来的机子屏幕特小不方便使用 怎么设置全屏化呢?网上大多是安装VMware-tools工具,其实不用安装也能放大 Ctrl+Alt+Enter 放大全屏化(缩小回来一样)
- 【KVM相关】kvm虚拟化部署配置
一.kvm安装 1.CentOS yum安装 yum install -y qemu-kvm libvirt virt-install 二.虚拟机部署 1.配置网桥 1.1.ubuntu系统 配置虚拟 ...
- 服务器配置虚拟kvm功能,安装配置KVM虚拟机
1.硬件环境检测 grep -E –color 'vmx|svm' /proc/cpuinfo 有输出代表cpu支持 2.软件包安装 yum install qemu-kvm qemu-img lib ...
- Proxmox VE2.2虚拟化安装配置学习笔记(三)
你同时也可以上传ISO镜像创建KVM的客户机: 想要删除一个Template或者是ISO文件的话,先选定想要删除的文件,再点击上方的"删除"按钮: 5创建OpenVZ容器 创建Op ...
- KVM虚拟化笔记(七)------kvm虚拟机VNC的配置
本文主要讲述的是通过vnc方式访问虚拟机不是在kvm虚拟机安装配置vnc,通过虚拟主机的IP地址与端口进行访问,kvm虚拟化对vnc的支持相对比较好,在虚拟主机上配置vnc访问虚拟机也是多提供一种方式 ...
最新文章
- TensorFlow简单线性回归
- 牛顿法求解非线性方程的根
- python判断能否组成三角形_牛鹭学院:学员笔记|Python: 输入三条边,判断是否可以成为三角形...
- 概述SharePoint 2007
- 大学英语四六各项分值
- ssm read time out的原因_加盟蜜雪冰城未通过是什么原因?总部公布了两点原因
- SpringBoot 2 要不要升级
- 我的docker随笔4:docker常用命令
- android样式文件,Android学习笔记样式资源文件
- fedora16 解码方案
- 变压器绕组降低邻近效应_高功率UPS性能提升,规格/重量显著降低
- 模糊c均值聚类及python实现
- 汇编语言学习笔记 - 杂记(寄存器,寻址方式,指令操作合法性)
- 新加坡Shopee内推
- 项目日历是什么?如何规划?
- 评定职称/积分落户,原来软考证书含金量这么大!
- 清理Maven本地仓库.lastUpdated文件
- undefined reference to `__stack_chk_fail'
- 与门,AND Gate
- 温故知新(九一)什么是抽象语法树,有哪些用途
热门文章
- 【HTML5】媒体元素标签audio video
- MySQL基础——DML语言学习\插入数据\删除数据\更新数据
- Qt维基文档翻译:D-指针,D-Pointer
- LibLinear(SVM包)使用说明之(二)MATLAB接口
- L2-4 哲哲打游戏 (25 分)
- 6-4 单链表插入排序 (15分)
- 排序算法之选择排序(简单选择排序、堆排序)
- 基于python的图像变换(翻转、平移、缩放、旋转、仿射和透视变换)
- JavaWeb项目实战(2)安装JDK和Tomcat以及Eclipse构造开发环境
- php 替换img宽度,php 如何替换img