kvm是基于图形化的linux操作的

安装图形化界面的知识点:

磁盘空间有两个词:

精简置备:我先在我系统里面去声明我要一个50G的空间,但是呢,我不会把50G都分给你,你用多少,我分给你多少,但是做多不能超过50G.

厚置备:直接把50G都分给你。

虚拟化

虚拟化的分类

什么是虚拟化:(1u是指的服务器的厚度)

10年前,他都是单独的服务器提供服务,像apache是部署在Linux操作系统里,他会单独的拿一台物理的硬件服务器来部署这个服务,如果部署多个服务的话,那么就需要多个物理服务器,随着业务增加,那么需要服务器的数量也就增加,这就增加了公司分费用,就需要买很多很多服务器,也随着硬件硬件的发展,一个磁盘空间1T多,如果只部署一个服务的话,又太浪费,所以最后慢慢衍生出来了虚拟化技术,有了这项技术,把一个服务器虚拟成多个小的逻辑计算机,帮助我们提供服务,那现在用一台服务器就可以把所需要的服务集中部署在一台服务器里,这样节约了成本。

通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统(虚拟出来的计算机都具有单独的操作系统,跟我们宿主机是相互隔离的),并且应用程序都可以在相互独立的空间内运行而互不影响。

虚拟化的优势:

从新定义划分IT资源,可以实现IT资源的动态分配,灵活调度,跨域共享。

提高IT资源利用率

虚拟化目标

同一主机上运行多个系统或应用 , 从而提高系统资源的利用率 , 同时带来降低 成本 , 方便管理和容错容灾。

虚拟化的种类:

根据用途来分:

完全虚拟化:含有hypervisor的一种软件,VMware和微软的VirtualPC是代表该方法的两个商用商品,KVM就是基于Linux完全虚拟化的一款开源的产品,hypervisor可以捕获CPU的指令,为指令访问硬件控制器和外设充当中介。缺点,给处理器带来开销。

准虚拟化:完全虚拟化是一项处理器密集型技术,因为他要求hypervisor管理各个虚拟服务器,并让他们彼此独立。为了减轻这一负担,可以改动客户端操作系统,让他以为自己运行在虚拟环境下,能够与hypervisor协同工作,这就是准虚拟化。

准虚拟化代表:Xen

系统虚拟化:没有独立的hypervisor层,主机操作系统本身负责多个虚拟服务器之间的资源分配。在完全虚拟化和准虚拟化里面,我们的虚拟机要享用资源,必须通过hypervisor层给他管理和分配资源。

桌面虚拟化:比如上机考试的电脑,他本地是没有操作系统,而是远端有一个中心机房,把操作系统投射到你屏幕里,进行统一管理。

虚拟化类型

对于系统虚拟化技术来说,虚拟层为用户提供了一个完整的虚拟机:包括内核 在内的一个完整的系统镜像。 CPU 虚拟化技术可以为每个用户提供一个独享且和其他用户隔离的系统环境,虚拟层可以为每个用户分配虚拟化后的 CPU 、 内存和 IO 设备资源。

物理机我们一般称为宿主机(Host),宿主机上面的虚拟机称为客户机 (Guest)。那么 Host 是如何将自己的硬件资源虚拟化,并提供给 Guest 使 用的呢?
这个主要是通过一个叫做 Hypervisor 的程序实现的。根据 Hypervisor 的实 现方式和所处的位置,虚拟化按照结构分为两种类型:1型虚拟化和2型虚拟化。

根据虚拟化的架构来分(就是通过hyoervisor软件部署的位置来区分):

1型虚拟化:hypervisor(典型代表:ESXi,Xen)(软件)直接部署在服务器的硬件上。

2型虚拟化:首先在你的硬件上部署一个Linux操作系统,在这个操作系统上部署我们hypervisor软件(KVM,VirtualBox,VMWare Workstation)

理论上讲:

1型虚拟化一般对硬件虚拟化功能进行了特别优化,性能上比2型要高;
2型虚拟化因为基于普通的操作系统,会比较灵活,比如支持虚拟机嵌套。嵌 套意味着可以在KVM虚拟机中再运行KVM。

如何查看系统版本

cat /etc/redhat-release

如何查看内核

uname

如何查看红帽的系统版本

cat /etc/issue

个人用的是VMware Workstation

企业用的是VMware Vsphere

KVM

  kvm全称“基于内核的虚拟机”,是一个开源的软件,基于内核的虚拟化技术,实际是嵌入系统的一个虚拟化模块,通过优化内核来使用虚拟技术,该内核模块使得Linux变成一个hypervisor,虚拟机使用Linux自身的调度器进行管理。(就是说Linux要部署一个kvm模块,他才能变成hypervisor层)。

kvm是基于CPU的类型进行管理。

kvm空间:

用户空间:指的是用户得到一个虚拟机

内核空间:指的是你的kvm宿主机里面它部署的虚拟化的软件,是通过驱动内核来实现的

虚机:指的是用户的得到一个虚拟机层

Guest:指的我们虚拟机,也称VM

kvm:运行在内核空间,提供CPU和内存的虚拟

QEMU(扩展软件):帮我们提供了虚拟机的I/O设备(CPU 内存 显示器),其他的硬件虚拟化

kvm有一个内核模块叫kvm.ko,它来提供我们CPU和内存

Libvirt:kvm的管理工具

Libvirt 包含3个东西:

1 后台daemon程序libvirtd:libvirtd是服务程序,接受和处理API请求

2 API(软件的接口,可以根据这个接口开发管理的软件,调用这个程序)库

3 命令行工具virsh

安装kvm准备工作

1 确认宿主机BIOS的虚拟化VT开启

Intel(R)Virtualization Tech [ Enable ]

2 确认处理器有VT(在虚拟机查看)

(针对INTEL 芯片)

grep vmx /proc/cpuinfo 

(针对AMD 芯片)

grep svm /proc/cpuinfo 

KVM虚拟化安装

1 安装要求

64bitCPU(支持虚拟化)

2G以上空闲内存(如何确认内存大小,grep –e Mem Total /proc/meminfo或者free  -m)

6GB空间储存空间

拓展知识点:

查看系统的块设备(一般我们的硬盘就是块设备):lsblk

nmtui(设置网卡命令)

如何把图形化界面换成命令行界面

先查看

systemctl get-default 一般graphical.target就是图形化

后设置

systemctl set-default multi-user.target 命令行界面

又想用图形化界面怎么办?

命令行输入startx即可。当又不想用的时候,ctrl+c退出这个进程。

2 安装kvm

(1)配置源

先把yum.repo.s里的大C文件归拢

vim cdrom.repo

[cdrom]

name=

baseurl=file:///mnt

enable=

gpgcheck=

清除缓存:

yum clean all 或者 yum makecache

挂载

mount /dev/sr0 /mnt

下载

yum install kvm virt-manager libvirt libvirt-python python-virtinst libvirt-client qemu-kvm qemu-img

也可以用*代替

yum install kvm libvirt* qemu*  virt-manager -y

安装简单版kvm

yum install kvm virt-manager libvirt*
kvm:核心套件

virt-manager:图形化kvm管理软件

virtsh:命令行管理kvm工具

libvirt:提供虚拟机与宿主机互通信机制

libvirt-python:允许使用libvirt API

python-virtinst:CLI下创建kvm的工具(也就是命令行下)

libvirt-client:提供client访问kvm服务器的机制,并包含virsh命令进行管理和控制VMs

qemu-kvm:提供用户级kvm环境

qemu-img:VMs(虚拟机)磁盘管理

3 启动kvm

()modprobe kvm 加载kvm模块

()lsmod | grep kvm 查看是否加载成功

()systemctl start libvirtd

()systemctl enable libvirtd

()systemctl status libvirtd

4 验证虚拟化是否安装成功

看virsh list这个命令是否能使用

kvm网络模式设置

1 NAT(默认上网):利用宿主机的ip进行上网

我一台主机访问另一台主机,访问的这个动作不是由自己完成,而是由别人完成

2自带的Bridge:有一个缺点,虚拟机和宿主机不能联通

3 linuxBridge:创建一个桥接接口br0,在物理网卡和虚拟网络接口之间传递数据。此种方式host却可以和vm联通

linux Bridge配置:

Vim ifcfg-eth0

TYPE=Ethernet

NAME=eth0

DEVICE=eth0

ONBOOT=yes

BRIDGE=br0

Vim ifcfg-br0

TYPE=Bridge

NAME=br0

DEVICE=br0

ONBOOT=yes

BOOTPROTO=none

IPADDR=192.168.254.20

PREFIX=(NETMASK=255.255.255.0)

GATEWAY=192.168.254.1

DNS=192.168.254.251

如何从命令行安装图形化界面

yum grouplist

yum groupinstall “带图形的GUI” -y

如何用kvm建立虚拟机

一 点击应用程序 – 系统工具  -- 虚拟系统管理器(virt manager)

二 选中QEMU/KVM,点击电脑的亮光

三 选择本地安装介质,前进

四 选择使用ISO映像,将要安装的系统光盘读取进来

五 进行内存和大小设置

如果选择了新建存储大小,会在/var/lib/libvirt/images这里创建属于此虚拟机的磁盘文件

六 命名,并勾选在安装前自定义配置,网络选择宿主机的

七 选择引导选项 勾选启用引导菜单和IDE CDROM 1还有VirtIO 磁盘 1

八 选择IDE CDROM 1,选择源路径,进行连接,连接要安装的操作系统光盘

九 而后安装即可

远程管理kvm(就是说用一台含有kvm的宿主机,去管理另一台含有kvm的宿主机)

就是在我一台没有开启kvm的情况下,去管理他的虚拟机

第一步 打开虚拟系统管理器

第二步 点击文件 – 添加连接

管理程序选择 QEMU/KVM

连接到远程主机 勾选

用法 SSH

用户名 root

主机名 要管理的ip

第三步 弹出Openssh

第一次弹出此处切记填yes或no,不是输密码

第二次弹出输入密码

连接成功后就会多出一台QEMU/KVM

KVM虚拟化简介及安装的更多相关文章

  1. KVM -> 虚拟化简介&虚拟机安装_01

    什么是虚拟化? 在计算机技术中,虚拟化(技术)或虚拟技术(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源(CPU.内存.磁盘空间.网络适配器等),予以抽象.转换后呈现 ...

  2. KVM虚拟化概述与安装

    虚拟化是构建云计算基础架构不可或缺的关键技术之一,云计算的云端系统,其实质上就是一个大型的KVM分布式系统,虚拟化通过在一个物理平台上虚拟出更多的虚拟平台,而其中的每一个虚拟平台则可以作为独立的终端加 ...

  3. KVM虚拟化——简介

    KVM 基于内核的虚拟机KVM(Kernel-Based Virtual Machine)是2007年问世的开源虚拟化解决方案.KVM需要两个条件: ①硬件支持全虚拟化 ②操作系统为Linux KVM ...

  4. 1 云计算系列之云计算概述和KVM虚拟化简介

    为什么会出现云之传统数据中学面临的问题 物理服务器的利用率非常低,浪费资源,且资源分配不合理,比如一台服务器CPU使用率不到40%,或者某个应用需要的硬件配置低但是服务器硬件配置高等等. 云计算概念 ...

  5. [原] KVM 虚拟化原理探究(1)— overview

    KVM 虚拟化原理探究- overview 标签(空格分隔): KVM 写在前面的话 本文不介绍kvm和qemu的基本安装操作,希望读者具有一定的KVM实践经验.同时希望借此系列博客,能够对KVM底层 ...

  6. KVM虚拟化(KVM简介和KVM安装)

    KVM 虚拟化架构分类 寄居虚拟化架构:指在宿主操作系统之上安装和运行虚拟化程序,依赖于宿主操作系统对设备的支持和物理资源的管理. 裸金属虚拟化架构:指直接在硬件上面安装虚拟化软件,再在其上安装操作系 ...

  7. KVM 介绍(1):简介及安装

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  8. centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课

    centos vmware centos6.6 64位 kvm虚拟化安装配置     第四十二节课 上半节课 下半节课 f

  9. [转载]【虚拟化系列】VMware vSphere 5.1 简介与安装

    转载自:http://mabofeng.blog.51cto.com/2661587/1017680 一. VMware vSphere 5.1简介           vSphere是VMware推 ...

随机推荐

  1. [C#菜鸟]C# Hook (二) 常用钩子的类型

    ; //监视和记录输入事件.安装一个挂钩处理过程,对寄送至系统消息队列的输入消息进行纪录 ; //回放用WH_JOURNALRECORD记录事件 ; //键盘钩子,键盘触发消息.WM_KEYUP或WM ...

  2. 方差分析(python代码实现)

    python机器学习-乳腺癌细胞挖掘(欢迎关注博主主页,学习python视频资源,还有大量免费python经典文章) https://study.163.com/course/introduction ...

  3. Python的环境的搭建

    下载Python软件安装,配置环境变量 给Eclipse安装pydev插件即可

  4. [VBA]利用正则表达式创建函数处理字符串

    1.去除字符串中的数字 Function aa(sr As Range)Set reg = CreateObject("vbscript.regexp")With reg.Glob ...

  5. 嵌套的JsonObject与JSONArray的取值---JSON中嵌套JSONArray

    在复杂的JSON数据的格式中,往往会对JSON数据进行嵌套,这样取值会比之前的取值稍微复杂一点,但是只要思路清晰,其实取法还是一样的.就跟if else语句一样,如果if中套if,if中再套if,写的 ...

  6. 在Spring容器外调用bean

    这个东西源于这种需求:一个应用丢到服务其后,不管用户有没有访问项目,这个后台线程都必须给我跑,而且这个线程还调用了Spring注入的bean,这样自然就会想到去监听Servlet的状态,当Servle ...

  7. P1141 01迷宫(连通块模板)

    题目描述 有一个仅由数字0与1组成的n×n格迷宫.若你位于一格0上,那么你可以移动到相邻4格中的某一格1上,同样若你位于一格1上,那么你可以移动到相邻4格中的某一格0上. 你的任务是:对于给定的迷宫, ...

  8. 【神经网络与深度学习】Caffe训练执行时爆出的Check failed: registry.count(t ype) == 1 (0 vs. 1) Unknown layer type

    自己建立一个工程,希望调用libcaffe.lib ,各种配置好,也能成功编译,但是运行就会遇到报错 F0519 14:54:12.494139 14504 layer_factory.hpp:77] ...

  9. linux查看cd/dvd驱动器的设备信息

    在linux下,如何来查看系统里的CD-ROM或者DVD驱动器的设备名呢? 你可以输入下面的命令来查看当前系统下的光盘驱动器信息: 1.使用dmesg命令来查看当前的硬件是否被linux内核正确的识别 ...

  10. [转帖]PostgreSQL pg_dump&psql 数据的备份与恢复

    PostgreSQL pg_dump&psql 数据的备份与恢复   https://www.cnblogs.com/chjbbs/p/6480687.html 文章写的挺好 今天试了下 挺不 ...