NFS High Availability in Windows Roopesh Battepati Microsoft Corporation



Similar documents
NFSv4.1 Server Protocol Compliance, Security, Performance and Scalability Testing - Implement RFC, Going Beyond POSIX Interop!

OPAS Prerequisites. Prepared By: This document contains the prerequisites and requirements for setting up OPAS.

6WRUP:DWFK. Policies for Dedicated SQL Servers Group

Developing Microsoft Azure Solutions 20532B; 5 Days, Instructor-led

70-414: Implementing a Cloud Based Infrastructure. Course Overview

What s new in Hyper-V 2012 R2

Choices for implementing SMB 3 on non Windows Servers Dilip Naik HvNAS Pty Ltd Australians good at NAS protocols!

Cloud Optimize Your IT

Windows clustering glossary

Feature Comparison. Windows Server 2008 R2 Hyper-V and Windows Server 2012 Hyper-V

SQL Server AlwaysOn. Michal Tinthofer 11. Praha What to avoid and how to optimize, deploy and operate.

What s New with VMware Virtual Infrastructure

Deploying Remote Desktop Connection Broker with High Availability Step-by-Step Guide

Virtualization across the organization

Network Attached Storage. Jinfeng Yang Oct/19/2015

6WRUP:DWFK. Policies for Dedicated IIS Web Servers Group. V2.1 policy module to restrict ALL network access

Windows Server 2008 R2 Hyper-V Server and Windows Server 8 Beta Hyper-V

SNMP Informant. SNMP Informant, the default Microsoft SNMP extension agents and WMI January 2009

Stretching A Wolfpack Cluster Of Servers For Disaster Tolerance. Dick Wilkins Program Manager Hewlett-Packard Co. Redmond, WA dick_wilkins@hp.

Cluster Guide. Version: 9.0 Released: March Companion Guides:

Windows Server 2008 R2 Hyper-V Live Migration

CALLING THE WITNESS: SMB3 Failover with Samba/CTDB

Quantum Hyper- V plugin

Clustering ExtremeZ-IP 4.1

Index C, D. Background Intelligent Transfer Service (BITS), 174, 191

EMC VNX Series: Introduction to SMB 3.0 Support

In addition to their professional experience, students who attend this training should have technical knowledge in the following areas.

IBM Tivoli Storage Manager for Virtual Environments Version Data Protection for Microsoft Hyper-V Installation and User's Guide IBM

Microsoft SQL Database Administrator Certification

Windows Server 2012 R2 Hyper-V: Designing for the Real World

Cloud Optimize Your IT

Active Directory Domain Controller Location Service. Anthony Liguori IBM Linux Technology Center

Introducing. Markus Erlacher Technical Solution Professional Microsoft Switzerland

Cluster Guide. Released: February Companion Guides:

Implementing and Managing Microsoft Server Virtualization

Windows Server 2012 授 權 說 明

Unified Storage for the Private Cloud Dennis Chapman NetApp

Module 11. Configuring and Managing Distributed File System. Contents:

How to Backup and Restore a VM using Veeam

IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Hyper-V Server Agent Version Fix Pack 2.

Chapter 14 Virtual Machines

How To Live Migrate In Hyperv On Windows Server 22 (Windows) (Windows V) (Hyperv) (Powerpoint) (For A Hyperv Virtual Machine) (Virtual Machine) And (Hyper V) Vhd (Virtual Hard Disk

70-417: Upgrading Your Skills to MCSA Windows Server 2012

Configuring Windows Server Clusters

Outline SSS Microsoft Windows Server 2008 Hyper-V Virtualization

Statement of Support on Shared File System Support for Informatica PowerCenter High Availability Service Failover and Session Recovery

Microsoft SharePoint 2010 on VMware Availability and Recovery Options. Microsoft SharePoint 2010 on VMware Availability and Recovery Options

Windows8 Internals, Sixth Edition, Part 1

Solution Brief Availability and Recovery Options: Microsoft Exchange Solutions on VMware

Enterprise Storage Solution for Hyper-V Private Cloud and VDI Deployments using Sanbolic s Melio Cloud Software Suite April 2011

Quorum DR Report. Top 4 Types of Disasters: 55% Hardware Failure 22% Human Error 18% Software Failure 5% Natural Disasters

Course 20532B: Developing Microsoft Azure Solutions

NFS Ganesha and Clustered NAS on Distributed Storage System, GlusterFS. Soumya Koduri Meghana Madhusudhan Red Hat

High Availability with Windows Server 2012 Release Candidate

Microsoft. Jump Start. M11: Implementing Active Directory Domain Services

Allan Hirt Cluster MVP e mail: allan@sqlha.com Website: Blog: Twitter: SQLHA

Acluster is a collection of computer nodes

Caching SMB Data for Offline Access and an Improved Online Experience

Introduction CORBA Distributed COM. Sections 9.1 & 9.2. Corba & DCOM. John P. Daigle. Department of Computer Science Georgia State University

Leveraging Virtualization in Data Centers

Installing and Configuring a SQL Server 2014 Multi-Subnet Cluster on Windows Server 2012 R2

VIRTUALIZATION 101. Brainstorm Conference 2013 PRESENTER INTRODUCTIONS

MS 20465C: Designing a Data Solution with Microsoft SQL Server

vsphere Upgrade Update 1 ESXi 6.0 vcenter Server 6.0 EN

Develop a process for applying updates to systems, including verifying properties of the update. Create File Systems

Dejan Foro

Windows Server 2008 R2 Hyper-V Live Migration

How To Manage Ip Address Management In Windows Server 2012 (Gipam)

Installation Guide. . All right reserved. For more information about Specops Deploy and other Specops products, visit

The functionality and advantages of a high-availability file server system

Drobo How-To Guide. Topics. What You Will Need. Prerequisites. Deploy Drobo B1200i with Microsoft Hyper-V Clustering

Implementing and Managing Windows Server 2008 Hyper-V

Windows 2000 Security Architecture. Peter Brundrett Program Manager Windows 2000 Security Microsoft Corporation

SMB Advanced Networking for Fault Tolerance and Performance. Jose Barreto Principal Program Managers Microsoft Corporation

Configuring Security Features of Session Recording

FioranoMQ 9. High Availability Guide

EXAM Installing and Configuring Windows Server Buy Full Product.

Growing your business through small business opportunities.

SnapManager 1.0 for Virtual Infrastructure Best Practices

Application Discovery Manager User s Guide vcenter Application Discovery Manager 6.2.1

Oracle Databases on VMware High Availability

Configure AlwaysOn Failover Cluster Instances (SQL Server) using InfoSphere Data Replication Change Data Capture (CDC) on Windows Server 2012

GoGrid Implement.com Configuring a SQL Server 2012 AlwaysOn Cluster

User Guide for VMware Adapter for SAP LVM VERSION 1.2

Buffalo Technology: Migrating your data to Windows Storage Server 2012 R2

Windows Server 2012 Hyper-V Installation and Configuration Guide

Introduction to Hyper-V High- Availability with Failover Clustering

Table of Contents Introduction and System Requirements 9 Installing VMware Server 35

RSA Authentication Manager 8.1 Virtual Appliance Getting Started

EMC ISILON AND ELEMENTAL SERVER

WINDOWS 2000 Training Division, NIC

Hyper-V over SMB: Remote File Storage Support in Windows Server 2012 Hyper-V. Jose Barreto Principal Program Manager Microsoft Corporation

Symantec Storage Foundation High Availability for Windows

Open Source, Scale-out clustered NAS using nfs-ganesha and GlusterFS

Setup for Failover Clustering and Microsoft Cluster Service

Virtualizing your Datacenter

Chapter 1 - Web Server Management and Cluster Topology

Analysis to develop an ISCSI Layer inside Microsoft Windows NT/2K/XP

SnapManager 7.0 for Microsoft Exchange Server

DR-to-the- Cloud Best Practices

Transcription:

NFS High Availability in Windows Roopesh Battepati Microsoft Corporation

Agenda Windows NFS Server Architecture Overview NFS Cluster Resource Architecture Overview of Windows FC Resource Model Windows NFS Resource DLL Overview NFS Virtual Server Architecture for HA NFS v4.1 Server progress 2

High Availability Availability = Uptime/(Downtime+Uptime) Decrease downtime for high availability Faster failover = Higher availability How to make an application highly available in Windows Servers Make application reboot-recoverable Tell cluster about application Create an application resource DLL Cluster maintains configuration of resources Monitor health of resources & moves resources if necessary 3

Windows NFS Server Flat file store AD LDAP store Failover Cluster NFS Win32 Service NFS Resource DLL NFS CIM Provider NFS Powershell Cmdlets NFS Admin CL NFS Admin UI User Mode Kernel Mode IO Manager Filter Manager Callbacks NFS Server NFS Filter RPC XDR PORT MAP Winsock Kernel Kernel Security Subsystem NFS v2/v3/v4.1 NLM NSM MOUNT UNMP NIS NTFS Storage Stack 4

NFS Server High Availability Windows Failover Cluster Resource Groups User mode Kernel mode Group of Virtual NFS Servers Network name NFS Namespace Cluster disk

Overview of Windows Failover Cluster Resource Model 6

Windows Failover Cluster Cluster Service ClusAPI.dll Shared Volumes Manager Replicated Store Resource Control Manager Quorum RHS Resources Hosting, Health Monitoring App Resource NetName Resource Registry IP Address Resource Network Topology Group Communication Membership Physical Disk Resource User Mode NetFT.sys CsvFilter.sys ClusDisk.sys Kernel 7

Resource Represents an entity hosted by the cluster Could be process, service, script, disk, IP address, file server, VM, etc. State machine Online on at most one node at a time State transitions implemented in resource DLL Implemented by application developer according to application semantics Uses cluster APIs to interact with cluster, appspecific APIs to interact with the managed entity Cluster invokes resource DLL via published resource API 8

RHS Resources == Applications Resource code is untrusted code Isolated process per application Optional multiple resources in same RHS Loose coupling Created and maintained by RCM Communication with RCM via RPC 9

Failover Cluster Resource Model 10

Resource Group Resource group is a collection of resources and their dependencies AND (&) dependency OR ( ) dependency 11

Resource States RCM maintains following 5 states for a resource: Online The resource is fully functional Offline The resource has been gracefully made non-functional Failed The resource has failed and is non-functional Online Pending The resource is in the process of coming online Offline Pending The resource is in the process of going offline 12

Resource Group States RCM maintains 4 states for a resource group: Online All resources in the group are online Offline All resources in the group are offline Partial Online Some resources in the group are in an online state and some are in an offline state but none of the resources are in a failed state Failed One or more resources in the group are in a failed state 13

RCM Actions on Resources Move Causes a resource group to be hosted on another node in the cluster when initiated by an operator Failover Causes a Resource Group to move to another node in the cluster due to a failure of a Resource (or multiple Resources) in the Resource Group Failback Causes the Resource Group to move back to the original node in the cluster from which Failover was successfully performed, once the failure condition on original node has been remidied 14

Failover Cluster Resource DLL State transitions implemented in resource DLL Cluster invokes resource DLL via published resource API Open/Close: initialization/cleanup Online: start the resource Offline: stop the resource Terminate: stop the resource immediately IsAlive/LooksAlive: health check Control: like an ioctl, extensible mechanism for configuration and app-specific operations 15

Startup & Function Table Exchange DWORD WINAPI Startup( IN LPCWSTR IN DWORD IN DWORD ResourceType, MinVersionSupported, MaxVersionSupported, IN PCLRES_CALLBACK_FUNCTION_TABLE CallbackFunctions, OUT PCLRES_FUNCTION_TABLE *ResDllFunctions); 16

Startup & Function Table Exchange CLRES_FUNCTION_TABLE { POPEN_ROUTINE PCLOSE_ROUTINE PONLINE_ROUTINE POFFLINE_ROUTINE PTERMINATE_ROUTINE PLOOKS_ALIVE_ROUTINE PIS_ALIVE_ROUTINE PRESOURCE_CONTROL_ROUTINE }; Open; Close; Online; Offline; Terminate; LooksAlive; IsAlive; ResourceControl; 17

Windows NFS Resource DLL Overview 18

NFS Resource Group Container for NFS application resources Unit of NFS application failover Boundary of resource dependencies Start/stop order App-specific relationships AND/OR Resource Group & NFS Resource Network Name / / IP IP & Disk 19

NFS Resources in Failover Cluster Failover Cluster Node 1 Failover Cluster Node 2 Cluster Service RHS RHS RHS Cluster Service RHS RHS RHS RCM NFS Resource NFS Resource NFS Resource NetName NetName Resource NetName Resource Resource IP Address Resource IP Address Resource IP Address Resource Physical Disk Physical Disk Resource Physical Resource Disk Resource RCM NFS Resource NFS Resource NFS Resource NetName NetName Resource NetName Resource Resource IP Address Resource IP Address Resource IP Address Resource Physical Disk Physical Disk Resource Physical Resource Disk Resource User Mode User Mode Kernel Kernel ClusDisk.sys NFS Server ClusDisk.sys NFS Server 20 NFS Namespace1

NFS Resource Online Sequence 21

NFS Resource Online Sequence 22

NFS Resource Offline Sequence 23

NFS Resource Offline Sequence 24

Windows NFS Server Architecture for High Availability 25

NFS Server Virtual Server Manager Container for NFS Driver virtual server instances Independent namespaces Independent network endpoints IP address scoping for namespace Singleton VirtualServer0 for non-clustered resources As many additional virtual servers as there are FC NFS resources NFS Virtual Server Manager LIST_ENTRY DeferredEndpointList LIST_ENTRY AllEndpoints LIST_ENTRY VirtualServerList NFS_VIRTUAL_SERVER VirtualServer0 ULONG VirtualServer0Incarnation PNP_CONTEXT *PnpContext 26

NFS Server Virtual Server Unit of NFS Server failover Virtual Server Contains: Collection of TCP endpoints (one per IP Address) Collection of NFS Shares (namespace) Referenced volumes backing the NFS Shares NFS_VIRTUAL_SERVER GUID Id ULONG Incarnation UNICODE_STRING VsName NFS_VS_STATE VsState LIST_ENTRY DelayedMsgList LIST_ENTRY EndpointList NFS_SHARE_CTX NfsNamespace 27

Example of Virtual Server Physical Server Virtual Server 1 Virtual Server 2 / / Finance Marketing IT Research dir1 dir2 file3 dir1 file2 dir3 28

NLM & NSM NLM protocol is stateful NSM protocol provides a notification mechanism following client or server failure Recovery across server restart requires NFS Server to provide two guarantees: NSM on NFS Server sends notifications to NFS Clients about server reboot NFS Server enforces grace period to allow lock reclaims by NFS Clients after server reboot 29

Windows NFS Server NLM/NSM One NLM lock file per volume Persistent lock record contains: Caller name identifies the client host Lock file name, range, client address, protocol, version and procedure Virtual server identifier Windows Failover Cluster allows individual NFS resource to be taken offline or failed over to other nodes This requires NFS Server implement grace period per virtual server 30

Windows NFS Virtual Server Advantages of Windows NFS Virtual Servers NFS namespace scoping per netname Per-IP endpoint registration to facilitate source IP on UDP reply packets Grace period scoped per virtual server 31

NFS Server IP Address Scoping NFS Server registers for IP address PnP notifications from the operating system When an IP address online notification is received, an LPC is performed to query Failover Cluster for the netname (and hence the NFS Virtual Server) that it should be scoped to All unknown endpoints are put in a deferred list while waiting for the Failover Cluster resource group, NFS Resource DLL and the NFS Virtual Server to come online 32

NFS Server Virtual Server States As soon as RUNNING state is entered, NFS/NLM Grace Period process is initiated When in START PENDING state, RPC packets received are chained on a deferred list till RUNNING state transition is possible In QUIESCENT state, RPC packets are dropped 33

NFS Powershell & CIM Provider Multiple ways to provision and manage NFS HA shares NFS PowerShell cmdlets NFS CIM (WMI) Provider API Windows Failover Cluster Manager or Server manager UI 34

NFS Powershell & CIM Provider Powershell Cmdlet: Create a new NFS HA share new-nfsshare name <sharename> -networkname <scoped cluster network name> -path <share path> CIM API in MSFT_NfsServerTasks: uint32 CreateShare([In]string Name, [In] string Path, [In] string NetworkName, [In] string Authentication[], ); 35

Windows NFS v4.1 Server Scope and definition: Compliant with all mandatory aspects of RFC 5661 Not currently implemented: ACL s Delegations Highly available Windows Failover Clustering Migration & Replication Identity Mapping support pnfs passwd/group file mapping Active Directory ADLDS or 3 rd party LDAP stores (RFC 2307 compliant) RDMA Other optional aspects of RFC 5661 User Name Mapping (legacy) RPCSEC_GSS support for Krb5, Krb5i and Krb5p Multiprotocol access (SMB + NFS) to same share Volume mount point support 36

Summary Windows NFS Server when deployed in Failover Cluster provides reliable platform for server application workloads Tested with VMware ESX hypervisor vmdk storage 37

Questions? 38

Thank You! 39