ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

KVM 虚拟化平台部署

2021-01-11 12:31:15  阅读:168  来源: 互联网

标签:kvm 虚拟化 部署 虚拟机 KVM tsc yes root


文章目录

KVM

KVM 概述

  • 广义的 KVM 实际上包含两部分, 一部分是基于 LINUX 内核支持的 KVM 内核模块, 另一部分就是经过简化和修改的 Qemu。
  • KVM 内核模块模拟处理器和内存以支持虚拟机的运行,Qemu 主要处理 I/O 以及为用户提 供一个用户空间工具来进行虚拟机的管理。 两者相互结合, 相辅相成, 构成了一个完整的虚 拟化平台。
  • 请注意: Qemu 本身并不是 KVM 的一部分, Qemu 是一套完整的虚拟化解决方案, 是纯软件实现虚拟化, 包括处理器虚拟化、 内存虚拟化以及各种虚拟设备的模拟, 但因为是纯软件模拟出来的, 所以 Qemu 的性能比较低。

KVM运行时的三种模式

  • 客户模式: 可以简单理解成客户机在操作系统运行中的模式, 客户模式又分为内核模式 和用户模式
  • 用户模式: 为用户提供虚拟机管理的用户空间工具以及代表用户执行 I/O, Qemu 运行在这个模式之下
  • 内核模式: 模拟 CPU 以及内存, 实现客户模式的切换, 处理从客户模式的退出。 KVM 内核模块运行在这个模式下

KVM工作原理

用户模式的 Qemu 利用接口 libkvm 通过 ioctl 系统调用进入内核模式。 KVMDriver 为虚拟机创建虚拟 CPU 和虚拟内存, 然后执行 VMLAU·NCH 指令进入客户模式, 装载 Guest OS 并运行。 Guest OS 运行过程中如果发生中断或者影子缺页等异常, 将暂停 Guest OS 的运行并保存当前上下文退出到内核模式来处理这些异常。 内核模式处理这些异常时如果不需要 I/O则处理完成后重新进入客户模式。 如果需要 I/O 则进入到用户模式, 由 Qemu 来处理 I/O,处理完成后进入内核模式, 再进入客户模式

KVM虚拟化平台实操

拓扑图

在这里插入图片描述

一:虚拟机资源

CPU:双核双线程-CPU虚拟化开启

内存:8G

硬盘:300G

双网卡:单网卡

操作系统:Centos7.4(1708)

二:虚拟机开启虚拟化

1:开启虚拟化需要虚拟机处于关闭状态
在这里插入图片描述
2:查看CPU是否支持虚拟化

[root@kvm ~]# cat /proc/cpuinfo | grep vmx
flags  : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat
flags  : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat
flags  : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat
flags  : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec arat

三:环境优化

设置DNS反向解析

  • #是否反解DNS,设置为NO可以让客户端连接服务器更快
[root@kvm ~]# vi /etc/ssh/sshd_config    # 取消 DNS 注释
UseDNS no

四:安装KVM

1:安装KVM基本组件

[root@kvm ~]# yum groupinstall -y "GNOME Desktop"   # 安装 GNOME 桌面环境  如果装了图形界面可以不需要装
[root@kvm ~]# yum -y install qemu-kvm               # KVM 模块
[root@kvm ~]# yum -y install qemu-kvm-tools         # 安装 KVM 调试工具,可不安装
[root@kvm ~]# yum -y install virt-install           # 构建虚拟机的命令行工具
[root@kvm ~]# yum -y install qemu-img               # qemu 组件,创建磁盘、启动虚拟机等
[root@kvm ~]# yum -y install bridge-utils           # 网络支持工具
[root@kvm ~]# yum -y install libvirt                # 虚拟机管理工具
[root@kvm ~]# yum -y install virt-manager           # 图形界面管理虚拟机  

2:查看 KVM 模块是否已安装

[root@kvm ~]#  lsmod | grep kvm
kvm_intel             170086  0 
kvm                   566340  1 kvm_intel
irqbypass              13503  1 kvm

3:设置开启启动界面的显示模式

[root@kvm ~]# ln -sf/lib/systemd/system/graphical.target /etc/systemd/system/default.target

五:设置 KVM 网络

KVM网络的两种模式

  • ① NAT: 默认设置,数据包由 NAT 方式通过主机的接口进行传送,可以访问外网,但是无法从外部访问虚拟机网络
  • ② 网桥:这种模式允许虚拟机像一台独立的主机一样拥有网络,外部的机器可以直接访问到虚拟机内部,但需要网卡支持(一般有线网卡都支持)

使用Bridge网桥模式进行部署

[root@kvm ~]#  vim /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none                 # 原本的修改为 none
#IPADDR=20.0.0.20                
#NETMASK=255.255.255.0
#GATEWAY=20.0.0.2
#DNS=20.0.0.2
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
UUID=55d6fe55-257b-4ef8-abc6-c714e1a01f71
DEVICE=ens32
ONBOOT=yes
BRIDGE=br0      # 将原来的地址注释或者删除,设置为网桥模式,关联 br0 网卡

创建、编辑桥接网卡

[root@kvm ~]# vim /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge
TPROTO=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=20.0.0.20
NETMASK=255.255.255.0
GATEWAY=20.0.0.2
[root@kvm ~]# systemctl restart network       # 重启网卡

六:KVM部署与管理

1:创建KVM存储和镜像数据的目录、上传centos7镜像

[root@kvm ~]# mkdir -p /data_kvm/iso
[root@kvm ~]# mkdir -p /data_kvm/store
[root@kvm ~]# mount.cifs //20.0.0.1/kvm /mnt
[root@kvm ~]# cd /mnt
[root@kvm mnt]# ll
总用量 4415488
-rwxr-xr-x. 1 root root 4521459712 1月   5 2018 CentOS-7-x86_64-DVD-1708.iso
[root@kvm mnt]# cp CentOS-7-x86_64-DVD-1708.iso /data_kvm/iso/
[root@kvm mnt]# cd
[root@kvm ~]# ls /data_kvm/iso/
CentOS-7-x86_64-DVD-1708.iso

2:使用虚拟系统管理器管理虚拟机

  • 创建存储池

双击打开QEMU/KVM–存储–添加(加号)–填写名称–前进–浏览–其他位置–计算机–data_kvm–store–打开–完成,使用相同方法创建镜像存储池,选择的文件夹是/data_kvm/iso

[root@kvm ~]# virt-manager

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

开始创建虚拟机

  • 打开虚拟系统管理器–右击QEMU/KVM–选择新建
    在这里插入图片描述
  • 本地安装介质–前进
    在这里插入图片描述
  • 选择使用ISO映像–浏览选择刚刚创建的镜像的存储池中的镜像–前进

在这里插入图片描述

  • 配置内存和CPU–前进
    在这里插入图片描述

  • 管理–选择刚刚创建的存储池中的新建存储卷–前进
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 点击在安装前自定义配置–选择网络(桥接)–完成
    在这里插入图片描述

  • 点击引导选项–勾选主机引导时启动虚拟机–开始安装–出现提示选择是
    在这里插入图片描述

  • 接下来与安装CentOS7 步骤相同
    在这里插入图片描述

标签:kvm,虚拟化,部署,虚拟机,KVM,tsc,yes,root
来源: https://blog.csdn.net/m0_50854537/article/details/112463843

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有