38,99 €
Build a seamless, flexible, full-service datacenter solution Microsoft Windows Server 2016 Hyper-V is the IT administrator's guide to this rising datacenter solution. Hyper-V has already surpassed VMWare in datacenter management, identity service for multiple devices, and more; this book shows you how to harness the power of this hypervisor to simplify the infrastructure, reduce costs, improve productivity, and better manage system resources. From a tour of the technology through architecture, deployment, and integration of System Center, Microsoft Azure, and Microsoft Azure Stack, the discussion illustrates the skills you need to create a complete solution for optimum enterprise management. Coverage includes Windows Azure capabilities for virtual machines, managing a hybrid cloud, IaaS, storage capabilities, PowerShell, and more, with practical real-world guidance from a leading authority in the field. Hyper-V has recently undergone improvements in scalability and features that have positioned it as an ideal solution in the Small/Medium Business and Enterprise markets. This book shows you how to exploit these new capabilities to build a robust data solution for your organization. * Discover the capabilities of Microsoft Hyper-V * Architect a Hyper-V datacenter solution * Plan and manage a deployment or migration * Integrate complementary technologies for full scalability Data is everywhere--on desktops, laptops, phones, and multiple operating systems, accessed through email, text messages, web searches, online services, and more. All of this data must be stored, accessible, updated, backed up, secured, managed, sorted, and analyzed--sometimes instantly. Hyper-V is the rising star in the virtualization space, and Microsoft Windows Server 2016 Hyper-V shows you how to turn greater capabilities into better datacenter solutions.
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 1297
Veröffentlichungsjahr: 2016
John Savill
Senior Acquisitions Editor: Kenyon Brown
Development Editor: Gary Schwartz
Production Editor: Christine O’Connor
Copy Editor: Sharon Wilkey
Editorial Manager: Mary Beth Wakefield
Production Manager: Kathleen Wisor
Executive Editor: Jim Minatel
Book Designers: Maureen Forys, Happenstance Type-O-Rama and Judy Fung
Proofreader: Nancy Carrasco
Indexer: Ted Laux
Project Coordinator, Cover: Brent Savage
Cover Designer: Wiley
Cover Image: dotshock/Shutterstock
Copyright © 2017 by John Wiley & Sons, Inc., Indianapolis, Indiana Published simultaneously in Canada
ISBN: 978-1-119-28618-9 ISBN: 978-1-119-28621-9 (ebk.) ISBN: 978-1-119-28620-2 (ebk.)
Manufactured in the United States of America
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permissions.
Limit of Liability/Disclaimer of Warranty: The publisher and the author make no representations or warranties with respect to the accuracy or completeness of the contents of this work and specifically disclaim all warranties, including without limitation warranties of fitness for a particular purpose. No warranty may be created or extended by sales or promotional materials. The advice and strategies contained herein may not be suitable for every situation. This work is sold with the understanding that the publisher is not engaged in rendering legal, accounting, or other professional services. If professional assistance is required, the services of a competent professional person should be sought. Neither the publisher nor the author shall be liable for damages arising herefrom. The fact that an organization or Web site is referred to in this work as a citation and/or a potential source of further information does not mean that the author or the publisher endorses the information the organization or Web site may provide or recommendations it may make. Further, readers should be aware that Internet Web sites listed in this work may have changed or disappeared between when this work was written and when it is read.
For general information on our other products and services or to obtain technical support, please contact our Customer Care Department within the U.S. at (877) 762-2974, outside the U.S. at (317) 572-3993 or fax (317) 572-4002.
Wiley publishes in a variety of print and electronic formats and by print-on-demand. Some material included with standard print versions of this book may not be included in e-books or in print-on-demand. If this book refers to media such as a CD or DVD that is not included in the version you purchased, you may download this material at http://booksupport.wiley.com. For more information about Wiley products, visit www.wiley.com.
Library of Congress Control Number: 2016959384
TRADEMARKS: Wiley, the Wiley logo, and the Sybex logo are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. Windows Server and Hyper-V are registered trademarks of Microsoft Corporation. All other trademarks are the property of their respective owners. John Wiley & Sons, Inc. is not associated with any product or vendor mentioned in this book.
For my wife, Julie, and my children, Abby, Ben, and Kevin. My everythings.
I could not have written this book without the help and support of many people. First I need to thank my wife, Julie, for putting up with me for being busier than usual the last six months and for picking up the slack as always—and for always supporting the crazy things I want to do. My children, Abby, Ben, and Kevin, always make all the work worthwhile; they can turn the worst, most tiring day into a good one with a smile and a laugh.
Of course, the book wouldn’t be possible at all without the Wiley team: senior acquisitions editor Kenyon Brown, development editor Gary Schwartz, production editor Christine O’Connor, copy editor Sharon Wilkey, and proofreader Nancy Carrasco.
Many people have helped me over the years with encouragement and technical knowledge, and this book is the sum of that. The following people helped out on specific aspects of this book, and I want to thank them and give them the credit they deserve for helping make this book as good as possible (if I’ve missed anyone, I’m truly sorry): Theo Thompson, Mathew John, Jake Oshins, Chris Huybregts, Neil Peterson, Jim Wooldridge, Steven Ekren, Michael Gray, Darren Moss, Claus Joergensen, Dean Wells, Nir Ben Zvi, Andrew Mason, Jian Yan, Simon Gurevich, Shivam Garg, Elden Christensen, Jason Messer, Taylor Brown, Manish Jha, Shon Shah, Pradeep Reddy, Don Stanwyck, Greg Cusanza, Paul Kimbel, Scott Willwerth, and Tim Aranki.
John Savill is a technical specialist who focuses on Microsoft core infrastructure technologies including Windows, Hyper‐V, System Center, and anything that does something cool. He has been working with Microsoft technologies for 20 years. He is the creator of the highly popular NTFAQ.com website and a senior contributing editor for Windows IT Pro magazine. He has written seven previous books covering Windows, Azure, Hyper‐V, and advanced Active Directory architecture. When he is not writing books, he writes magazine articles and white papers; creates many technology videos, which are available on his YouTube channel, www.youtube.com/ntfaqguy; and presents online and at industry‐leading events, including TechEd, Ignite, and Windows Connections. When he was writing this book, he had just completed running his annual series of Master Classes, which include classes on Azure, Hyper‐V, PowerShell, and the complete Microsoft stack. John also has online courses on Pluralsight and O’Reilly.
Outside technology, John enjoys cardio and weight training. In fact, while writing this book, he was training for his third full Ironman triathlon in Chattanooga, Tennessee.
John tries to update his blog at www.savilltech.com/blog with the latest news of what he is working on and also tweets at @NTFAQGuy.
Acknowledgments
About the Author
Introduction
Chapter 1 Introduction to Virtualization and Microsoft Solutions
The Evolution of the Datacenter
History of Hyper-V
Licensing of Hyper-V
The Role of System Center with Hyper-V
Clouds and Services
The Bottom Line
Chapter 2 Virtual Machine Resource Fundamentals
Understanding VMBus
The Anatomy of a Virtual Machine
Processor Resources
Memory Resources
Virtual Storage
The Bottom Line
Chapter 3 Virtual Networking
Virtual Switch Fundamentals
Extensible Switch
VLANs and PVLANS
How SCVMM Simplifies Networking with Hyper-V
Network Virtualization
VMQ, RSS, and SR-IOV
NIC Teaming
Host Virtual Adapters and Types of Networks Needed in a Hyper-V Host
Types of Guest Network Adapters
Monitoring Virtual Traffic
The Bottom Line
Chapter 4 Storage Configurations
Storage Fundamentals and VHDX
Storage Spaces and Windows as a Storage Solution
Server Message Block Usage
iSCSI with Hyper-V
Understanding Virtual Fibre Channel
Leveraging Shared VHDX and VHD Sets
Data Deduplication and Hyper-V
Storage Quality of Service
SAN Storage and SCVMM
The Bottom Line
Chapter 5 Managing Hyper-V
Installing Hyper-V
Hyper-V Management Tools
Securing the Hyper-V Server
Creating and Managing a Virtual Machine
Shielded VMs and Host Guardian Service
Creating and Using Hyper-V Templates
Hyper-V Integration Services and Supported Operating Systems
Migrating Physical Servers and Virtual Machines to Hyper-V Virtual Machines
Upgrading and Migrating from Previous Versions
The Bottom Line
Chapter 6 Maintaining a Hyper-V Environment
Patch Planning and Implementation
Malware Configurations
Backup Planning
Defragmentation with Hyper-V
Using Checkpoints
Using Service Templates
Performance Tuning and Monitoring with Hyper-V
The Bottom Line
Chapter 7 Failover Clustering and Migration Technologies
Failover Clustering Basics
Understanding Quorum and Why It’s Important
Quorum Basics
Why Use Clustering with Hyper-V?
Configuring a Hyper-V Cluster
Creating Clusters with SCVMM
Using Cluster Shared Volumes
Making a Virtual Machine a Clustered Virtual Machine
Live Migration
Dynamic Optimization and Resource Balancing
The Bottom Line
Chapter 8 Hyper-V Replica and Cloud Orchestration
The Need for Disaster Recovery and DR Basics
Asynchronous vs. Synchronous Replication
Introduction to Hyper-V Replica
Enabling Hyper-V Replica
Configuring Hyper-V Replica
Using Hyper-V Replica Broker
Performing Hyper-V Replica Failover
Sizing a Hyper-V Replica Solution
Using Hyper-V Replica Cloud Orchestration for Automated Failover with Azure Site Recovery
Architecting the Right Disaster-Recovery Solution
The Bottom Line
Chapter 9 Implementing the Private Cloud, SCVMM, and Microsoft Azure Stack
The Benefits of the Private Cloud
Private Cloud Components
SCVMM Fundamentals
Creating a Private Cloud by Using System Center Virtual Machine Manager
Granting Users Access to the Private Cloud
How the Rest of System Center Fits into Your Private Cloud Architecture
Understanding Microsoft Azure Stack
The Bottom Line
Chapter 10 Containers and Docker
Challenge of Application Deployment
Hyper-V Nested Virtualization
Windows Container Fundamentals
Windows Server Containers vs. Hyper-V Containers
Docker
Installing the Container Feature
Creating and Managing Containers
Using Containers in Your Organization
The Bottom Line
Chapter 11 Remote Desktop Services
Remote Desktop Services and Bring Your Own Device
Microsoft Desktop and Session Virtualization Technologies
Requirements for a Complete Desktop Virtualization Solution
Creating the VDI Template
Deploying a New VDI Collection Using Scenario-Based Deployment
Using RemoteFX
Remote Desktop Protocol Capabilities
Using Multipoint Services
Choosing the Right Desktop Virtualization Technology
The Bottom Line
Chapter 12 Microsoft Azure IaaS, Storage, and Networking
Understanding Public Cloud “as a Service”
When Are Public Cloud Services the Best Solution?
Microsoft Azure 101
Capabilities of Azure IaaS and How It Is Purchased
Creating Virtual Machines in Azure IaaS
Migrating Virtual Machines Between Hyper-V and Azure IaaS
The Bottom Line
Chapter 13 Bringing It All Together with a Best-of-Breed Cloud Solution
Which Is the Right Technology to Choose?
Enabling Single-Pane-of-Glass Management
The Bottom Line
Appendix The Bottom Line
Chapter 1: Introduction to Virtualization and Microsoft Solutions
Chapter 2: Virtual Machine Resource Fundamentals
Chapter 3: Virtual Networking
Chapter 4: Storage Configurations
Chapter 5: Managing Hyper-V
Chapter 6: Maintaining a Hyper-V Environment
Chapter 7: Failover Clustering and Migration Technologies
Chapter 8: Hyper-V Replica and Cloud Orchestration
Chapter 9: Implementing the Private Cloud, SCVMM, and Microsoft Azure Stack
Chapter 10: Containers and Docker
Chapter 11: Remote Desktop Services
Chapter 12: Microsoft Azure IaaS, Storage, and Networking
Chapter 13: Bringing It All Together with a Best-of-Breed Cloud Solution
EULA
Chapter 1
Table 1.1
Table 1.2
Table 1.3
Chapter 2
Table 2.1
Table 2.2
Table 2.3
Table 2.1
Chapter 3
Table 3.1
Table 3.2
Chapter 4
Table 4.1
Chapter 5
Table 5.1
Table 5.2
Chapter 7
Table 7.1
Table 7.2
Chapter 10
Table 10.1
Chapter 12
Table 12.1
Table 12.2
Chapter 1
Figure 1.1
The Device Manager view of a typical physical server, with Task Manager showing some of its available resources
Figure 1.2
A high-level view of a virtualization host and resources assigned to virtual machines
Figure 1.3
A virtual machine running on a physical server
Figure 1.4
Hyper-V architecture
Figure 1.5
A high-level view of the Live Migration process
Figure 1.6
Linux virtual machine running on Windows Server 2012 Hyper-V with 64 vCPUs
Figure 1.7
The major new features of Windows Server 2012 Hyper-V
Figure 1.8
Extended Hyper-V Replica allows different replication intervals between the replicas
Figure 1.9
Using stacked Standard licenses for virtual machines
Figure 1.10
Moving Standard licenses to enable licensed virtual machine migrations
Figure 1.11
Required Standard licensing to enable virtual machine mobility
Figure 1.12
Using Datacenter to enable an unlimited number of virtual machines on the hosts for full mobility
Figure 1.13
Components of System Center
Figure 1.14
The key types of management and how they are owned for the types of cloud service
Chapter 2
Figure 2.1
The monolithic and microkernelized hypervisors
Figure 2.2
Task Manager showing a single
vmms.exe
instance and many
vmwp.exe
instances
Figure 2.3
Hyper-V VMBus architecture
Figure 2.4
The BIOS configurations possible for a generation 1 virtual machine. The boot order can be changed using the Move Up and Move Down buttons.
Figure 2.5
Adding a SCSI controller to a generation 1 virtual machine
Figure 2.6
Generation 1 compared to generation 2 hardware
Figure 2.7
VM configuration upgrade using Hyper-V Manager
Figure 2.8
Task Manager in Logical Processor view showing the physical processors and logical processor details
Figure 2.9
A view of logical processor to virtual processor mapping
Figure 2.10
A virtual processor from a single-processor VM assigned to a logical processor on the host
Figure 2.11
A virtual machine with multiple virtual processors being scheduled to the available logical processors
Figure 2.12
Configuration options for the NUMA configuration of a virtual machine
Figure 2.13
Changing the NUMA spanning option for a Hyper-V server
Figure 2.14
Configuring Dynamic Memory settings for a virtual machine
Figure 2.15
An operating system with only 4MB of free memory but still plenty of available memory
Figure 2.16
The inflation of the balloon driver to allow Hyper-V to reclaim memory from a virtual machine
Figure 2.17
Error message when a memory change can be only partially completed
Figure 2.18
The key types of VHD disks
Figure 2.19
Selecting the size or source content for a new virtual hard disk
Figure 2.20
The basic information about a virtual hard disk shown by the Inspect Disk option
Figure 2.21
Memory resources for a graphical device
Chapter 3
Figure 3.1
The three types of virtual switches available in Hyper-V
Figure 3.2
Primary configuration page for a new virtual switch
Figure 3.3
How traffic flows through the extensible switch and registered extensions for the inbound path
Figure 3.4
Enabling extensions for a virtual switch in Hyper-V
Figure 3.5
The VFP place with the VMSwitch
Figure 3.6
The flow-caching hash lookup used in the VFP
Figure 3.7
Three VLANs in a two-rack configuration. For redundancy, each ToR has a connection to two separate aggregation switches.
Figure 3.8
New VM in VLAN 20 added to the host in the second rack, and the changes to the switch VLAN configuration required
Figure 3.9
Setting the VLAN ID for a virtual machine's network adapter
Figure 3.10
PVLAN overview and the three types
Figure 3.11
Enabling a PVLAN by using SCVMM on a new logical network
Figure 3.12
Using SCVMM to create multiple isolated PVLANs that use the same secondary VLAN ID
Figure 3.13
Common networks seen in a datacenter with virtualization
Figure 3.14
High-level view of logical networks
Figure 3.15
Viewing the security settings for the built-in Guest Dynamic IP virtual port profile
Figure 3.16
The steps for SCVMM network configuration
Figure 3.17
Disabling the automatic creation of logical networks in SCVMM 2016
Figure 3.18
Creating a logical network that represents a connected collection of sites
Figure 3.19
Adding a single site to a logical network
Figure 3.20
Creating a VLAN-based logical network
Figure 3.21
Choose the site for a new IP pool or create a new one.
Figure 3.22
Configuring the IP address range for the IP pool
Figure 3.23
The complete logical network and VM network configuration
Figure 3.24
Setting the options for a new uplink port profile and NIC Teaming options
Figure 3.25
Selecting the network sites that can be connected to by using the uplink port profile
Figure 3.26
Selecting the type of uplink to be used in the switch
Figure 3.27
Selecting the adapters to be used for the logical switch deployment
Figure 3.28
Viewing the status of logical switch deployment
Figure 3.29
Viewing the status of logical switch modification to SET mode
Figure 3.30
High-level overview of network virtualization
Figure 3.31
High-level overview of network virtualization using NVGRE
Figure 3.32
The three planes that enable network virtualization for HNVv1
Figure 3.33
The three planes that enable network virtualization for HNVv2
Figure 3.34
The SLB implementation of HNVv2
Figure 3.35
Security layers with SDNv2
Figure 3.36
Example use of the datacenter firewall restricting traffic flow
Figure 3.37
Understanding the VMQ and SR-IOV network technologies compared to regular networking
Figure 3.38
Enabling SR-IOV on a virtual switch at creation time
Figure 3.39
Ensuring that VMQ is enabled for a virtual machine
Figure 3.40
Network performance without vRSS enabled
Figure 3.41
Network performance with vRSS enabled
Figure 3.42
A nonconverged Hyper-V host configuration with separate 1Gbps NIC teams for each type of traffic
Figure 3.43
A converged Hyper-V host configuration with a shared NIC team used
Figure 3.44
A converged Hyper-V host configuration with separate NICs for SMB (RDMA) traffic
Figure 3.45
A converged Hyper-V host configuration with shared NICs for SMB (RDMA) traffic
Figure 3.46
Breakdown of features and offloads by type of networking
Figure 3.47
Primary properties for a network adapter
Figure 3.48
VMSwitch network speed shown inside the guest
Figure 3.49
Configuring the remote traffic to capture by using Message Analyzer
Figure 3.50
Example view of captured traffic
Chapter 4
Figure 4.1
An error occurs as the administrator tries to disable write caching within a virtual machine. Applications would receive a similar error condition.
Figure 4.2
A virtual machine with 20GB of space unallocated
Figure 4.3
Creating a new virtual disk within a storage space
Figure 4.4
Storage Spaces architecture showing a hot block moving from the HDD tier to the SSD tier
Figure 4.5
Selecting the resiliency for a 2016 virtual disk
Figure 4.6
High-level view of Storage Spaces Direct utilizing SMB 3 to aggregate local storage for nodes in a cluster
Figure 4.7
The two types of deployment model for Storage Spaces Direct
Figure 4.8
Storage Spaces Direct workings under the hood
Figure 4.9
Storage Replica use scenarios
Figure 4.10
Storage Replica placement in the filesystem stack
Figure 4.11
Storage Replica synchronous replication workings
Figure 4.12
Storage Replica working with Storage Spaces Direct
Figure 4.13
Enabling active-active through the selection of Scale-Out File Server For Application Data
Figure 4.14
Using a Scale-Out File Server in front of a SAN
Figure 4.15
Using a Scale-Out File Server and a clustered storage space
Figure 4.16
A virtual machine using SMB for its storage
Figure 4.17
Selecting the options for the new iSCSI VHDX target
Figure 4.18
Connecting to a new iSCSI target using the built-in iSCSI Initiator
Figure 4.19
Using virtual Fibre Channel with Hyper-V
Figure 4.20
Problem with the ports that will block using in a virtual SAN
Figure 4.21
Enabling NPIV using the OneCommand Manager tool
Figure 4.22
A virtual SAN using one of the available HBA ports
Figure 4.23
A virtual Fibre Channel adapter for a virtual machine
Figure 4.24
The A set of WWPNs being used
Figure 4.25
The B set of WWPNs being used
Figure 4.26
A view of a single disk without MPIO
Figure 4.27
A view of a single disk with MPIO
Figure 4.28
Setting a VHDX file as shared
Figure 4.29
VHD Set files on disk
Figure 4.30
Creating a VHD Set
Figure 4.31
Adding a VHD Set to a VM
Figure 4.32
Using differencing disks in a VDI environment
Figure 4.33
Configuring QoS for a disk
Figure 4.34
A view of storage managed by SCVMM 2012 R2
Chapter 5
Figure 5.1
Configuration levels available in Windows Server 2012 R2
Figure 5.2
Nano Server Recovery Console
Figure 5.3
Windows Server 2016 installation choices
Figure 5.4
Windows Server 2016 configuration levels
Figure 5.5
Adding the Hyper-V Management Tools to Windows 10
Figure 5.6
Using Server Management Tools with on-premises OS instances
Figure 5.7
Gateway deployment guidance for Server Management Tools
Figure 5.8
Server Management Tools instance in Azure with tools available
Figure 5.9
Local management tools are not wanted on a Hyper-V server that should be at the Server Core configuration level.
Figure 5.10
Selecting the protocol to be used for the new server to be provisioned
Figure 5.11
Selecting to install only the VMM console on a client operating system
Figure 5.12
All key Hyper-V management environments running on a Windows 10 client
Figure 5.13
The Hyper-V Manager interface
Figure 5.14
Specifying alternate credentials to manage a remote Hyper-V server
Figure 5.15
A virtual machine running at 100 percent processor utilization showing only 3 percent usage of a 24-core Hyper-V host
Figure 5.16
Detail tabs for a virtual machine
Figure 5.17
Changing the keyboard behavior when the keyboard is connected to a virtual machine
Figure 5.18
Configuring actions for a specific new user role
Figure 5.19
Viewing the PowerShell used by SCVMM
Figure 5.20
Selecting the method to install the operating system into the virtual machine
Figure 5.21
Manually launching
vmconnect.exe
allows you to select the host and virtual machine.
Figure 5.22
The connection dialog box when connecting using Enhanced Session Mode
Figure 5.23
Conditional forwarder for HGS DNS zone
Figure 5.24
Properties for a shielded VM
Figure 5.25
Console access and PowerShell Direct blocked for shielded VM
Figure 5.26
The full detail of a template creation using SCVMM
Figure 5.27
Modifying a template within SCVMM
Figure 5.28
Selecting a template as the source for a new virtual machine
Figure 5.29
Setting a virtual machine to be highly available and therefore requiring deployment to a cluster
Figure 5.30
The ratings for possible hosts
Figure 5.31
A complete SCVMM VM deployment from a template
Figure 5.32
Registry within a virtual machine showing information about the host
Figure 5.33
Windows Server 2012 R2 to Windows Server 2016 cluster rolling upgrade
Figure 5.34
Continued Windows Server 2012 R2 to Windows Server 2016 cluster rolling upgrade
Chapter 6
Figure 6.1
Adding a WSUS server to SCVMM
Figure 6.2
Viewing the compliance details for a noncompliant node
Figure 6.3
Cluster maintenance configuration in Configuration Manager
Figure 6.4
Example view of protection using DPM
Figure 6.5
Checkpoint configuration for a VM
Figure 6.6
A VM with two checkpoints
Figure 6.7
Example of a checkpoint life cycle
Figure 6.8
Update sequence number problems when applying a snapshot to a domain controller.
Figure 6.9
The default tiering options for a new service template. You’ll see that a three-tier application is also available if you scroll down.
Figure 6.10
The Service Designer
Figure 6.11
Only 64 processors are visible on the Hyper-V host of an 80-processor system.
Figure 6.12
A nice view of the key resources for my Hyper-V host using the report display output type
Figure 6.13
Viewing resource pools in Hyper-V Manager
Figure 6.14
Operations Manager view of virtual machines
Chapter 7
Figure 7.1
The components of a failover cluster
Figure 7.2
Quorum in a failover cluster
Figure 7.3
Viewing the block blobs used in an Azure storage account for the cloud witness
Figure 7.4
Dynamic quorum in action
Figure 7.5
Changing the votes for nodes in a cluster
Figure 7.6
Viewing the current voting state of a cluster
Figure 7.7
Two remaining nodes in a cluster
Figure 7.8
Force Quorum resiliency in action
Figure 7.9
Service retry actions
Figure 7.10
Enabling monitoring of a service
Figure 7.11
Configuring a protected network on a virtual machine network adapter
Figure 7.12
Cluster operations settings in Configuration Manager 2016
Figure 7.13
Setting affinity by using SCVMM
Figure 7.14
Guest cluster running within a Hyper-V host cluster
Figure 7.15
Binding for network adapters used for cluster communications
Figure 7.16
Disabling NetBIOS for the IPv4 protocol
Figure 7.17
Setting the network adapter binding order
Figure 7.18
Cluster network properties
Figure 7.19
Cluster network properties
Figure 7.20
Cluster network properties
Figure 7.21
The empty Failover Cluster Manager interface
Figure 7.22
Cluster tests available
Figure 7.23
Cluster validation in progress
Figure 7.24
Shared volumes
Figure 7.25
Viewing the networking available for a cluster
Figure 7.26
Making a cluster disk a CSV
Figure 7.27
Viewing cluster shared volumes in Explorer
Figure 7.28
Cluster Shared Volume normal operation
Figure 7.29
Cluster Shared Volume in redirected mode
Figure 7.30
Creating a new clustered virtual machine using Failover Cluster Manager
Figure 7.31
Selecting the virtual machines to be made clustered resources
Figure 7.32
Setting the high availability option for a virtual machine
Figure 7.33
The complete Live Migration process
Figure 7.34
Setting the Live Migration network for a cluster
Figure 7.35
Enabling Live Migration for a stand-alone Hyper-V host
Figure 7.36
The different storage objects for a virtual machine
Figure 7.37
The storage objects for a virtual machine
Figure 7.38
Setting the advanced configurations for Live Migration
Figure 7.39
Dynamic Optimization options for a host group
Figure 7.40
Power Optimization options for a host group
Figure 7.41
Setting a placement rule for a host group
Figure 7.42
Configuring node fairness using Failover Cluster Manager
Chapter 8
Figure 8.1
Enabling inbound replication for a Hyper-V server
Figure 8.2
Recovery-point configuration
Figure 8.3
Configuring an alternate IP configuration to be used during failover
Figure 8.4
Windows Server 2012 R2 Hyper-V extended replication
Figure 8.5
Enabling inbound replication for the Hyper-V Replica Broker role
Figure 8.6
Viewing the health of replication
Figure 8.7
Selecting the point in time for the test failover
Figure 8.8
Performing a planned failover
Figure 8.9
Selecting the VHDs to use for the planner
Figure 8.10
Example of the capacity planner tool in action
Figure 8.11
ASR architectural overview for Hyper-V to Hyper-V replication
Figure 8.12
ASR architectural overview for replication from Hyper-V to Azure
Figure 8.13
View of Azure storage account containing Hyper-V Replica target VM
Figure 8.14
Creating a new Recovery Services vault
Figure 8.15
Getting started with replication to Azure
Chapter 9
Figure 9.1
Traditional process for requesting virtual machines that is hands-on for the administrator
Figure 9.2
Provisioning process when using private cloud
Figure 9.3
All elements of the SCVMM console change based on the current workspace and selected element of the workspace.
Figure 9.4
On the left is the view for a normal SCVMM administrator, while on the right is the view for a Replicated Cloud tenant administrator.
Figure 9.5
Specifying the library server for a specific host group
Figure 9.6
Attaching an ISO by using SCVMM from the library
Figure 9.7
Selecting the host group that is available for utilization by the cloud
Figure 9.8
Selecting the logical networks available to the cloud
Figure 9.9
Selecting the storage classifications available to the cloud
Figure 9.10
Configuring the capacity for the cloud
Figure 9.11
Custom capability profile
Figure 9.12
Setting the quotas for a specific tenant
Figure 9.13
A basic Orchestrator runbook
Figure 9.14
Service catalog view in Service Manager of request offerings that call Orchestrator runbooks
Figure 9.15
Creating a new VM by using Windows Azure Pack's web interface
Figure 9.16
A view of a distributed service and its various services visible through Operations Manager
Figure 9.17
The Fabric Health dashboard for a SCVMM cloud
Figure 9.18
The core VMs used by Azure Stack in a single-box deployment with TP1 at top and TP2 at bottom
Figure 9.19
The Azure Stack portal experience
Chapter 10
Figure 10.1
Traditional virtualization-hosting applications vs. applications running in containers
Figure 10.2
Windows Server containers vs. Hyper-V containers
Figure 10.3
Windows Server 2016 container architecture with Docker
Figure 10.4
Container networking with NAT mode
Figure 10.5
Container networking with Transparent mode
Figure 10.6
Container layers
Figure 10.7
Two options for updating images
Chapter 11
Figure 11.1
Session virtualization using Remote Desktop Session Host
Figure 11.2
VDI solution in action
Figure 11.3
The full VDI implementation has many components to give a rich capability set while being invisible to the end user.
Figure 11.4
Adding a new connection
Figure 11.5
How RD Gateway works
Figure 11.6
Providing the complete user experience
Figure 11.7
User profile disk configuration options
Figure 11.8
Selecting the virtual machine to be the reference image for the VDI collection
Figure 11.9
Configuring the options for the VDI VM instances
Figure 11.10
The deployed VDI collection
Figure 11.11
The deployed VDI collection filesystem content for the virtual hard disks
Figure 11.12
Seeing the VDI collection in RD Web Access
Figure 11.13
A RemoteFX vGPU-enabled virtual machine
Figure 11.14
Enabling a GPU for use with RemoteFX
Figure 11.15
RemoteFX 3D video adapter options for a virtual machine
Figure 11.16
Showing the supported version of RDP
Figure 11.17
A view of published applications on an iOS device using the Microsoft client
Figure 11.18
MultiPoint Services RDS deployment type
Figure 11.19
Session-based virtualization and VDI high-level overview
Chapter 12
Figure 12.1
The key types of public cloud services
Figure 12.2
The key types of highly variable workloads that are a great fit for consumption-based pricing
Figure 12.3
The four main building blocks of the Microsoft Azure platform
Figure 12.4
Basic credit status of your Microsoft Azure account
Figure 12.5
A connection to my Minecraft server running in Microsoft Azure
Figure 12.7
Disk view within a Microsoft Azure IaaS virtual machine
Figure 12.8
Sample of the Microsoft Azure pricing calculator
Figure 12.9
Viewing the recently completed and currently running operations in Microsoft Azure
Figure 12.10
Properties of a new availability set
Figure 12.11
Viewing the fault domain and update domains for an availability set
Figure 12.12
Interacting with Azure Storage by using Microsoft Azure Storage Explorer
Figure 12.13
Options for a new data disk attached to a virtual machine
Figure 12.14
Typical organizational data volume over time
Figure 12.15
Connectivity when using virtual networks
Figure 12.16
Viewing available IP addresses within a virtual subnet
Cover
Table of Contents
Chapter
v
vii
xix
xx
xxi
xxii
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
217
318
319
320
321
322
323
324
325
326
327
328
329
330
331
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
The book you are holding is the result of 20 years of experience in the IT world and over 15 years of virtualization experience that started with VMware and includes Virtual PC and now Hyper‐V. My goal for this book is simple: to help you become knowledgeable and effective when it comes to architecting and managing a Hyper‐V‐based virtual environment. This means not only understanding how Hyper‐V works and its capabilities, but also knowing when to leverage other technologies to provide the most complete and optimal solution. That means leveraging System Center and Microsoft Azure, which I also cover because they relate to Hyper‐V. I also dive into some key technologies of Windows Server that bring benefits to Hyper‐V.
Hyper‐V is now a mature and widely adopted virtualization solution. It is one of only two x86 server virtualization solutions in Gartner’s leader quadrant. In addition to being used by many of the largest companies in the world, Hyper‐V powers Microsoft Azure, which is one of the largest cloud services in the world.
Hyper‐V is a role of Windows Server. If you are a Windows administrator, you will find Hyper‐V management fairly intuitive, but there are still many key areas that require attention. I have structured this book to cover the key principles of virtualization and the resources that you will manage with Hyper‐V before I cover installing and configuring Hyper‐V itself and then move on to advanced topics such as high availability, replication, private cloud, and more.
I am a strong believer in learning by doing, and therefore I highly encourage you to try out all of the technologies and principles I cover in this book. You don’t need a huge lab environment. For most topics, you could use a single machine with Windows Server installed and 8GB of memory to enable a few virtual machines to run concurrently. Ideally, though, having at least two servers will help with the replication and high‐availability concepts. In this book, sometimes you’ll see step‐by‐step instructions to guide you through a process, sometimes I link to an external source that already has a good step‐by‐step guide, and sometimes I link to videos that I have posted to ensure maximum understanding. With Windows 10, Hyper‐V is included in the box, so even without any kind of server, it is possible to explore many of the Hyper‐V technologies.
I have created an application that is available for various platforms: Mastering Hyper‐V 2016. It provides easy access to the external links, videos, and code samples that I use in this book. As you read each chapter, check out the application to find related content. The application can be downloaded from www.savilltech.com/mhv. Using the various platform stores also allows me to update it over time as required. Please get this application, as I will use it to add videos based on reader feedback that are not referenced in the main text and include additional information where required.
I am making certain assumptions regarding the reader:
You have basic Windows Server knowledge and can install Windows Server.
You have basic knowledge of PowerShell.
You have access to a Hyper‐V server to enable a test implementation of the many covered technologies.
This book is intended for anyone who wants to learn Hyper‐V. If you have a basic knowledge of virtualization or a competing technology, such as VMware, that will help, but it is not a requirement. I start off with a foundational understanding of each technology and then build on that to cover more‐advanced topics and configurations. If you are an architect, a consultant, an administrator, or really anyone who just wants better knowledge of Hyper‐V, this book is for you.
At times I go into advanced topics that may seem over your head. In those cases, don’t worry. Focus on the preceding elements that you understand, and implement and test them to solidify your understanding. Then, when you feel comfortable, come back to the more advanced topics. They will seem far simpler once your understanding of the foundational principles is solidified.
Here is a glance at what’s in each chapter:
Chapter 1: Introduction to Virtualization and Microsoft Solutions This chapter focuses on the core value proposition of virtualization and how the datacenter has evolved. It covers the key changes and capabilities of Hyper‐V in addition to the role System Center plays in a Hyper‐V environment. I cover the types of cloud services available and how Hyper‐V forms the foundation of private cloud solutions.
Chapter 2: Virtual Machine Resource Fundamentals This chapter covers the core resources of a virtual machine, specifically architecture (generation 1 and generation 2 virtual machines), processor, and memory. You will learn about advanced configurations to enable many types of operating system support along with best practices for resource planning.
Chapter 3: Virtual Networking This chapter covers one of the most complicated aspects of virtualization, especially when using the new network virtualization capabilities in Hyper‐V. This chapter covers the key networking concepts, how to architect virtual networks, and how to configure them. I also cover networking using System Center Virtual Machine Manager (SCVMM) and how to design and implement network virtualization v2 that is introduced in Windows Server 2016.
Chapter 4: Storage Configurations This chapter covers the storage options for Hyper‐V environments, including the VHD and VHDX formats, plus capabilities in Windows Server 2016 that help manage direct attached storage, including Storage Spaces Direct and Storage Replica. You will learn about storage technologies for virtual machines such as iSCSI, Virtual Fibre Channel, and shared VHDX; their relative advantages; as well as the storage migration and resize functions.
Chapter 5: Managing Hyper‐V This chapter walks you through the installation of and best practices for managing Hyper‐V. The basics of configuring virtual machines, installing operating systems, and using the Hyper‐V Integration Services are all covered. Strategies for migrating from other hypervisors, physical servers, and other versions of Hyper‐V are explored.
Chapter 6: Maintaining a Hyper‐V Environment This chapter focuses on the tasks required to keep Hyper‐V healthy after you’ve installed it, which includes patching, malware protection, backup, and monitoring. Key actions, such as taking checkpoints of virtual machines, setting up service templates, and performance tuning are covered.
Chapter 7: Failover Clustering and Migration Technologies This chapter covers making Hyper‐V highly available by using Failover Clustering, and it includes a deep dive into exactly what makes a cluster tick, specifically when running Hyper‐V. Key migration technologies such as Live Migration, Shared Nothing Live Migration, and Storage Migration are explored in addition to configurations related to mobility outside a cluster and placement optimization for virtual machines.
Chapter 8: Hyper‐V Replica and Cloud Orchestration This chapter shifts from high availability to a requirement of many organizations today: providing disaster‐recovery protection in the event of losing an entire site. This chapter looks at the options for disaster recovery, including leveraging Hyper‐V Replica, orchestrating failovers with Microsoft Azure in the event of a disaster, and using Azure as the DR target location.
Chapter 9: Implementing the Private Cloud, SCVMM, and Microsoft Azure Stack This chapter shows the many benefits of the Microsoft stack to organizations, beyond just virtualization. This chapter explores the key benefits of a private cloud and describes what a private cloud using Microsoft technologies looks like. Key components and functional areas, including the actual end‐user experience and how you can leverage all of System Center for different levels of private cloud capability, are all covered. The Microsoft Azure Stack solution is introduced and its key capabilities explored.
Chapter 10: Containers and Docker This chapter focuses on the new Windows and Hyper‐V container technologies available in Windows Server 2016. This chapter dives into the architectural components and management with Docker.
Chapter 11: Remote Desktop Services This chapter shifts the focus to another type of virtualization, virtualizing the end‐user experience, which is a critical capability for most organizations. Virtual desktop infrastructure is becoming a bigger component of the user environment. This chapter looks at the types of desktop virtualization available with Remote Desktop Services, with a focus on capabilities that are enabled by Hyper‐V, such as advanced graphical capabilities with RemoteFX.
Chapter 12: Microsoft Azure IaaS, Storage, and Networking This chapter explores the capabilities of one of the biggest public cloud services in the world, which is powered by Hyper‐V. This chapter covers the fundamentals of Microsoft Azure and how to create virtual machines in Microsoft Azure. The chapter also covers the networking options available both within Microsoft Azure and to connect to your on‐premises network. I examine the migration of virtual machines and how to leverage Azure Storage. Ways to provide a seamless management experience are also explored.
Chapter 13: Bringing It All Together with a Best‐of‐Breed Cloud Solution This chapter brings together all of the technologies and options to help architect a best‐of‐breed virtualization and cloud solution.
Don’t forget to download the companion Windows Store application, Mastering Hyper‐V, from www.savilltech.com/mhv.
The Mastering series from Sybex provides outstanding instruction for readers with intermediate and advanced skills in the form of top‐notch training and development for those already working in their field and clear, serious education for those aspiring to become pros. Every Mastering book includes the following elements:
Skill‐based instruction, with chapters organized around real tasks rather than abstract concepts or subjects
Self‐review test questions, so you can be certain that you’re equipped to do the job right
I welcome feedback from you about this book or about books you’d like to see from me in the future. You can reach me by writing to [email protected]. For more information about my work, visit my website at www.savilltech.com and follow me on Twitter at @NTFAQGuy.
Sybex strives to keep you supplied with the latest tools and information that you need for your work. Please check the Sybex website at www.sybex.com/go/masteringhyperv2016, where we’ll post additional content and updates that supplement this book should the need arise.
This chapter lays the foundation for the core fabric concepts and technologies discussed throughout not just this first part of this book, but the entire book. Virtualization has radically changed the layout and operation of the datacenter, and this datacenter evolution and its benefits are explored.
Microsoft’s solution for virtualization is its Hyper-V technology, which is a core part of Windows Server, and it is also available in the form of a free, stand-alone hypervisor. The virtualization layer is only part of the solution. Management is just as critical, and in today’s world, the public cloud is also a consideration. Thus a seamless management story with compatibility between your on- and off-premises resources provides the model implementation.
In this chapter, you will learn to:
Articulate the key value propositions of virtualization.
Understand the differences in functionality between the various versions of Hyper-V.
Differentiate between the types of cloud services and when each type is best utilized.
Many books are available that go into a great amount of detail about the history of datacenters, but that is not the goal of the following sections. Instead, I am going to take you through the key changes that I have seen in my 20 years of working in and consulting about datacenter infrastructure. This brief look at the evolution of datacenters will help you understand the challenges of the past, why virtualization has become such a key component of every modern datacenter, and why there is still room for improvement.
As recent as 10 years ago, datacenters were all architected in a similar way. These huge rooms with very expensive cabling and air conditioning were home to hundreds, if not thousands, of servers. Some of these servers were mainframes, but the majority were regular servers (although today the difference between a mainframe and a powerful regular server is blurring). Although the processor architecture running in these servers may have been different—for example, some were x86 based, some Alpha, some MIPS, some SPARC—each server ran an operating system (OS) such as Windows, Linux, or OpenVMS. Some OSs supported different processor architectures, while others were limited to a specific architecture. Likewise, some processor architectures would dictate which OS had to be used. The servers themselves may have been freestanding, but as technology advanced, servers got smaller and became rack mountable, enabling greater compression of the datacenter.
Often, the term x86 is used when talking about processor architecture, but its use has been generalized beyond just the original Intel processors that built on the 8086. x86 does not refer only to Intel processors, but it is used more generally to refer to 32-bit operating systems running on any processor leveraging x86 instruction sets, including processors from AMD. x64 represents a 64-bit instruction set extension processor (primarily from Intel and AMD), although you may also see amd64 to denote 64-bit. What can be confusing is that a 64-bit processor is still technically x86, and it has become more common today simply to use x86 to identify anything based on x86 architecture, which could be 32-bit or 64-bit from other types of processor architecture. Therefore, if you see x86 within this book, or in other media, it does not mean 32-bit only.
Even with all this variation in types of server and operating systems, there was something they had in common. Each server ran a single OS, and that OS interacted directly with the hardware in the server and had to use hardware-specific drivers to utilize the available capabilities. In the rest of this book, I focus primarily on x86 Windows; however, many of the challenges and solutions apply to other OSs as well.
Every server comprises a number of resources, including processor, memory, network, and storage (although some modern servers do not have local storage such as blade systems, and instead rely completely on external storage subsystems). The amount of each resource can vary drastically, as shown in the following sections.
A server can have one or more processors, and it’s common to see servers with two, four, or eight processors (although it is certainly possible to have servers with more). Modern processors use a core architecture that allows a single processor to have multiple cores. Each core consists of a discrete central processing unit (CPU) and L1 cache (very fast memory used for temporary storage of information related to computations) able to perform its own computations. Those multiple cores can then share a common L2 cache (bigger but not as fast as L1) and bus interface. This allows a single physical processor to perform multiple parallel computations and actually act like many separate processors. The first multicore processors had two cores (dual-core), and this continues to increase with eight-core (octo-core) processors available and a new “many-core” generation on the horizon, which will have tens of processor cores. It is common to see a physical processor referred to as a socket, and each processor core referred to as a logical processor. For example, a dual-socket system with quad-core processors would have eight logical processors (four on each physical processor, and there are two processors). In addition to the number of sockets and cores, variations exist in the speed of the processors and the exact instruction sets supported. (It is because of limitations in the continued increase of clock speed that moving to multicore became the best way to improve overall computational performance, especially as modern operating systems are multithreaded and can take advantage of parallel computation.) Some processors also support hyperthreading, which is a means to split certain parts of a processor core into two parallel computational streams to avoid wasted processing. Hyperthreading does not double computational capability, but it generally gives a 10 to 15 percent performance boost. Typically with hyperthreading, this would therefore double the number of logical processors in a system. However, for virtualization, I prefer not to do this doubling, but this does not mean that I turn off hyperthreading. Hyperthreading may sometimes help, but it certainly won’t hurt.
Hyperthreading enables two streams of execution on a single processor core, and you often hear numbers such as a 15 percent performance improvement. This leads to the belief that there is the main thread on the core and then a little “mini-me” thread that has a smaller capability. This is not true. With hyperthreading, a single core has some components duplicated, enabling two sets of logical state per core. Typically, during a thread of execution, the core is not fully utilized for various reasons, such as when a particular instruction stream uses only specific types of ALU (Arithmetic Logic Unit), leaving others unused, and more commonly when a cache miss occurs that causes the thread execution to stall while data is fetched. With hyperthreading and the two sets of logical state, if one thread is stalled because of a cache miss, the chances are good that the other thread can execute. This, therefore, keeps the core better utilized and improves the overall performance, and this is where the 15 percent performance gain comes from. Notice that both threads are equal and which one does more work just depends on how busy they are kept, the type of computations, the frequency of cache misses, and so on.
Earlier versions of Windows supported different processor architectures, including MIPS, Alpha, PowerPC, and more recently Itanium. However, as of Windows Server 2012, the only supported processor architecture is x86 and specifically only 64-bit from Windows Server 2008 R2 and above. (There are still 32-bit versions of the Windows 8/8.1 client operating system.)
Prior to Windows Server 2008, there were separate versions of the hardware abstraction layer (HAL), depending on whether you had a uniprocessor or multiprocessor system. However, given the negligible performance savings on modern, faster processors that were specific to the uniprocessor HAL on single-processor systems (synchronization code for multiple processors was not present in the uniprocessor HAL), this was removed, enabling a single unified HAL that eases some of the pain caused by moving from uni- to multiprocessor systems.
The memory resource is generally far simpler, with fewer variations. Some memory supports error-correcting code (ECC), which provides resiliency against the most common types of internal corruption, and memory has different speeds. However, for most environments, the memory consideration is simply how much there is! Generally, the more memory, the better, and with only 64-bit versions of Windows Server, there are no longer considerations around the maximum amount of memory that can be used by an operating system (a 4GB limit exists for 32-bit operating systems).
Storage falls into one of two buckets: internal or external. If the storage is internal (direct-attached storage, or DAS), the disks are local to the server and attached via a technology such as SCSI, SATA, or SAS. (Even if the storage is in an external storage enclosure but is connected via one of these means, it is still considered direct-attached.) Alternatively, the storage is external, such as storage that is hosted on another server or on a storage area network (SAN) or on network-attached storage (NAS). Various protocols may be used for external storage access that offer either file-level or block-level access to the storage.
File-level access enables the requesting server to access files on the server, but this is offered over a protocol that hides the underlying filesystem and actual blocks of the file on disk. Examples of file-level protocols are Server Message Block (SMB) and Network File System (NFS), typically offered by NAS devices.
Block-level access enables the requesting server to see the blocks on the disk and effectively mount the disk, format the mounted disk with a filesystem, and then directly manipulate blocks on the disk. Block-level access is typically offered by SANs using protocols such as iSCSI (which leverages the TCP/IP network) and Fibre Channel (which requires dedicated hardware and cabling). Typically, block-level protocols have offered higher performance, and the SANs providing the block-level storage offer advanced features, which means that SANs are typically preferred over NAS devices for enterprise storage. However, there is a big price difference between a SAN and potentially the dedicated storage hardware and cabling (referred to as storage fabric), and an SMB device that leverages the existing IP network connectivity.
The line between types of storage is also blurring greatly, especially with modern hyperconverged systems that contain both compute and the storage for workloads. Windows Server 2016 includes Storage Spaces Direct (S2D), which enables direct-attached storage in cluster nodes to be aggregated together and utilized as cluster storage. This is commonly referred to as a VSAN technology in the industry. When combined with other Windows Server storage features, using direct-attached storage no longer means compromising features and performance.