旧游无处不堪寻
无寻处,惟有少年心
虚拟化

今天给公司搭建虚拟化平台,对其中用到的一些知识进行整理。

如果没有虚拟化,就不可能有云计算。而如果没有 Hypervisor,则不可能有虚拟化。

何为 Hypervisor


在 Hypervisor 成为主流之前,大部分的物理计算机一次只能运行一个操作系统。由于计算硬件只需处理一个操作系统的请求,因此非常稳定。 但这种方法的缺点在于浪费资源,因为操作系统并不始终在使用计算机的所有计算能力。

Hypervisor 正是为了解决这一问题而生。它是一个小型软件层,支持多个操作系统相互独立地并行运行,共享相同的物理计算资源。
这些操作系统采用虚拟机(VM)的形式,也就是在软件中模拟整个计算硬件环境的文件。

Hypervisor 也称为虚拟机监控器(VMM),用于管理这些相互独立运行的虚拟机。

Hypervisor 可以分为两种类型: TYPE I 和 TYPE II。

TYPE I 虚拟机管理器直接在底层计算机的物理硬件上运行,直接与 CPU、内存和物理存储器交互。
TYPE II 虚拟机管理器并不直接在底层硬件上运行,而是在操作系统中作为应用运行。

示例


VMware

  • VMware ESXi: 针对数据中心内服务器虚拟化的 TYPE I 虚拟机管理器

VMware 还为台式机和笔记本电脑用户提供 2 种主要的 TYPE II 虚拟机管理器产品系列:

  • VMware Fusion: 专用于 MacOS 的产品,它使 Mac 用户能够运行大量的虚拟操作系统
  • Workstation: 专注于 Linux 和 Windows 的平台

Oracle

  • VirtualBox: 在 Linux、Mac OS 和 Windows 操作系统上运行的 TYPE II 虚拟机管理器

Hyper-V

Hyper-V 是专为 Windows 系统设计的 Microsoft 虚拟机管理器。
Microsoft 将 Hyper-V 指定为 TYPE I 虚拟机管理器,即使它与许多竞争对手产品的运行方式不同。 Hyper-V 安装在 Windows 上,但直接在物理硬件上运行,将自身插入主机操作系统之下。

OpenSource Hypervisor

某些虚拟机管理器来自开源项目,例如:

  • KVM: Red Hat 是该解决方案的长期支持者,基于内核的虚拟机(KVM)在 2007 年成为 Linux 内核主线的一部分
  • Xen: 它是在 Intel 和 ARM 架构上运行的开源 TYPE I 虚拟机管理器,源自剑桥大学的一个项目

公司虚拟化平台


公司新买的 DELL 服务器今天到了,要搭建虚拟化平台,由于自己对 ESXi 比较熟悉,因此决定采用该软件进行平台搭建。

安装

新买的服务器有三块 3T 磁盘,我们先对服务器磁盘进行 RAID5,DELL 服务器 RAID 操作非常简单,使用 F2 进入系统设置,选择 Device Setting,选中 RAID 卡,然后进行 Configuration Managerment,选择 Create Virtual Disk 根据磁盘数量创建可使用的 RAID 类型。

然后我们使用 rufus 将 ESXi 写入 U 盘制作启动盘,以 U 盘启动后,则可进入 DCUI。我们可以拿着显示器和键盘直接连接服务器对其进行 IP 等基础配置。配置完毕,我们以后就可以直接使用 VMware Host Client 远程管理了。

创建虚拟机

创建虚拟机前,我们要先在存储中上载对应操作系统的镜像文件,创建虚拟机过程非常简单,在此不再赘述。

vSphere 网络

目前看来 vSphere 的网络比较简单,存在 vSwitch0 连接内外网络,默认有两个端口组,一个是管理端口组,一个是虚拟机端口组,均使用默认虚拟交换机进行网络连接,比较直观。

虚拟机网络

常见的虚拟机网络有三种:

  1. Bridged 模式
  2. Host-Only 模式
  3. NAT 模式

在 VMware 中管理了 3 个特殊的虚拟交换机: VMnet0(用于桥接模式),VMnet8(用于 NAT 模式),VMnet1(用于仅主机模式)。

VMware 安装完成后会在宿主机上生成两块虚拟网卡,这两块网卡与虚拟机管理的两个虚拟交换机相连。

桥接模式

把宿主机的网卡通过虚拟网桥与 VMware 管理的虚拟交换机 VMnet0 相连,这样所有的虚拟机与宿主机以及与宿主机在同一个局域网下的主机之间都是可以相互访问。在桥接模式下,虚拟机 IP 地址与宿主机在同一个网段。

NAT 模式

NAT 模式借助虚拟 NAT 设备和虚拟 DHCP 服务器,使得虚拟机可以联网。虚拟机会将虚拟 NAT 设备及虚拟 DHCP 服务器连接到 Vmnet8 虚拟交换机上。依靠虚拟的 NAT 设备及虚拟的 DHCP 设备,如果你的宿主机已经联网了,那么你的虚拟机也就可以联网。同时宿主机上的虚拟网卡VMwareNetwork Adapter VMnet8 也会连接到 Vmnet8 虚拟交换机上,用于宿主机和虚拟机的通信。
需要注意,虚拟网卡 VMwareNetwork Adapter VMnet8 只是作为主机与虚拟机通信的接口,虚拟机并不是依靠虚拟网卡 VMware Network Adapter VMnet8 来联网的。
由于 NAT 服务协议对外部网络隐蔽内部网络,因此虚拟机可以通过 NAT 服务器访问宿主机所在局域网内的其他真实主机,但这些真实主机且不能反过来访问虚拟机。如果需要访问需要配置端口转发。

主机模式

Host-Only 模式通过宿主机的虚拟网卡 VMwareNetwork Adapter VMnet1 来连接虚拟交换机 VMnet1,从而达到宿主机与虚拟机通信的目的,但是虚拟机不能主动与宿主机通信。