1.什么是虚拟化(Virtualization)

虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。

虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。

2.传统运行模式

  • 一台计算机只能够运行一种操作系统

3.虚拟机(Virtual Machine)运行架构

3-1.原生架构(生产环境)

  • 虚拟机软件直接安装在计算机硬件上
  • 虚拟机本身就是一个操作系统
  • 在这个虚拟机中可以同时运行多个操作系统

3-2.寄居架构(实验环境、测试环境)

  • 虚拟机作为应用软件安装在操作系统上
  • 可以在此应用软件上安装多个操作系统
  • 直接安装在硬件上的系统为宿主

4.虚拟机的平台产品

4-1.微软

  • Hyper-V(寄居架构)

4-2.Vmware

  • VMware Workstation(寄居架构)
  • VMware vSphere(原生架构)

5.扩展

5-1.KVM kernel-based Virtual Machine

KVM是一个开源的系统虚拟化模块,自Linux 2.6.0之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流KVM之一。

KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完全虚拟化。但Xen本身有自己的进程调度其,存储管理模块等,所以代码较为庞大。广为流传的商业系统虚拟化软件VMware ESX系列是基于软件模拟的Full-Virtualization。

5.2-Docker开源的应用容器引擎

https://www.sqlsec.com/2019/10/docker2.html

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

一个完整的Docker有以下几个部分组成:

DockerClient客户端

Docker Daemon守护进程

Docker Image镜像

DockerContainer容器

关于Docker详情,请见“ARL信息收集篇章”https://zhuanlan.zhihu.com/p/187505981

6.操作系统 Operating System (OS)

6-1.简介

6.2来历

6.3功能

6.4分类

6.4.1-Windows

  • Win PC版本:Win XP、Win7、Win10 Win XP常被用于银行、ATM等更新换代比较慢的地方
  • Windows Server服务器:2003、2008、2012、2016、2019等。常用来搭建IIS,SQLServer服务器等

6.4.2-类Unix:Linux、Mac OS等

  • Unix/Linux系统 Ubuntu和CentOS被用来作为web服务器,但是Ubuntu不如Centos常见

    • Debian ——> Kali、Ubuntu、Deepin
    • Red Hat ——> CentOS

6.5Linux特性

KDE:K Desktop Environment

  • 一种著名的运行于 Linux、Unix 以及FreeBSD 等操作系统上的自由图形桌面环境

6.6Linux操作系统优势

7.安装虚拟机Vmware Workstation Pro 16及win2008 R2+Centos7

7-1.Vmware Workstation安装

  • 完后需要输入序列号
ZF3R0-FHED2-M80TY-8QYGC-NPKYF
YF390-0HF8P-M81RQ-2DXQE-M2UT6
ZF71R-DMX85-08DQY-8YMNC-PPHV8
  • Vmware Workstation Pro16硬件兼容性限制比Pro12 少很多

7.2-安装Windows2008 R2 Enterprise

  • 典型、稍后

  • 固件类型;内存和处理器2G,2+2即可,可之后根据需求进行再次修改

  • 网络类型默认NAT,详见下方讲解
  • I/O控制器类型、虚拟磁盘类型默认。底层计算机硬件,协议不一样,速度不一样,推荐什么用什么。SATA也一样。那如果装老系统,如XP,默认就选择IDE,不然容易蓝屏。

  • 选择磁盘:创建新的虚拟磁盘。现有磁盘的意思为使用物理机的磁盘空间(不建议)。若确定使用现有磁盘,则必须要有管理员的权限。

  • 指定磁盘空间。立即分配不建议,不然40GB直接就从物理机没了,不勾选的话,会慢慢地去占用物理机的磁盘空间。建议存储为单个文件,拷贝的时候速度快。60GB电影和60GB碎片化文件,转换速度和转换率是不一样的。之后更改名称和路径。

  • 自定义硬件,一般来说去掉打印机、声卡即可。需要特别注意USB控制器,根据挂载U盘或者硬盘的格式来定。之后选择镜像文件,进行下一步,准备安装

  • 安装windows server 2008 R2 操作系统

  • 因为电脑没有windows系统,所以选择自定义高级;反之可以升级

  • 直接选择硬盘然后它会自动格式化,如果没有就自行格式化

7.3-安装虚拟机Vmware Tools

  • 如果这里是灰色的,请重启;如果不是直接安装,点击这个选项,相当于点击了以下这个选项

  • 出现此问题,请手动安装或者扫描虚拟机

7.4-Vmware tools的功能

  • 屏幕大小自适应
  • ctrl+alt 真实与虚拟机切换鼠标
  • 克隆:注意克隆前需关闭虚拟机;两种克隆方式,链接克隆方便,相当于快捷方式,但是依赖原先的虚拟机;完整克隆就是一个副本。无论哪种,都是为了解决新建相同操作系统浪费时间的问题。
  • 快照:注意建立一个快照就会占不少空间
  • 可挂载外部USB

7.5-Windows Server 2008 R2 VMWare虚拟机识别USB3.0设备

  • 使用VMware Workstation安装的Windows Server 2008 R2系统虚拟机默认无法识别USB3.0设备

Windows Server 2008 R2系统虚拟接入USB3.0设备后系统提示“未能成功安装设备驱动程序”

  • 首先开启VMware 虚拟机兼容 USB3.0

  • 并根据提示网址下载USB3.0驱动程序

  • 打开虚拟机,将下载好的USB3.0驱动程序上传至虚拟机。安装时可能出现以下报错

  • 此报错解决办法:安装系统更新补丁KB2533623即可

  • 将下载的补丁上传至虚拟机进行安装,安装后重启系统

  • 重启虚拟机后,再次安装USB3.0设备驱动,之后重启就ok了

7-6.安装Centos7

  • 前面同windows,到这里开始。选择第一个安装;第二个是测试安装文件并且安装;第三个是修复故障

  • 选择美式键盘

  • 设置时间

  • 选择需要安装的软件

  • 重点:选择Server with GUI,然后点击done

  • 选择安装位置,对磁盘进行划分

  • 选择'我将会配置分区',则需要自己手动;选择左边的auto,自动就行了

  • 设置root密码和创建一个账户,之后等待下方安装成功即可

7.7-虚拟机三种网络配置

桥接模式

  • 虚拟机也会占用局域网中的一个IP地址,并且可以和其他终端进行相互访问。

  • 如果想把虚拟机当做一台完全独立的计算机看待,并且允许它和其他终端一样的进行网络通信,那么桥接模式通常是虚拟机访问网络的最简单途径

  • 但是,这样做并不安全,只能是做简单的测试

NAT模式

  • 从外部网络来看,虚拟机和主机在共享一个IP地址,默认情况下,外部网络终端也无法访问到虚拟机

仅主机模式

  • 仅主机模式,是一种比NAT模式更加封闭的的网络连接模式
  • 仅主机模式的虚拟网络适配器仅对主机可见,并在虚拟机和主机系统之间提供网络连接
  • 在默认情况下,使用仅主机模式网络连接的虚拟机无法连接到Internet

8.CentOS 7 配置静态IP

  • 首先配置网路前,先将虚拟网卡清理掉。

    输入下方命令,等待显示出命令提示符,然后重启CentOS 7即可关闭多余的3,4虚拟网卡

systemctl disable libvirtd.service

reboot

  • 输入以下命令进入文件进行配置
cp /etc/sysconfig/network-scripts/ifcfg-ens33 etc/sysconfig/network-scripts/ifcfg-ens33.backup

vim /etc/sysconfig/network-scripts/ifcfg-ens33

将BOOTROTO=dhcp 改为BOOTPROTO=static;再将ONBOOT=no 改为yes

再在ONBOOT下方添加以下内容,并退出保存

IPADDR=192.168.91.100
GATEWAY=192.168.91.2
NETMASK=255.255.255.0
DNS1=114.114.114.114
DNS2=8.8.8.8
  • 重启网卡,这三种命令任选一种
systemctl restart network
service network restart
/etc/init.d/network restart
  • 注意:ifconfig和netstat依赖于net_tools,有时候不能用,可以用ipaddr和ss来代替

当网卡崩溃时,尝试输入此命令调试

systemctl stop NetworkManager
systemctl diable NetworkManager
systemctl start network.service

虚拟化架构与Centos7系统部署的更多相关文章

  1. GIT-Linux(CentOS7)系统部署git服务器

    GIT-Linux(CentOS7)系统部署git服务器 root账号登录 一. 安装并配置必要的依赖关系在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget ...

  2. 006-(成功环境记录)基于Centos7系统部署cobbler批量安装系统

    1.1 cobbler简介 Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等. Cobbler可以使 ...

  3. 末学者笔记--Centos7系统部署cobbler批量安装系统

      [前言]: cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cob ...

  4. [还不会搭建博客吗?]centos7系统部署hexo博客新手入门-进阶,看这一篇就够了

    @ 目录 *本文说明 请大家务必查看 前言 首先介绍一下主角:Hexo 什么是 Hexo? 环境准备 详细版 入门:搭建步骤 安装git: 安装node: 安装Hexo: 进阶:hexo基本操作 发布 ...

  5. 基于CentOS7系统部署cobbler批量安装系统(week3_day5_part1)-技术流ken

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...

  6. 基于Centos7系统部署cobbler批量安装系统

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本 系统环境的准备及下载cobbler 一 ...

  7. centos7系统部署cobbler批量安装系统

    系统环境: 一.开启两个网卡.一个仅主机模式,一个桥接模式,主机模式对内提供cobbler服务 [root@localhost ~]# ip a 1: lo: <LOOPBACK,UP,LOWE ...

  8. 基于centos7系统部署cobbler

    准备环境和下载cobbler 一,系统准备 虚拟机下要添加两个网卡.一个仅主机对内提供cobbler服务,一个桥接用来通外网 系统版本为:CentOS 7.5 内网ip :169.254.1.6  # ...

  9. Day01_虚拟化架构与系统部署

    学于千峰教育开源课程 感恩 千峰教育官网 b站在线视频 前言:本人所使用的操作系统是MacOS 使用的虚拟机软件为parallels desktop 本章结构 构建桌面端虚拟环境 虚拟机的概述 VMa ...

随机推荐

  1. ymal文档格式 处理

    Python也可以很容易的处理ymal文档格式,只不过需要安装一个模块. 参考文档:http://pyyaml.org/wiki/PyYAMLDocumentation

  2. centos7 ssh 提示/bin/bash No such file or directory 【ldd命令理解】

    现象:客户报障ssh无法登陆.提示/bin/bash No such file or directory 排查:进入单用户模式 linux16 行ro替换 rw init=/sysroot/bin/s ...

  3. mysql 禁止自动提交设置

    mysql禁止自动提交的设置, 在my.ini文件里加上如下的一句便可 init_connect='SET autocommit=0' 但是有个问题,对root用户进行autocommit变量的查询, ...

  4. STL源码剖析-waked_ptr

    目录一.提问二. 代码实现2.1 mweak_ptr的具体实现2.2 测试用例一.提问weak_ptr为什么会存在?shared_ptr不是已经有了引用计数吗?具体原因详见模拟实现boost库中的sh ...

  5. windows安装openoffice4

    官网:https://www.openoffice.org/download/index.html 下载完成后 直接点击安装即可

  6. JAVA字符串拼接操作规则说明

    1.常量与常量的拼接结果在常量池,原理是编译期优化 public void test1() { String s1 = "a" + "b" + "c& ...

  7. 一个VScode主题网站

    分享一个我常用的VScode主题网站 https://vscodethemes.com/dark 它提供了 深色和浅色主题供大家选择 查看主题插件 下载 深色 浅色

  8. c++设计模式概述之装饰器

    类写的不够规范,目的是为了缩短篇幅,实际中请不要这样做.  1.概述 想象一下修房子.当施工队把房子框架结构做好了,墙刷上了水泥, 这时,工队暂时没有钱,装修只能暂停了. 过了一段时间,工队筹集了资金 ...

  9. 【LeetCode】面试题13. 机器人的运动范围

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 BFS 日期 题目地址:https://leetcod ...

  10. bugku的一道代码审计基础题:eval

    首先看到 include "flag.php",第一反应就应该是文件包含 直接先?hello=file:////etc, 然后啥也没 那就再检查一下代码,eval(var_dump ...