Hyper-V1:创建和管理虚拟机
Hyper-V是微软的管理虚拟机(Virtual Machine)的服务,在安装Hyper-V功能之后,系统自动安装可视化的虚拟机管理工具:Hyper-V Manager。在同一台物理机上,能够使用Hyper-V创建多个虚拟机(VM),每一个VM执行不同的工作负载(workload),运行单独的系统环境。Hyper-V为管理VM提供全面的灵活性,用户可以根据需要,在一台物理机上创建多个VM,每个VM安装不同的操作系统(Windows或Linux),运行不同的应用程序,但是,虚拟机是以牺牲性能为代价的,IO和CPU的性能都会下降。
You can use virtual machines to run different workloads. Each virtual machine runs in an isolated execution environment, which gives you the flexibility to run different operating systems and applications on one physical computer.
一,安装Hyper-V功能
本文物理机的操作系统环境是Windows Server 2012 R2(Win12 R2),默认情况下,Hyper-V是不会安装的。想要在一台物理机上创建多个VMs,首先安装Hyper-V功能。打开Server Manager->Dashboard窗体,点击”Add Roles and Features“,在Server Roles Tab中,选择Hyper-V安装。计划在VM上安装的Guest OS是Win12 R2。

二,在Hyper-V中创建虚拟机
在安装Hyper-V之后,系统会自动安装Hyper-V管理器(Hyper-V Manager),默认将本机添加到Server列表中,可以通过菜单”Connect To Srever“将其他Server(已安装Hyper-V Feature)添加到Hyper-V管理器中,通过Hyper-V Manager来创建和管理虚拟机。
1,打开 New Virtual Machine 向导(Wizard)

2,指定VM的名字和数据存储的位置(Location)

3,选择VM的版本(Generation)
Hyper-V的版本共有2代:Generation 1 和 Generation2。第一代虚拟机是Hyper-V的前一个版本,第二代虚拟机启动(boot)更快,模拟加载的硬件资源更少,性能更高,但并不是所有的机器都支持第二代VM。 因此,可以无脑选择Generation 2,如果创建第二代VM失败,再选择Generation 1。

4,为VM分配开机内存
为新建的VM分配开机内存,勾选动态分配内存,VM会动态使用系统内存。

5,配置网络适配器,从connection列表中选择网络适配器

6,为VM分配存储数据的磁盘空间
创建虚拟硬盘(Virtual Disk)文件,后缀名是.vhdx,是逻辑盘符中的一个文件,能够动态扩张,用于存储VM的OS和数据文件。

7,为VM安装操作系统
选项:Install an operating system later,在VM创建完成之后,等到VM启动时再安装OS,本文使用该选项。
其他两个选项都是在创建VM时安装OS,从镜像文件(ISO),或从网络上安装。如果有了Windows Server 2012 R2的镜像文件,可以选择”Install an operating system from a bootable image file“,后缀名是.ISO。

8,概要,描述VM的配置信息,点击Finish按钮,开始创建VM

三,配置VM,安装OS
由于在创建VM时,选择的是”Install an operating system later“,因此,在VM创建成功之后,需要配置VM,安装OS。在Virtual Machines面板中,会罗列出在特定Server上创建的所有VMs,选择需要安装OS的一个VM。

1,点击Connect,打开VM

2,点击Start按钮,启动VM

3,从镜像文件(ISO)安装OS
首先,添加集成服务安装硬盘,点击菜单 Action,选择”Insert Integration Services Setup Disk“,
然后,添加Disk驱动设备,点击菜单 Media,选项DVD Drive,选择”Insert Disk“,选择Windows Server 2012 R2的安装镜像文件(ISO);
最后,关闭VM(shutdown),设置firmware,从DVD Drive引导启动(boot from DVD Drive),设置的过程,参考下文:4,设置固件(Firmware),从固件中引导VM启动(boot)

重启VM,等待出现以下Dos界面,按下任意键,从CD或DVD引导VM安装OS

4,设置固件(Firmware),从固件中引导VM启动(boot)
点击VM的Settings,打开VM_Test的设置窗体

点击Firware,设置VM引导启动的顺序(Boot order),排在第一个Boot Entry,默认的类型是File,从bootmgfw.efi 文件中引导启动;将第一个boot Entry修改为Hard Drive,首先从Disk驱动器中引导VM启动,选中Hard Drive,点Move Up向上移动。

四,虚拟交换机管理器(Virtual Switch Manager)
在Hyper-V Manager的右侧面板上,点击Virtual Switch Manager,打开虚拟交换机管理器面板,如图

在Hyper-V中,能够创建三种类型的Virtual Switch:
- External:将Virtual Switch绑定到物理网络适配器上,这样,VM能够通过访问物理网络和外网通信;
- Internal:Virtual Switch 不能连接物理网络适配器,只能用于在本地物理机上创建的VM,用于VM和本地物理机的通信;
- Private:Vitrual Switch 只能用于在本地物理机上创建的VM,使VMs之间能够互相通信;
五,修改VM的设置
1,修改Firmware,上文已说明
2,配置VM使用的内存资源,有四个配置选项:
- Startup RAM:是VM启动时,分配的内存资源,建议配置
- Dynamic Memory:VM动态地增加或减少内存使用,需要为VM分配内存资源的范围,建议配置
- Memory Buffer:在VM使用的内存动态增加或减少时,尝试保留(Reserve)的内存缓冲区,建议使用默认值
- Memory Weight:争用内存的优先级

3,处理器配置(Processor)
管理虚拟机的处理器,为VM分配处理器数量
4,SCSI控制器
管理虚拟硬盘驱动器(Virtual Hard Drive),为VM分配虚拟硬盘,收缩或扩展Disk空间
5,网络适配器(Network Adapter)
管理虚拟机的网络适配器,为VM分配Virtual Switch
六,故障排除
1,Hyper-V:Firmware 显示 Load Failed
详细请参考:《Hyper-V: Firmware – Load Failed》,《Hyper-V VM Load Firmware Failed》,使用的Powershell代码是:
(Get-VM "YOURVMNAME" | Get-VMFirmware).BootOrder
Get-VM "YOURVMNAME" |Get-VMFirmware|ForEach {Set-VMFirmware -BootOrder ($_.Bootorder | ? {$_.BootType -ne 'File'}) $_}
参考文档:
Part 1: Introduction to generation 2 virtual machines
What is the memory buffer when dynamic memory is enabled?
Deciding When To Use Generation 1 or Generation 2 Virtual Machines with Hyper-V
Hyper-V Guide: Create and Configure Generation 1 and 2 Virtual Machines
Hyper-V1:创建和管理虚拟机的更多相关文章
- 使用virt-manager创建和管理虚拟机
1.虚拟机管理程序和虚拟机管理 一个服务器上只安装单一操作系统的时代已经过去,单个服务器可通过安装多个虚拟机来运行不同操作系统.虚拟机的大量使用减少了所需的服务其硬件,降低了服务器的功耗,但却带来了另 ...
- 用于创建和管理 Azure 虚拟机的常用 PowerShell 命令
本文介绍一些可用于在 Azure 订阅中创建和管理虚拟机的 Azure PowerShell 命令. 若要获取特定命令行开关和选项的详细帮助,可以使用 Get-Help 命令. 有关安装最新版 Azu ...
- 使用 Virtual Machine Manager 管理虚拟机
转载自https://www.ibm.com/developerworks/cn/cloud/library/cl-managingvms/ 尽管服务器管理在过去问题重重,但虚拟化管理简化了一些问 ...
- 菜鸟玩云计算之十五:在Ubuntu上创建和管理Redhat虚拟机
菜鸟玩云计算之十五:在Ubuntu上创建和管理Redhat虚拟机 chedou@hgdb.net 虚拟机给工作带来巨大的便利,不仅仅体现在资源的按需使用,而且配置的迁移特别方便.本文将使用Ubuntu ...
- KVM虚拟机管理——虚拟机创建和操作系统安装
1. 概述2. 交互式安装2.1 图形化-本地安装2.1.1 图形化本地CDROM安装2.2.2 图形化本地镜像安装2.2 命令行-本地安装2.2.1 命令行CDROM安装2.3 图形化-网络安装2. ...
- 使用 libvirt创建和管理KVM虚拟机
1. libvirt介绍 Libvirt是一个软件集合,便于使用者管理虚拟机和其他虚拟化功能,比如存储和网络接口管理等等.Libvirt概括起来包括一个API库.一个 daemon(libv ...
- centos 下 KVM虚拟机的创建、管理与迁移
kvm虚拟机管理 一.环境 role hostname ip OS kvm_server target 192.168.32.40 ...
- KVM (虚拟机创建及管理,存储管理)
创建KVM虚拟机 1.图形化界面创建 第一步:查看软件包组 yum grouplist 第二步:下载GUI界面的软件包组 yum groupinstall "Server with GUI& ...
- KVM虚拟机的创建、管理与迁移
[日期:2012-06-01] KVM虚拟机管理 一.环境 role hostname ip OS kvm_server target ...
随机推荐
- C++ 可配置的类工厂
项目中常用到工厂模式,工厂模式可以把创建对象的具体细节封装到Create函数中,减少重复代码,增强可读和可维护性.传统的工厂实现如下: class Widget { public: virtual i ...
- 超大 Cookie 拒绝服务攻击
有没有想过,如果网站的 Cookie 特别多特别大,会发生什么情况? 不多说,马上来试验一下: for (i = 0; i < 20; i++) document.cookie = i + '= ...
- SSH实战 · 唯唯乐购项目(中)
用户模块 三:一级分类的查询 创建一级分类表并导入基本数据 CREATE TABLE `category` ( `cid` int(11) NOT NULL AUTO_INCREMENT, ` ...
- 【SSM框架】Spring + Springmvc + Mybatis 基本框架搭建集成教程
本文将讲解SSM框架的基本搭建集成,并有一个简单demo案例 说明:1.本文暂未使用maven集成,jar包需要手动导入. 2.本文为基础教程,大神切勿见笑. 3.如果对您学习有帮助,欢迎各种转载,注 ...
- ElasticSearch 5学习(10)——结构化查询(包括新特性)
之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...
- ASP.NET Core: You must add a reference to assembly mscorlib, version=4.0.0.0
ASP.NET Core 引用外部程序包的时候,有时会出现下面的错误: The type 'Object' is defined in an assembly that is not referenc ...
- 简析服务端通过GT导入SHP至PG的方法
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 项目中需要在浏览器端直接上传SHP后服务端进行数据的自动入PG ...
- 个人网站对xss跨站脚本攻击(重点是富文本编辑器情况)和sql注入攻击的防范
昨天本博客受到了xss跨站脚本注入攻击,3分钟攻陷--其实攻击者进攻的手法很简单,没啥技术含量.只能感叹自己之前竟然完全没防范. 这是数据库里留下的一些记录.最后那人弄了一个无限循环弹出框的脚本,估计 ...
- 《如何使用Javascript判断浏览器终端设备》
WEB开发中如何通过Javascript来判断终端为PC.IOS(iphone).Android呢? 可以通过判断浏览器的userAgent,用正则来判断手机是否是ios和Android客户端. va ...
- (转载) RESTful API 设计指南
作者: 阮一峰 日期: 2014年5月22日 网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). 因此,必须有一种统一的机制 ...