部署 KVM 虚拟化平台

KVM自Linux 2.6.20版本后就直接整合到Linux内核,它依托CPU虚拟化指令集实现高性能的虚拟化支持。它与Linux内核高度整合,因此在性能、安全性、兼容性、稳定性上都有很好的表现。
在KVM环境中运行的每个虚拟化操作系统都将表现为单个独立的系统进程。因此它可以很方便地与Linux系统中的安全模块进行整合(SELinux),可以灵活的实现硬件资源的管理和分配,KVM虚拟化的架构图如下:

下面开始安装,在 Centos 的光盘中,已经提供了安装 KVM 所需软件,只需要部署基于光盘镜像的本地 yum 源,直接使用 yum 安装软件即可:
yum groupinstall -y “GNOME DeskTop” // 安装 GNOME 桌面环境,如果是的话,则可以省略

yum -y install qemu-kvm                                 // kvm 模块
yum -y install qemu-kvm-tools                        // kvm 调试工具,可不安装
yum -y install virt-install                                  // 构建虚拟机的命令行工具
yum -y install qemu-img                                 // qemu 组件,创建磁盘、启动虚拟机等
yum -y install bridge-utils                                // 网络支持工具
yum -y install libvirt                                        // 虚拟机管理工具
yum -y install virt-manager                            // 图形界面管理虚拟机

注意:在使用 yum 安装完毕桌面后执行“ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target” 命令,将系统默认运行的 target 更改为 graphical.targe。重启后将进入图形界面,若不执行,则重启可能会报错。
安装完毕后,重启系统,查看 CPU 是否支持虚拟化:

[[email protected] /]# cat /proc/cpuinfo | grep vmx            # 对于 Intel 的服务器可以使用此命令查看,只要有输出就说明 CPU 支持虚拟化
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36
.........省略部分
对于 AMD 服务器可以使用如下命令查看:
[[email protected] /]# cat /proc/cpuinfo | grep smv

检查 KVM 模块是否安装:

[[email protected] /]# lsmod | grep kvm
kvm_intel             170181  0
kvm                   554609  1 kvm_intel
irqbypass              13503  1 kvm

开启服务:

[[email protected] /]# systemctl start libvirtd
[[email protected] /]# systemctl enable libvirtd

配置网络:
在libvirt中运行KVM网络有两种方法:NAT和Bridge,默认是NAT。
关于两种模式的说明如下:
(1)NAT模式:也是用户模式,数据包由NAT方式通过主机的接口进行传送,可以访问外网,但是无法从外部访问虚拟机网络,所以一般不会用到。
(2)Bridge:也就是桥接模式,这种模式允许虚拟机像一个独立的主机一样拥有网络,外部的机器可以直接访问到虚拟机内部,但需要网卡支持,一般有线网卡都支持。
这里以Bridge(桥接模式)为例:

[[email protected] /]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=none                       // 此处改为 none
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=b9f932a2-0dad-4119-a05e-e03322ff94d1
DEVICE=ens33
ONBOOT=yes
BRIDGE=br0                                // 在末尾添加此行
[[email protected] /]# cd /etc/sysconfig/network-scripts/
[[email protected] network-scripts]# cp ifcfg-ens33 ifcfg-br0
[[email protected] /]# vim /etc/sysconfig/network-scripts/ifcfg-br0            # 复制一个网卡配置,并修改
TYPE=Bridge                                // 将类型改为桥接
BOOTPROTO=static                     // 静态
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=br0                                   // 网卡名称
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.1.10                 // 配置 IP 及网关
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

重启 network 服务:

[[email protected] /]# /etc/init.d/network restart
Restarting network (via systemctl):                        [  OK  ]       // 输出为 OK 表示成功,反之则为 no 失败。

KVM 管理:

[[email protected] /]# virt-manager                # 打开 图形化虚拟机管理软件


创建存储池:




以同样的操作创建一个镜像存储池,命名为 iso,目录为/data_kvm/iso/,然后将系统光盘上传到此目录:

在 test 上创建存储卷










KVM虚拟化平台至此已部署完成,下面附加一些常用的管理命令:

[[email protected] ~]# virsh -h                #查看命令帮助
[[email protected] ~]# ls /etc/libvirt/qemu               #查看KVM的配置文件存放目录
(test01.xml是虚拟机系统实例的配置文件)
networks  test01.xml
[[email protected] ~]# virsh list --all               #查看虚拟机状态
 Id    名称                         状态
----------------------------------------------------
 2     test01                         running

[[email protected] ~]# virsh shutdown test01              #关闭虚拟机
[[email protected] ~]# virsh start test01                       #开启虚拟机
[[email protected] ~]# virsh destroy test01                 #强制关机
[[email protected] ~]# virsh create /etc/libvirt/qemu/test01.xml             #通过配置文件启动虚拟机
[[email protected] ~]# virsh suspend test01                 #挂起虚拟机
[[email protected] ~]# virsh resume test01                  #从挂起状态恢复运行虚拟机
[[email protected] ~]# virsh autostart test01                 #设置虚拟机伴随宿主机自动启动

#虚拟机的删除与添加:
[[email protected] ~]# virsh dumpxml test01 > /etc/libvirt/qemu/test02.xml            #导出虚拟机配置
#删除虚拟机:
[[email protected] ~]# virsh  shutdown test01
[[email protected] ~]# virsh  undefine test01
[[email protected] ~]# virsh list --all             #查看虚拟机是否被删除
 Id    名称                         状态
----------------------------------------------------

#通过备份的配置文件重新定义虚拟机:
[[email protected] ~]# cd /etc/libvirt/qemu/
[[email protected] qemu]# mv test02.xml test01.xml
[[email protected] qemu]# virsh define test01.xml

 #修改虚拟机配置(内存大小等)信息:
 [[email protected] qemu]# vim /etc/libvirt/qemu/test01.xml 

[[email protected] qemu]# virt-df -h test01         #在宿主机上查看虚拟机磁盘信息
克隆虚拟机:

[[email protected] qemu]# virt-clone -o test01 -n test02 -f /kvm/store/test02.qcow2
#将test01克隆为test02
[[email protected] qemu]# virsh list --all                 #查看现有虚拟机
 Id    名称                         状态
----------------------------------------------------
 -     test01                         关闭
 -     test02                         关闭
虚拟机创建快照:
KVM虚拟机要使用快照功能,磁盘格式必须为qcow2

[[email protected] qemu]# virsh snapshot-create test01      #对虚拟机test01创建快照
[[email protected] qemu]# virsh snapshot-list test01                   #查看快照信息
 名称               生成时间              状态
------------------------------------------------------------
 1560191837           2019-06-11 02:37:17 +0800 shutoff
[[email protected] qemu]# virsh snapshot-revert test01 1560191837
#恢复虚拟机状态至1560191837
[[email protected] qemu]# virsh snapshot-delete test01 1560191837                   #删除快照

原文地址:https://blog.51cto.com/14227204/2433071

时间: 2024-10-07 09:50:38

部署 KVM 虚拟化平台的相关文章

Linux之部署KVM虚拟化平台

Linux之部署KVM虚拟化平台 案例需求: 1.安装KVM所需软件,验证. 2.设置KVM网络,将网络设置为桥接模式. 3.使用virt-manager安装linux系统. 4.kvm基本管理的命令 (1)查看虚拟机的状态 (2)虚拟机的关机,强制关机和开机 (3)虚拟机的挂起和恢复 (4)配置虚拟机实例伴随宿主机自动启动 (5)导出虚拟机配置 5.kvm文件管理 (1)将raw格式磁盘转换为qcow2格式 (2)转换后,修改xml配置文件 (3)查看虚拟机磁盘信息 6.虚拟机克隆 7.虚拟机

部署KVM虚拟化平台

防伪码:一场秋雨一场寒,十场秋雨穿上棉. 第四章 部署KVM虚拟化平台 前言:我们在以前学习过vsphere虚拟化平台,安装过esxi5.5,在esxi5.5上安装过虚拟机,使用vcenter管理esxi,从而实现了虚拟机的迁移,备份,高可用等操作,但是安装成本很高,需要购买正版.今天这一章内容是利用linux内核的一个模块kvm,并使用一些辅助工具来搭建虚拟机,完成和esxi类似的操作,实现linux虚拟化.KVM直接整合到了linux内核,因此在性能.安全性.兼容性.稳定性上都有好的表现.我

CentOS7中部署KVM虚拟化平台

CentOS7中部署KVM虚拟化平台 虚拟化介绍 虚拟化就是把硬件资源从物理方式转变为逻辑方式,打破原来的物理结构,使用户可以灵活管理这些资源,并允许1台物理机上同时运行多个操作系统,以实现资源利用率最大化和灵活管理的一项技术. 虚拟化优势: 减少了服务器的数量,降低了硬件采购成本 资源利用率最大化 降低机房空间.散热.用电消耗的成本 硬件资源可以动态调整,提高了企业IT业务的灵活性 高可用性 在不中断服务的情况下进行物理硬件调整 具备更高效的容灾能力 KVM虚拟化: KVM自从Linux2.6

部署KVM虚拟化平台------搭建

一 .部署KVM虚拟化平台 hyper-v是windows中的虚拟化1.KVM模块直接整合在Linux内核中,kvm是内核模块,虚拟机与kvm模块之间为管理工具2.KVM组成1.KVM Driver---虚拟机创建---虚拟机内存分配---虚拟CPU寄存器读写---虚拟CPU运行 2.QEMU (经过简化与修改)---模拟PC硬件的用户控件组件---提供I/O设备模型及访问外设的途径 二.虚拟化的三种模式 **1.客户模式:典型的虚拟机环境(虚拟网卡.内存.硬盘): 2.用户模式:工具层,下面是

centos7部署KVM虚拟化平台详解

KVM自Linux 2.6.20版本后就直接整合到Linux内核,它依托CPU虚拟化指令集实现高性能的虚拟化支持.它与Linux内核高度整合,因此在性能.安全性.兼容性.稳定性上都有很好的表现.在KVM环境中运行的每个虚拟化操作系统都将表现为单个独立的系统进程.因此它可以很方便地与Linux系统中的安全模块进行整合(SELinux),可以灵活的实现硬件资源的管理和分配,KVM虚拟化的架构图如下: 话不多说,开始搭建KVM虚拟化平台: 1.安装: [[email protected] media]

CentOS7上部署KVM虚拟化平台

什么是虚拟化 虚拟化就是把硬件资源从物理方式转变为逻辑方式,打破原有物理结构,使用户可以灵活管理这些资源,并且允许1台物理机上同时运行多个操作系统,以实现资源利用率最大化和灵活管理的一项技术. 虚拟化的优势 1:减少服务器的数量,降低硬件采购成本.2:资源利用率最大化3:降低机房空间.散热.用电消耗成本.4:硬件资源可动态调整,提高企业IT业务灵活性.5:高可用性6:在不中断服务的情况下进行物理硬件调整.7:降低管理成本.8:具备更高效的灾备能力. ? 操作步骤 在虚拟机里添加一个40G的新磁盘

部署KVM虚拟化平台(理论+实战)

KVM虚拟机: 1.KVM是Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少.KVM已成为学术界的主流VMM之一 2.KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术).是基于硬件的完全虚拟化.而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完全虚拟化

使用GFS集群部署KVM虚拟化平台(实例!!!)

实验环境 4台GFS节点服务器做GlusterFS集群,提供存储服务给KVM客户端做虚拟化 服务器角色 IP地址 磁盘空间 gfs-node1 192.168.142.152 40G+40G gfs-node2 192.168.142.154 40G+40G gfs-node3 192.168.142.162 40G+40G gfs-node4 192.168.142.163 40G+40G kvm-client 192.168.142.163 40G 第一步:部署GFS节点服务器 1.为四台G

使用GFS集群部署KVM虚拟化平台

实验环境 4台GFS节点服务器做GlusterFS集群,提供存储服务给KVM客户端做虚拟化 服务器角色 IP地址 磁盘空间 gfs-node1 192.168.142.152 40G+40G gfs-node2 192.168.142.154 40G+40G gfs-node3 192.168.142.162 40G+40G gfs-node4 192.168.142.163 40G+40G kvm-client 192.168.142.163 40G 第一步:部署GFS节点服务器 1.为四台G