在CentOS7上部署KVM虚拟化平台

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在CentOS7上部署KVM虚拟化平台相关的知识,希望对你有一定的参考价值。

虚拟化概述

虚拟化就是把硬件资源从物理方式转变为逻辑方式,打破原有物理结构,使用户可以灵活管理这些资源,并且允许1台物理机上同时运行多个操作系统,以实现资源利用最大化和灵活管理的一项技术。

虚拟化的优势

  • 减少服务器数量,降低硬件采购成本。
  • 资源利用率最大化。
  • 减低机房空间、散热、用电消耗的成本。
  • 硬件资源可动态调整,提高企业IT业务灵活性。
  • 高可用性。
  • 在不中断服务的情况下进行物理硬件调整。
  • 降低成本管理。
  • 具备更高效的灾备能力。

KVM虚拟化

kvm自Linux2.6.20版本后就直接整合到Linux内核中,它依托CPU虚拟化指令集实现高性能的虚拟化支持。由于与Linux内核高度整合,因此在性能、安全性、兼容性、稳定性上都有很好的表现。

在KVM环境中运行的每一个虚拟化操作系统都将表现为单个独立的系统进程。因此它可以很方便地与Linux系统中的安全模块进行整合(SELinux),可以灵活地实现资源的管理及分配。如图所示,简单的描绘了KVM虚拟化架构:
技术分享图片

实验要求

  • 虚拟机的内存4~6G左右,便于后续的安装工作。
  • 是否支持虚拟化。

实验环境

采用CentOS-7.4-x86_64,开启CPU虚拟化支持
技术分享图片

安装步骤

1.添加一块新的磁盘,磁盘大小40G(自定义),进行分区并挂载到/opt/vdir目录中。

[[email protected] ~]# mkdir /opt/vdir   #创建挂载目录(可自定义)
[[email protected] ~]# fdisk /dev/sdb 
命令(输入 m 获取帮助):n    #创建分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-83886079,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-83886079,默认为 83886079):
将使用默认值 83886079
分区 1 已设置为 Linux 类型,大小设为 40 GiB

命令(输入 m 获取帮助):w     #保存
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[[email protected] ~]# mkfs -t xfs /dev/sdb1    #磁盘格式化
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=2621376 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=10485504, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=5119, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[[email protected] ~]# mount /dev/sdb1 /opt/vdir    #挂载磁盘
[[email protected] ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        10G  8.7G  1.4G   87% /
devtmpfs        2.0G     0  2.0G    0% /dev
tmpfs           2.0G     0  2.0G    0% /dev/shm
tmpfs           2.0G  9.0M  2.0G    1% /run
tmpfs           2.0G     0  2.0G    0% /sys/fs/cgroup
/dev/sda6       9.0G   33M  9.0G    1% /opt
/dev/sda2        16G   37M   16G    1% /home
/dev/sda1      1014M  158M  857M   16% /boot
tmpfs           394M   20K  394M    1% /run/user/0
/dev/sr0        4.3G  4.3G     0  100% /run/media/root/CentOS 7 x86_64
/dev/sdb1        40G   33M   40G    1% /opt/vdir       #挂载成功

2.在已有的系统基础上,安装KVM所需软件。

[[email protected] ~]# yum install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install -y
注释:
qemu-kvm 虚拟化软件 虚拟网络和硬盘等 用户态
libvirt 虚拟化工具统一接口
virsh virt-manager virt-viewer virt-install other-tools是libvirt用户态的工具

3.查看是否支持虚拟化

[[email protected] ~]# egrep ‘(vmx|svm)‘ /proc/cpuinfo

技术分享图片
4.创建虚拟机的磁盘镜像

[[email protected] opt]# qemu-img create -f raw /opt/CentOS-7.4-x86_64.img 10G

[[email protected] opt]# lsmod | grep kvm   #检查kvm模块是否安装
kvm_amd                69849  0 
kvm                   566340  1 kvm_amd
irqbypass              13503  1 kvm

5.开启libvirtd服务(默认情况下libvirtd服务是开启的)

[[email protected] opt]# systemctl status libvirtd.service
● libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
   Active: active (running) since 一 2018-08-06 16:10:19 CST; 1h 22min ago
.....//省略

[[email protected] opt]# systemctl restart libvirtd.service
[[email protected] opt]# systemctl stop firewalld.service 
[[email protected] opt]# setenforce 0

6.把CentOS-7-x86_64-DVD-1708.iso镜像文件复制到/opt目录下

[[email protected] KM]# cp CentOS-7-x86_64-DVD-1708.iso /opt/

7.安装虚拟机

[[email protected] opt]# virt-install --name CentOS7.4-x86_64    #名称
> --virt-type kvm        # 指定创建类型
> --ram 2048       #内存
> --cdrom=/opt/CentOS-7-x86_64-DVD-1708.iso   #镜像文件
> --disk path=/opt/CentOS-7.4-x86_64.img      #指定磁盘文件
> --network network=default        #默认网卡类型
> --graphics vnc,listen=0.0.0.0    #启用图像化加载,监听地址。
> --noautoconsole   #支持console连接

开始安装......
域安装仍在进行。您可以重新连接
到控制台以便完成安装进程。

8.在windows上安装TightVNC Viewer工具,使用TightVNC Viewer工具完成安装虚拟机。

1)设置内核参数
技术分享图片
技术分享图片
技术分享图片
技术分享图片

9.重启后 需要去centos7上开启这个虚拟机 才能使用VNC连接。

[[email protected] opt]# virsh start CentOS7.4-x86_64   #启动虚拟机
域 CentOS7.4-x86_64 已开始

技术分享图片
技术分享图片
安装成功

以上是关于在CentOS7上部署KVM虚拟化平台的主要内容,如果未能解决你的问题,请参考以下文章

在CentOS7上部署KVM虚拟化平台

centos7部署KVM虚拟化平台详解

CentOS7上部署KVM虚拟化平台

VMware平台部署KVM网络无法通信

VMware平台部署KVM网络无法通信

CentOS7中部署KVM虚拟化平台