Вы находитесь на странице: 1из 143

Deploying System Center

Data Protection Manager –


Step by Step
Volume 1 – Featuring Version 1801

Dave Kawula - MVP


Cristal Kawula - MVP
Cary Sun – Cisco Champion (CCIE )
PUBLISHED BY

MVPDays Publishing
http://www.mvpdays.com

Copyright © 2018 by MVPDays Publishing

All rights reserved. No part of this book may be reproduced or transmitted in any form or by any
means without the prior written permission of the publisher.

ISBN:TBA

Warning and Disclaimer


Every effort has been made to make this manual as complete and as accurate as possible, but no
warranty or fitness is implied. The information provided is on an “as is” basis. The authors and
the publisher shall have neither liability nor responsibility to any person or entity with respect to
any loss or damages arising from the information contained in this book.

Feedback Information
We’d like to hear from you! If you have any comments about how we could improve the quality
of this book, please don’t hesitate to contact us by visiting www.checkyourlogs.net or sending an
email to feedback@mvpdays.com.

iii
Acknowledgements

iii
Acknowledgements

Acknowledgements
From Dave
Cristal, you are my rock and my source of inspiration. For the past 20 + years you have been
there with me every step of the way. Not only are you the “BEST Wife” in the world you are my
partner in crime. Christian, Trinity, Keira, Serena, Mickaila and Mackenzie, you kids are so patient
with your dear old dad when he locks himself away in the office for yet another book. Taking the
time to watch you grow in life, sports, and become little leaders of this new world is incredible to
watch.

Thank you, Mom and Dad (Frank and Audry) and my brother Joe. You got me started in this crazy
IT world when I was so young. Brother, you mentored me along the way both coaching me in
hockey and helping me learn what you knew about PC’s and Servers. I’ll never forget us as
teenage kids working the IT Support contract for the local municipal government. Remember
dad had to drive us to site because you weren’t old enough to drive ourselves yet. A great
career starts with the support of your family and I’m so lucky because I have all the support one
could ever want.

A book like this filled with amazing Canadian MVP’s would not be possible without the support
from the #1 Microsoft Community Program Manager – Simran Chaudry. You have guided us
along the path and helped us to get better at what we do every day. Your job is tireless and
your passion and commitment make us want to do what we do even more.

Last but not least, the MVPDays volunteers, you have donated your time and expertise and
helped us run the event in over 20 cities across North America. Our latest journey has us
expanding the conference worldwide as a virtual conference. For those of you that will read this
book your potential is limitless just expand your horizons and you never know where life will take
you.

iv
About the Authors

About the Authors


Dave Kawula - MVP
Dave is a Microsoft Most Valuable Professional (MVP) with over 20 years of experience in the IT
industry. His background includes data communications networks within multi-server
environments, and he has led architecture teams for virtualization, System Center, Exchange,
Active Directory, and Internet gateways. Very active within the Microsoft technical and
consulting teams, Dave has provided deep-dive technical knowledge and subject matter
expertise on various System Center and operating system topics.

Dave is well-known in the community as an evangelist for Microsoft, 1E, and Veeam
technologies. Locating Dave is easy as he speaks at several conferences and sessions each year,
including TechEd, Ignite, MVP Days Community Roadshow, and VeeamOn.

Recently Dave has been honored to take on the role of Conference Co-Chair of TechMentor with
fellow MVP Sami Laiho. The lineup of speakers and attendees that have been to this conference
over the past 20 years is really amazing. Come down to Redmond or Orlando in 2018 and you
can meet him in person.

As the founder and Managing Principal Consultant at TriCon Elite Consulting, Dave is a leading
technology expert for both local customers and large international enterprises, providing optimal
guidance and methodologies to achieve and maintain an efficient infrastructure.

BLOG: www.checkyourlogs.net

Twitter: @DaveKawula

v
About the Authors

Cristal Kawula – MVP


Cristal Kawula is the co-founder of MVPDays Community Roadshow and #MVPHour live Twitter
Chat. She is the President of TriCon Elite Consulting where she manages the day to day
operations of the field consulting and sales teams.

Cristal is also only the 2nd Woman in the world to receive the prestigious Veeam Vanguard
Community excellence award. In July of 2017 she was awarded the designation of Microsoft
MVP.

Early in her career Cristal worked as a consultant with Microsoft authoring content for internal
SMSGR and GTR teams. This content was used to train internal support engineers and global
escalation engineering teams.

Cristal can be found speaking at Microsoft Ignite, MVPDays, and other local user groups. She is
extremely active in the community and has recently helped publish a book for other Women
MVP’s called Voices from the Data Platform.

BLOG: http://www.checkyourlogs.net

Twitter: @supercristal1

vi
About the Authors

Cary Sun – CCIE #4531 (Cisco Champion)

Cary Sun is CISCO CERTIFIED INTERNETWORK EXPERT (CCIE No.4531) and MCSE, MCIPT, Citrix
CCA with over twenty years in the planning, design, and implementation of network technologies
and Management and system integration. Background includes hands-on experience with multi-
platform, all LAN/WAN topologies, network administration, E-mail and Internet systems, security
products, PCs and Servers environment. Expertise analyzing user’s needs and coordinating
system designs from concept through implementation. Exceptional analysis, organization,
communication, and interpersonal skills. Demonstrated ability to work independently or as an
integral part of team to achieve objectives and goals. Specialties: CCIE /CCNA / MCSE / MCITP /
MCTS / MCSA / Solution Expert / CCA

Cary’s is a very active blogger at checkyourlogs.net and always available online for questions
from the community. He passion about technology is contagious and he makes everyone around
him better at what they do.

Blog:http://www.checkyourlogs.net

Twitter:@SifuSun

vii
About the Authors

viii
Contents

Contents

Acknowledgements ...................................................................................................... iv
From Dave ............................................................................................................. iv

About the Authors ......................................................................................................... v


Dave Kawula - MVP ..................................................................................................... v
Cristal Kawula – MVP ................................................................................................. vi
Cary Sun – CCIE #4531 (Cisco Champion) ............................................................... vii

Contents........................................................................................................................ ix

Introduction ................................................................................................................. 13

North American MVPDays Community Roadshow ................................................... 13


Sample Files ............................................................................................................. 14
Additional Resources ................................................................................................ 14

Introduction ................................................................................................................. 16

North American MVPDays Community Roadshow ................................................... 16


Sample Files ............................................................................................................. 18
Additional Resources ................................................................................................ 18

Chapter 1...................................................................................................................... 20

Pre-Requisites ............................................................................................................. 20
Lab Server Names .................................................................................................... 20
Building the Lab with BigDemo_DPM.PS1 ................................................................ 22
ix
Contents

Enable Routing in the Lab ......................................................................................... 28


Install-NetNat.PS1 .................................................................................................... 42
Install-RRAS.PS1 ..................................................................................................... 44
Software Requirements ............................................................................................ 47
Data Protection Manager Accounts Required for Build ......................................... 49
Add a 2 VHDx drives to the DPM Server for the SQL Install ...................................... 53
Prep-DPM1801SQL.PS1 .......................................................................................... 63
Running Prep-DPM1801.PS1 ................................................................................... 69

Chapter 2...................................................................................................................... 77

Install SQL Server 2016 SP1 ....................................................................................... 77


SQL Server Service Accounts................................................................................... 77
Configure SQL Firewall Port Exceptions ................................................................... 78
Install Default Instance of SQL 2016 SP1 ................................................................. 82
Install SQL Server Management Studio (SSMS) 16.5 ............................................... 91
Configure SQL Server Memory Limits....................................................................... 93

Chapter 3...................................................................................................................... 97

Install System Center Data Protection Manager 1801 ............................................... 97


Prep-DPM1801.PS1 ................................................................................................. 97
Running Prep-DPM1801.PS1 ................................................................................. 102
Extract System Center Data Protection Manager (SCDPM) 1801 ........................... 118
Install System Center Data Protection Manager (SCDPM) 1801 ............................. 119

Chapter 4.................................................................................................................... 124

Configuring DPM 1801 .............................................................................................. 124


Modern Backup Storage ......................................................................................... 124
x
Contents

Configuring Modern Backup Storage ...................................................................... 125


Review Create-DPMModernStorage.PS1........................................................... 125
Running Create-DPMModernStorage.PS1 ......................................................... 127
System Center DPM Backup Storage Capacity Planner ......................................... 133
Configure Volume Exclusions ................................................................................. 133
Deploy DPM Protection Agents ............................................................................... 134
Deploy Protection Groups ....................................................................................... 134
Configure Firewall Settings ..................................................................................... 134
Install the DPM Central Console ............................................................................. 134
Enable End User Recovery ..................................................................................... 134
Deploy the DPM Agent using PowerShell ............................................................... 134
Configure Email Alerting ......................................................................................... 134
Configure DPM 1801 Management Pack in SCOM ................................................. 134

Chapter 5.................................................................................................................... 136

Protecting Workloads with DPM............................................................................... 136


Backup Hyper-V...................................................................................................... 136
Backup Exchange ................................................................................................... 137
Backup SharePoint ................................................................................................. 137
Backup SQL Server ................................................................................................ 137
Backup VMWare ..................................................................................................... 137
Backup Client Computers ....................................................................................... 137
Backup File Data .................................................................................................... 137
Backup Bare Metal System State............................................................................ 137
Backup Storage Spaces Direct ............................................................................... 137

xi
Contents

Backup Shielded Hyper-V VM’s .............................................................................. 137

Chapter 6.................................................................................................................... 138

Backing up to Azure .................................................................................................. 138


Configure DPM to backup using Azure Backup....................................................... 138
Backing up Exchange to Azure ............................................................................... 138
Recovering DPM Data to an Alternate DPM Server ................................................ 138
Backing up SQL Workloads to Azure ...................................................................... 138
Backing up SharePoint Farms to Azure .................................................................. 138

Chapter 7.................................................................................................................... 139

DPM Reporting and Monitoring ................................................................................ 139

Chapter6..................................................................................................................... 139

Meet great MVP’s like this in person ........................................................................ 139


Live Presentations .................................................................................................. 139
Video Training......................................................................................................... 140
Live Instructor-led Classes ...................................................................................... 140
Consulting Services ................................................................................................ 140
Twitter ..................................................................................................................... 141

xii
Introduction North American MVPDays Community Roadshow

Introduction

North American MVPDays


Community Roadshow
The purpose of this book is to showcase the amazing expertise of our guest speakers at the
North American MVPDays Community Roadshow. They have so much passion, expertise, and
expert knowledge that it only seemed fitting to write it down in a book.

MVPDays was founded by Cristal and Dave Kawula back in 2013. It started as a simple idea;
“There’s got to be a good way for Microsoft MVPs to reach the IT community and share their
vast knowledge and experience in a fun and engaging way” I mean, what is the point in
recognizing these bright and inspiring individuals, and not leveraging them to inspire the
community that they are a part of.

We often get asked the question “Who should attend MVPDays”?

Anyone that has an interest in technology, is eager to learn, and wants to meet other like-
minded individuals. This Roadshow is not just for Microsoft MVP’s it is for anyone in the IT
Community.

Make sure you check out the MVPDays website at: www.mvpdays.com. You never know maybe
the roadshow will be coming to a city near you.

The goal of this particular book is to bring you real world step-by-step guidance from our expert
MVP Authors on the deployment of System Center Data Protection Manager. It has been
written with the most current techniques possible to help with your migrations and learning
process.

13
Introduction North American MVPDays Community Roadshow

Sample Files
All sample files for this book can be downloaded from www.checkyourlogs.net and
www.github.com/dkawula

Additional Resources
In addition to all tips and tricks provided in this book, you can find extra resources like articles
and video recordings on our blog http://www.checkyourlogs.net.

14
Introduction North American MVPDays Community Roadshow

15
Introduction North American MVPDays Community Roadshow

Introduction

North American MVPDays


Community Roadshow
The purpose of this book is to showcase the amazing expertise of our guest speakers at the
North American MVPDays Community Roadshow. They have so much passion, expertise, and
expert knowledge that it only seemed fitting to write it down in a book.

MVPDays was founded by Cristal and Dave Kawula back in 2013. It started as a simple idea;
“There’s got to be a good way for Microsoft MVPs to reach the IT community and share their
vast knowledge and experience in a fun and engaging way” I mean, what is the point in
recognizing these bright and inspiring individuals, and not leveraging them to inspire the
community that they are a part of.

We often get asked the question “Who should attend MVPDays”?

Anyone that has an interest in technology, is eager to learn, and wants to meet other like-
minded individuals. This Roadshow is not just for Microsoft MVP’s it is for anyone in the IT
Community.

Make sure you check out the MVPDays website at: www.mvpdays.com. You never know maybe
the roadshow will be coming to a city near you.

The goal of this particular book is to bring you real world step-by-step guidance from our expert
MVP Authors on Microsoft System Center Data Protection Manager.

These are the same experts you come to see in person at the MVPDays Roadshow. This book is
written in the format of a Step-by-Step learning guide. We really hope you find some immense
value in what we have written.

16
Introduction North American MVPDays Community Roadshow

17
Introduction North American MVPDays Community Roadshow

Sample Files
All sample files for this book can be downloaded from www.checkyourlogs.net and
www.github.com/dkawula

Additional Resources
In addition to all tips and tricks provided in this book, you can find extra resources like articles
and video recordings on our blog http://www.checkyourlogs.net.

18
Introduction North American MVPDays Community Roadshow

19
Chapter 1 Pre-Requisites

Chapter 1

Pre-Requisites
Lab Server Names
The follow table describes the required Virtual Machines to build this lab. This lab is designed to
be built on a Hyper-V Host Server with a minimum of 16 GB of RAM. An automation script called
BigDemo_DPM.PS1 has been used to provision this lab environment. A copy of this script can be
found in the appendices.

Hostname Role Operating System

DPM01 System Center Data Protection Windows Server 2016


Manager 1081 with SQL
Server 2016 SP1 installed
locally

SCOM01 System Center Operations Windows Server 2016


Manager 1801

SCVMM System Center Virtual Windows Server 2016


Machine Manager 1801 – with
SQL Server 2016 SP1 installed
locally

DC01 Domain Controller running Windows Server 2016


Active Directory Certificate
Services as an Enterprise Root

DC01 Domain Controller Windows Server 2016

S2D1 Storage Spaces Direct – Hyper- Windows Server 2016


V Cluster Node – Server Core

S2D2 Storage Spaces Direct – Hyper- Windows Server 2016


V Cluster Node – Server Core

20
Chapter 1 Pre-Requisites

S2D3 Storage Spaces Direct – Hyper- Windows Server 2016


V Cluster Node – Server Core

S2D4 Storage Spaces Direct – Hyper- Windows Server 2016


V Cluster Node – Server Core

Router01 Windows NAT Router for the Windows Server 2016


LAB

DHCP01 DHCP Server for the Lab Windows Server 2016

Management01 Management01 Windows Server 2016

AZHVHost DS8 Virtual Machine in Azure Windows Server 2016


running Nested Virtualization
and Hyper-V. This will be the
host that we run the lab on.
This could also be a Laptop or
physical server in your
environment.

21
Chapter 1 Pre-Requisites

Building the Lab with BigDemo_DPM.PS1


For the purpose of this book we wanted to help you build a lab that you could easily follow along
with. If you have read some of our other books you would have seen a script that we use called
BigDemo. Basically, BigDemo is a PowerShell script that builds a lab environment including: AD,
DHCP, Management Servers, Clients, Application Servers, and others. It is highly customizable
and we have created a very special edition just for this book. Follow the instructions below to
download the script from our Github Repository and start building your very own lab to follow
along with.

Instructions Screenshot (if applicable)

1. Logon to the AZHVHost


machine in Azure as
Administrator

2. Open an administrative
Invoke-WebRequest -Uri "
PowerShell prompt and https://raw.githubusercontent.com/dkawula/Deploying-
System-Center-Data-Protection-Manager-
type: 1801/master/BigDemo_DPM.ps1" -OutFile "C:\Post-
Install\BigDemo_DPM.PS1"

3. Next Download a copy of https://www.microsoft.com/en-us/evalcenter/evaluate-


windows-server-2016/
Windows Server 2016
RTM from the Microsoft
Eval Center. For our lab
we have a drive on our
Hyper-V Host F:\

22
Chapter 1 Pre-Requisites

Save the ISO to


F:\DCBuild_Test

4. Next download the


following files: ADK1709,
SQL Server 2016 w/SP1,
SCDPM_1801.exe,
SCOM_1801.exe_EN,
SCVMM_1801.exe

Save the ISO to


F:\DCBuild_Test

https://www.microsoft.com/en-us/evalcenter/evaluate-system-
center-release

https://www.microsoft.com/en-us/evalcenter/evaluate-sql-
server-2016

5. Copy BigDemo_DPM.PS1
from C:\Post-Install to
F:\DCBuild_Test

23
Chapter 1 Pre-Requisites

6. Open BigDemo_DPM.PS1
with the PowerShell ISE
edit lines 2140 and 2131
putting in Your Product
key received with the
EVAL Version of Windows
Server 2016 Downloaded
above

7. Edit line 2127 $ServerISO


with the actual path and
name of your Server ISO
Downloaded which should
have been downloaded to
something like
F:\DCBuild_Test

Save BigDemo_DPM.PS1

24
Chapter 1 Pre-Requisites

8. Open an administrative
PowerShell prompt. Run
BigDemo_DPM.PS1

For this book we have


used the following
parameters:

WorkingDir:
f:\DCBuild_Test

Organization: MVPDays
Rockstars

Owner: Dave Kawula

TimeZone: Mountain
Standard Time

AdminPassword:
P@ssw0rd

DomainName:
MVPDays.com

DomainAdminPassword:
P@ssw0rd

VirtualSwitchName:
MVPDays_Test_VSwitch

Subnet: 172.16.100.
VirtualNATSwitchName:
InternalNATSwitch5

25
Chapter 1 Pre-Requisites

ExtraLabFiles: C:\

9. It will take
approximately 2
hours to build the Lab
Environment

26
Chapter 1 Pre-Requisites

27
Chapter 1 Pre-Requisites

Enable Routing in the Lab


This step-by-step lab guide requires access to the Internet for configurations. To enable access
to the internet from the Nested Hyper-V Host running in Azure run the following. This will
create a Gateway IP Address of 192.168.0.1 which will be used by the Router VM to get out to
the Internet. After the NAT Switch is created you will modify the DHCP Scope in the Lab to point
to the IP Address of the Router and then configure Windows Routing and Remote Access on the
Router VM.

These steps are documented for the purposed of learning in this book. All of these steps have
been updated in the lab build script with a custom function called Install-RRAS.PS1 which will be
discussed in the next section of this book. These steps are not required if you used
BigDemo_DPM.PS1 to build your lab.

Instructions Screenshot (if applicable)

1. Logon to the AZHVHost


machine in Azure as
Administrator

2. Open an administrative New-VMSwitch -SwitchName "InternalNATSwitch" -


SwitchType Internal
PowerShell prompt Get-NetAdapter
New-NetIPAddress 192.168.0.1 -PrefixLength 24 -
InterfaceIndex 23
New-NetNat -Name "InternalNat" -
InternalIPInterfaceAddressPrefix 192.168.0.0/24

3. Open the Hyper-V


Management Console,
Right-Click on
Router01, and click
Settings

28
Chapter 1 Pre-Requisites

4. Click on Add Hardware,


Network Adapter, click
Add

5. Click the newly added


Network Adapter, Click
on Virtual Switch, and
Select Internal Nat
Switch¸ and click OK

6. Logon to Router01 with


using Administrator
and a password of
P@ssw0rd

29
Chapter 1 Pre-Requisites

7. Open an administrative Add-WindowsFeature -Name RemoteAccess,Routing,RSAT-


RemoteAccess-Mgmt -verbose
PowerShell prompt and
run the command

This will install the


Routing and Remote
Access Feature

8. Right-Click Start, click


Run, type ncpa.cpl

Rename the Adapters:


Ethernet to Corpnet
Ethernet 2 to Internet

9. Configure the following CorpNet:


IP Address settings: IP = 172.16.100.254
Subnet = 255.255.255.0
Gateway = Blank
DNS = 172.16.100.1

Internet: 192.168.0.254
Subnet = 255.255.255.0
Gateway = 192.168.0.1

30
Chapter 1 Pre-Requisites

10. Open an Administrative


Command Prompt, try
to ping 4.2.2.2

Ensure that the


Router01 VM can ping
the internet address by
IP prior to continuing.

This validates that the


NAT Switch is working
properly.

11. Open the Routing and


Remote Access
Management Console

12. Right-Click on Router01


and click, Configure
and Enable Routing
and Remote Access

31
Chapter 1 Pre-Requisites

13. On the Routing and


Remote Access Server
Setup Wizard page
select Custom
Configuration and click
Next

14. On the Custom


Configuration Page
Select NAT and click
Next

32
Chapter 1 Pre-Requisites

15. On the Completing the


Routing and Remote
Access Server Setup
Wizard page click Finish

16. When prompted click


Start Service

33
Chapter 1 Pre-Requisites

17. In the Routing and


Remote Access
management console,
expand Router01, IPv4,
NAT. Then Right-Click
NAT and click New
Interface…

18. Select CorpNet and


click OK

34
Chapter 1 Pre-Requisites

19. On the Nat page ensure


Private interface
connected to the
private network is
selected and click OK

35
Chapter 1 Pre-Requisites

20. In the Routing and


Remote Access
management console,
expand Router01, IPv4,
NAT. Then Right-Click
NAT and click New
Interface…

21. Select Internet and


click OK

36
Chapter 1 Pre-Requisites

22. On the Nat page select


Public Interface
connected to the
Internet and select
Enable NAT on this
Interface and click OK

37
Chapter 1 Pre-Requisites

23. Logon to DHCP01 as


MVPdays\Administrat
or
24. Open the Network
Control Panel
(NCPA.CPL) and add a
default gateway on the
Ethernet adapter of
172.16.100.254

25. Open the DHCP


Management Console
(DHCPMGMT.MSC)
26. Expand DHCP01, IPv4,
Scope (172.16.100.0),
Scope Options
27. Right-Click on Scope
Options and click
Configure Options

38
Chapter 1 Pre-Requisites

28. Select 003 Router and


in IP Address type
172.16.100.254 and
click Add then click OK

39
Chapter 1 Pre-Requisites

29. Logon to DC01 as


MVPDays\Administrat
or and add a Gateway
of 172.16.100.254 to
the Ethernet Adapter

40
Chapter 1 Pre-Requisites

30. Open an Administrative


command prompt and
try pinging: 4.2.2.2 and
www.google.com

31. Restart the following


VM’s:
S2D1-S2D4
Management01
DPM01

This will ensure that


they all get updated IP
Addresses from the
DHCP01 Server

41
Chapter 1 Pre-Requisites

Install-NetNat.PS1
As previously discussed in the step-by-step process for enabling routing for this lab a custom
module has been written for this and included in the BigDemo_DPM.PS1 script. For the
purposes of learning in this book we have included both a link to the script and the script itself.

A link to this module can be found at: https://raw.githubusercontent.com/dkawula/Deploying-


System-Center-Data-Protection-Manager-1801/master/Install-NetNat.PS1

Function Install-NetNat {

param

[string]$VMName,

[string]$GuestOSName

Write-Output -InputObject "[$($VMName)]:: Configuring NAT on the


Hyper-V Internal Switch `"$($env:computername)`""

$CheckNATSwitch = get-vmswitch | where Name -eq $virtualNATSwitchName


| Select Name

If ($CheckNATSwitch -ne $null) {

write-Host "Internal NAT Switch Found"}

Else {

write-Host "Not Found"

Write-Host "Creating NAT Switch"

New-VMSwitch -SwitchName $virtualNATSwitchName -SwitchType Internal

42
Chapter 1 Pre-Requisites

$ifindex = Get-NetAdapter | Where Name -like *$virtualNATSwitchName*


| New-NetIPAddress 192.168.10.1 -PrefixLength 24

Get-Netnat | Remove-NetNat -confirm:$false

New-NetNat -Name $virtualNATSwitchName -


InternalIPInterfaceAddressPrefix 192.168.10.0/24

43
Chapter 1 Pre-Requisites

Install-RRAS.PS1
As previously discussed in the step-by-step process for enabling routing for this lab a custom
module has been written for this and included in the BigDemo_DPM.PS1 script. For the
purposes of learning in this book we have included both a link to the script and the script itself.

A link to this module can be found at: https://raw.githubusercontent.com/dkawula/Deploying-


System-Center-Data-Protection-Manager-1801/master/Install-RRAS.ps1

Function Install-RRAS{

param

[string] $VMName,

[string] $GuestOSName,

[string] $IPAddress

Add-VMNetworkAdapter -VMName $VMName -SwitchName


$virtualNATSwitchName

Invoke-Command -VMName $VMName -Credential $domainCred {

Write-Output -InputObject "[$($VMName)]:: Setting InternetIP Address


to 192.168.10.254"

$null = New-NetIPAddress -IPAddress "192.168.10.254" -InterfaceAlias


'Ethernet 2' -PrefixLength 24

44
Chapter 1 Pre-Requisites

$newroute = '192.168.10.1'

Write-Output -InputObject "[$($VMName)]:: Configuring Default


Gateway"

$null = Get-Netroute | Where DestinationPrefix -eq "0.0.0.0/0" |


Remove-NetRoute -Confirm:$False

#$null = Test-NetConnection localhost

new-netroute -InterfaceAlias "Ethernet 2" -NextHop $newroute -


DestinationPrefix '0.0.0.0/0' -verbose

$null = Get-NetAdapter | where name -EQ "Ethernet" | Rename-


NetAdapter -NewName CorpNet

$null = Get-NetAdapter | where name -EQ "Ethernet 2" | Rename-


NetAdapter -NewName Internet

Write-Output -InputObject "[$($VMName)]:: Installing RRAS"

$null = Install-WindowsFeature -Name RemoteAccess,Routing,RSAT-


RemoteAccess-Mgmt

#$null = Stop-Service -Name WDSServer -ErrorAction SilentlyContinue

#$null = Set-Service -Name WDSServer -StartupType Disabled -


ErrorAction SilentlyContinue

$ExternalInterface="Internet"

$InternalInterface="CorpNet"

Write-Output -InputObject "[$($VMName)]:: Coniguring RRAS - Adding


Internal and External Adapters"

$null = Start-Process -Wait:$true -FilePath "netsh" -ArgumentList


"ras set conf ENABLED"

$null = Set-Service -Name RemoteAccess -StartupType Automatic

$null = Start-Service -Name RemoteAccess

Write-Output -InputObject "[$($VMName)]:: Configuring NAT - Lab is


now Internet Enabled"

$null = Start-Process -Wait:$true -FilePath "netsh" -ArgumentList


"routing ip nat install"

45
Chapter 1 Pre-Requisites

$null = Start-Process -Wait:$true -FilePath "netsh" -ArgumentList


"routing ip nat add interface ""CorpNet"""

$null = Test-NetConnection 192.168.10.1

$null = Test-NetConnection 4.2.2.2

$null = cmd.exe /c "netsh routing ip nat add interface


$externalinterface"

$null = cmd.exe /c "netsh routing ip nat set interface


$externalinterface mode=full"

$null = Test-NetConnection 192.168.10.1

# $null = Test-NetConnection $($Subnet)1

$null = Test-NetConnection 4.2.2.2

Write-Output -InputObject "[$($VMName)]:: Disable FireWall"

$null = cmd.exe /c "netsh firewall set opmode disable"

for the purposed of learning in this book. All of these steps have been updated in the lab build
script with a custom function called Install-RRAS.PS1 which will be discussed in the next section
of this book. These steps are not required if you used BigDemo_DPM.PS1 to build your lab.

46
Chapter 1 Pre-Requisites

Software Requirements
The following table provides a summary of the Microsoft software that is used in this guide.

Software Additional Information

System Center Data Protection Manager Technical


Preview 1801
https://www.microsoft.com/en-us/evalcenter/evaluate-
system-center-release

System Center Operations Manager 1801


System Center Data Protection Manager 1801
System Center Virtual Machine Manager 1801

SQL 2016 SP1 Evaluation Media Standard Edition


https://www.microsoft.com/en-us/evalcenter/evaluate-
sql-server-2016

ADK 1709

47
Chapter 1 Pre-Requisites

48
Chapter 1 Pre-Requisites

Data Protection Manager Accounts Required for Build


The following accounts have automatically been created in Active Directory with the
BigDemo_DPM.PS1 Script. These are the only accounts required for the base installation in our
lab for this book.

Service Account / Groups Scope

svc_SQL SQL Server Agent / SQL Server Database


Engine / SQL Server Reporting Services are
running from this account

SVC_DPM SCDPM Service Account used for the SCDPM


Services locally installed

MVPDays-Admin Domain Admin Account that will be used for


the RunAS Account in SCDPM. You cannot
use the SCDPM Service account for this.

SCOM and VMM Service Accounts These have been automatically added as part
of the lab build. They can be found in the
BigDemo_DPM.PS1 Script. We didn’t
document them as part of this book because
the focus is on Data Protection Manager and
not Virtual Machine Manager or Operations
Manager.

49
Chapter 1 Pre-Requisites

Virtual Machine Manager Service Accounts for MVPDays Domain

The Computer Accounts as they have been joined to the MVPDays Domain

50
Chapter 1 Pre-Requisites

51
Chapter 1 Pre-Requisites

52
Chapter 1 Pre-Requisites

Add a 2 VHDx drives to the DPM Server for


the SQL Install
The following steps will add an additional Virtual Hard Disk to the DPM Server that will be used
to host the installation and site server components (SQL and DPM binaries).

Instructions Screenshot (if applicable)

1. Logon to the Hyper-V


Host Server and open
Hyper-V Manager

Right-Click on DPM01
and click Settings

2. Click on SCSI
Controller, click Hard
Drive and click Add

53
Chapter 1 Pre-Requisites

3. Click New

4. In the New Virtual


Hard Disk Wizard
before you begin page
click Next

5. On the Choose Disk


Type page select
Dynamically
Expanding and click
Next

54
Chapter 1 Pre-Requisites

6. On the Specify Name


and Location page
type:

Name: DPM01-
D.VHDX
Location:
F:\DCBuild_Test\VMs\

and then click Next

7. On the Configure Disk


page change the size
to 400 GB

55
Chapter 1 Pre-Requisites

8. On the Summary page


click Finish
9. Click Apply

10. On the Hyper-V


Settings Page for
DPM01 click OK

56
Chapter 1 Pre-Requisites

11. Return the DPM01 and


open Diskmgmt.msc,
rick click on Disk 1 and
click Online

12. Right-Click on Disk 1


and click Initialize Disk

13. On the Initialize Disk


page click Ok

57
Chapter 1 Pre-Requisites

14. Right-Click on Disk 1’s


unallocated space and
click New Simple
Volume

15. In the Welcome to the


New Simple Volume
Wizard Page click Next

58
Chapter 1 Pre-Requisites

16. On the Specify Volume


Size page click Next

17. On the Assign Drive


Letter or Path page
click Next

59
Chapter 1 Pre-Requisites

18. On the Format


Partition page change
the Volume Label to
DPM and click Next

19. On the Completing the


New Simple Volume
Wizard page click
Finish

60
Chapter 1 Pre-Requisites

20. Repeat the steps


above to add another
Disk for the SQL
Installation. As the
SQL Installation will be
on the Same Server as
the DPM Server and
will require a
difference block size
we will add another
disk. Create the F:
with 200 GB size
format as NTFS with a
Block Size of 64KB

21. The end result should


look like the screen
shot here.

61
Chapter 1 Pre-Requisites

62
Chapter 1 Pre-Requisites

Prep-DPM1801SQL.PS1
For the installation of DPM for this book we have elected to run SQL Server 2016 SP1 as a local
instance. There are some specific steps that must run in a particular order prior to deploying
SQL Server for DPM. These have all been mapped out in this custom script.

The Script can be automated as a fully functional DPM SQL Installer where SQL Will automatically
be installed. Instead of we will show both the unattended installation and attended installation
of SQL in Chapter 2. These steps will just prep the DPM01 VM for the SQL Installation.

There is also a pre-requisite of having the SQL Server Management Studio version 16.5 installed
on the DPM Server. Chapter 2 covers everything step by step. If you wanted to skip chapter 2
you could simple un-comment the install steps and automate the SQL Install.

Here is a link to the script: https://raw.githubusercontent.com/dkawula/Deploying-System-


Center-Data-Protection-Manager-1801/master/Prep-DPM1801SQL.PS1

Here is the script:

<#
Created: 2018-02-01
Version: 1.0
Author Dave Kawula MVP
Homepage: http://www.checkyourlogs.net

Disclaimer:
This script is provided "AS IS" with no warranties, confers no rights and
is not supported by the authors or CheckyourLogs or MVPDays Publishing

Author - Dave Kawula


Twitter: @DaveKawula
Blog : http://www.checkyourlogs.net

.Synopsis
Deploys System Center SQL Server 2016 Instance to a Hyper-V Lab VM
.DESCRIPTION
This Script was part of my BIGDemo series and I have broken it out into a
standalone function

You will need to have a SVC_SQL Pre-Created and SQL 2016 Media for this lab
to work
The Script will prompt for the path of the Files Required

63
Chapter 1 Pre-Requisites

The Script will prompt for an Admin Account which will be used in
$DomainCred
If your File names are different than mine adjust accordingly.

We will use PowerShell Direct to setup the Veeam Server in Hyper-V

The Source Hyper-V Virtual Machine needs to be Windows Server 2016

.EXAMPLE
TODO: Dave, add something more meaningful in here
.PARAMETER WorkingDir
Transactional directory for files to be staged and written
.PARAMETER VMname
The name of the Virtual Machine
.PARAMETER VMPath
The Path to the VM Working Folder - We create a new VHDx for the DPM Install
.PARAMETER GuestOSName
Name of the Guest Operating System Name

Usage: Install-DPM -Vmname YOURVM -GuestOS VEEAMSERVER -VMpath f:\VMs\SCVMM


-WorkingDir f:\Temp
#>
#Installs SCVMM 1801 for your lab

Function Install-SQLDPM{

param
(
[string]$VMName,
[string]$GuestOSName,
[string]$VMPath

#Ask for DPM EXE

[reflection.assembly]::loadwithpartialname("System.Windows.Forms")
$openFile = New-Object System.Windows.Forms.OpenFileDialog -Property @{
Title="Please SQL Server ISO"
}
$openFile.Filter = "iso files (*.iso)|*.iso|All files (*.*)|*.*"
If($openFile.ShowDialog() -eq "OK")
{
Write-Host "File $($openfile.FileName) selected"
}
if (!$openFile.FileName){
WriteErrorAndExit "Iso was not selected... Exitting"
}
$SQLISO = $openfile.FileName

#Ask for SSMS EXE

[reflection.assembly]::loadwithpartialname("System.Windows.Forms")
$openFile = New-Object System.Windows.Forms.OpenFileDialog -Property @{

64
Chapter 1 Pre-Requisites

Title="Please Select the SQL Server Management Studio SSMS .exe


Version 16.5 ONLY!!!"
}
$openFile.Filter = "exe files (*.exe)|*.exe|All files (*.*)|*.*"
If($openFile.ShowDialog() -eq "OK")
{
Write-Host "File $($openfile.FileName) selected"
}
if (!$openFile.FileName){
WriteErrorAndExit "Iso was not selected... Exitting"
}
$SSMSEXE = $openfile.FileName

#Ask for Windows Server ISO

[reflection.assembly]::loadwithpartialname("System.Windows.Forms")
$openFile = New-Object System.Windows.Forms.OpenFileDialog -Property @{
Title="Please Select the Windows Server 2016 ISO"
}
$openFile.Filter = "ISO files (*.ISO)|*.ISO|All files (*.*)|*.*"
If($openFile.ShowDialog() -eq "OK")
{
Write-Host "File $($openfile.FileName) selected"
}
if (!$openFile.FileName){
WriteErrorAndExit "Iso was not selected... Exitting"
}
$WS2016ISO = $openfile.FileName

$DomainCred = Get-Credential
#$VMName = 'DPM01'
#$GuestOSname = 'DPM01'
#$VMPath = 'f:\dcbuild_Test\VMs'
#$SQL = 'VMM01\MSSQLSERVER'
#$SCOMDrive = 'd:'

Write-Output -InputObject "[$($VMName)]:: Adding Drive for DPM Install"

New-VHD -Path "$($VMPath)\$($GuestOSName) - SQL Data 2.vhdx" -Dynamic -


SizeBytes 50GB
Mount-VHD -Path "$($VMPath)\$($GuestOSName) - SQL Data 2.vhdx"
$DiskNumber = (Get-Diskimage -ImagePath "$($VMPath)\$($GuestOSName) - SQL
Data 2.vhdx").Number
Initialize-Disk -Number $DiskNumber -PartitionStyle GPT
Get-Disk -Number $DiskNumber | New-Partition -UseMaximumSize -
AssignDriveLetter | Format-Volume -FileSystem NTFS -NewFileSystemLabel "SQL" -
Confirm:$False
$Driveletter = get-wmiobject -class "Win32_Volume" -namespace "root\cimv2" |
where-object {$_.Label -like "SQL*"}
$SQLDriveLetter = $DriveLetter.DriveLetter
Write-Output -InputObject "[$($VMName)]:: Copying SQL ISO to the new VHDx"

65
Chapter 1 Pre-Requisites

Copy-Item -Path $SQLISO -Destination


"$($SQLDriveLetter)\en_sql_server_2016_standard_with_service_pack_1_x64_dvd_9540
929.iso" -Force
Write-Output -InputObject "[$($VMName)]:: Copying SSMS EXE to the new VHDx"
Copy-Item -Path $SSMSEXE -Destination "$($SQLDriveLetter)\SSMS-Setup-
ENU.exe" -Force
Write-Output -InputObject "[$($VMName)]:: Copying WS 2016 ISO to the new
VHDx"
Copy-Item -Path $WS2016ISO -Destination
"$($SQLDriveLetter)\en_windows_server_2016_x64_dvd_9718492.iso" -Force
Dismount-VHD -Path "$($VMPath)\$($GuestOSName) - SQL Data 2.vhdx"
Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - SQL
Data 2.vhdx" -ControllerType SCSI

icm -VMName $VMName -Credential $domainCred {

Write-Output -InputObject "[$($VMName)]:: Adding the new VHDx for the SQL
Install"
Get-Disk | Where OperationalStatus -EQ "Offline" | Set-Disk -IsOffline
$False
Get-Disk | Where Number -NE "0" | Set-Disk -IsReadOnly $False
$Driveletter = get-wmiobject -class "Win32_Volume" -namespace "root\cimv2" |
where-object {$_.Label -like "SQL*"}
$SQLDrive = $Driveletter.DriveLetter
$SQLDrive
Write-Output -InputObject "[$($VMName)]:: Mounting SQL ISO"

$iso = Get-ChildItem -Path


"$($SQLDrive)\en_sql_server_2016_standard_with_service_pack_1_x64_dvd_9540929.is
o" #CHANGE THIS!

Mount-DiskImage $iso.FullName

$setup = $(Get-DiskImage -ImagePath $iso.FullName | Get-Volume).DriveLetter


+':'
$setup

Write-Output -InputObject "[$($VMName)]:: Mounting WS2016 ISO"

$iso = Get-ChildItem -Path


"$($SQLDrive)\en_windows_server_2016_x64_dvd_9718492.iso" #CHANGE THIS!

Mount-DiskImage $iso.FullName

$setup1 = $(Get-DiskImage -ImagePath $iso.FullName | Get-Volume).DriveLetter


+':'
$setup1

Write-Output -InputObject "[$($VMName)]:: Configure DPM Service Account as


a Local Admin"

# Add-LocalGroupMember -Group Administrators -Member $DPMServiceAcct

Write-Output -InputObject "[$($VMName)]:: Enable .Net Framework 3.5"

66
Chapter 1 Pre-Requisites

Dism.exe /Online /Enable-Feature /FeatureName:NetFx3 /All


/Source:d:\sources\sxs

Restart-DemoVM -VMName $VMname


Wait-PSDirect -VMName $VMName -cred $DomainCred
}

function Wait-PSDirect {
param
(
[string]
$VMName,

[Object]
$cred
)

Write-Log $VMName "Waiting for PowerShell Direct (using $($cred.username))"


while ((Invoke-Command -VMName $VMName -Credential $cred {
'Test'
} -ea SilentlyContinue) -ne 'Test')
{
Start-Sleep -Seconds 1
}
}

function Restart-DemoVM {
param
(
[string]
$VMName
)

Write-Log $VMName 'Rebooting'


stop-vm $VMName
start-vm $VMName
}

function Write-Log {
param
(
[string]$systemName,
[string]$message
)

Write-Host -Object (Get-Date).ToShortTimeString() -ForegroundColor Cyan -


NoNewline
Write-Host -Object ' - [' -ForegroundColor White -NoNewline
Write-Host -Object $systemName -ForegroundColor Yellow -NoNewline
Write-Host -Object "]::$($message)" -ForegroundColor White
}

67
Chapter 1 Pre-Requisites

68
Chapter 1 Pre-Requisites

Running Prep-DPM1801.PS1

Instructions Screenshot (if applicable)

1. Logon to the Hyper-V


Host Server as
Administrator
2. Download the script Invoke-WebRequest -uri
https://raw.githubusercontent.com/dkawula/Deploying
from GitHub by running -System-Center-Data-Protection-Manager-
the following from an 1801/master/Prep-DPM1801SQL.PS1 -OutFile
f:\_MasterScripts\prep-DPM1801SQL.PS1
Administrative
PowerShell Prompt
3. Import the Prep- Import-Module F:\_MasterScripts\prep-DPM1801SQL.PS1
-verbose
DPM1801SQL.PS1
Module

4. Run Install-SQLDPM  Install-SQLDPM -VMName DPM01 -GuestOSName DPM01 -


VMPath F:\dcbuild_test\VMs
remember we have just
commented out the
actual SQL Installation
and SSMS installation as
part of this updated
script.

69
Chapter 1 Pre-Requisites

5. When Prompted select


the SQL Server ISO

6. When Prompted Select


the SQL Server
Management Studio
16.5 Installer

7. When prompted select


the Windows Server
2016 ISO

70
Chapter 1 Pre-Requisites

8. When prompted type


MVPDays\Administrato
r with a password of
P@ssw0rd

9.

Here is the output from the script execution:

PS C:\Users\dkawula-admin> Install-SQLDPM -VMName DPM01 -GuestOSName


DPM01 -VMPath f:\dcbuild_test\vms

GAC Version Location

--- ------- --------

True v4.0.30319
C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.
0.0__b77a5c561934e089...

File
F:\DCBuild_Test\en_sql_server_2016_standard_with_service_pack_1_x64_dvd_9
540929.iso selected

True v4.0.30319
C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.
0.0__b77a5c561934e089...

File F:\DCBuild_Test\SSMS-Setup-ENU-16.5.exe selected

71
Chapter 1 Pre-Requisites

True v4.0.30319
C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.
0.0__b77a5c561934e089...

File F:\DCBuild_Test\en_windows_server_2016_x64_dvd_9718492.iso selected

cmdlet Get-Credential at command pipeline position 1

Supply values for the following parameters:

Credential

[DPM01]:: Adding Drive for DPM Install

ComputerName : TECHMENTORHV04

Path : f:\dcbuild_test\vms\DPM01 - SQL Data 2.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 53687091200

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

BlockSize : 33554432

ParentPath :

DiskIdentifier : 99ED252E-7252-4909-9CF0-7B5A54764750

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

72
Chapter 1 Pre-Requisites

ObjectId :
{1}\\TECHMENTORHV04\root/Microsoft/Windows/Storage/Providers_v2\WSP_Volum
e.ObjectId="{14e75eea-c

7ee-11e7-a942-
806e6f6e6963}:VO:\\?\Volume{c9f8e274-255c-4f3c-8e04-7f838a01188d}\"

PassThroughClass :

PassThroughIds :

PassThroughNamespace :

PassThroughServer :

UniqueId : \\?\Volume{c9f8e274-255c-4f3c-8e04-7f838a01188d}\

AllocationUnitSize : 4096

DedupMode : NotAvailable

DriveLetter : E

DriveType : Fixed

FileSystem : NTFS

FileSystemLabel : SQL

FileSystemType : NTFS

HealthStatus : Healthy

OperationalStatus : OK

Path : \\?\Volume{c9f8e274-255c-4f3c-8e04-7f838a01188d}\

Size : 53550772224

SizeRemaining : 53445619712

PSComputerName :

[DPM01]:: Copying SQL ISO to the new VHDx

[DPM01]:: Copying SSMS EXE to the new VHDx

[DPM01]:: Copying WS 2016 ISO to the new VHDx

[]:: Adding the new VHDx for the SQL Install

[]:: Mounting SQL ISO

73
Chapter 1 Pre-Requisites

E:

[]:: Mounting WS2016 ISO

[]:: Configure DPM Service Account as a Local Admin

[]:: Enable .Net Framework 3.5

Deployment Image Servicing and Management tool

Version: 10.0.14393.0

Image Version: 10.0.14393.0

Enabling feature(s)

[ 0.1% ]

[ 1.1% ]

[====== 10.9% ]

[======= 12.7% ]

[======== 14.5% ]

[========= 16.3% ]

[========== 18.1% ]

[=========== 20.0% ]

74
Chapter 1 Pre-Requisites

[============ 21.8% ]

[============= 23.6% ]

[============== 25.4% ]

[=============== 27.2% ]

[================ 29.0% ]

[================= 30.0% ]

[================== 31.2% ]

[================== 32.5% ]

[==========================100.0%==========================]

The operation completed successfully.

11:13 PM - [DPM01]::Rebooting

11:13 PM - [DPM01]::Waiting for PowerShell Direct (using


MVPDays\Administrator)

PS C:\Users\dkawula-admin>

Note: The script captures one very important step and that is to have the .NET Framework 3.5
installed prior to SQL Server. It also copies the required media for the lab in the book into the
75
Chapter 1 Pre-Requisites

VM’s on the SQL VHDx drive. DPM also requires that only Version 16.5 of the SQL Server
Management Studio be installed otherwise the installer will fail on pre-reqs.

76
Chapter 2 Install SQL Server 2016 SP1

Chapter 2

Install SQL Server 2016 SP1


SQL Server Service Accounts
You will create three new accounts with these properties by following the steps below:

Full Name User Logon Name Forest Password

SQL Server Agent MVPDays\SVC_SQL MVPDays.com P@ssw0rd

SQL Server Database MVPDays\SVC_SQL MVPDays.com P@ssw0rd


Engine

SQL Server Reporting MVPDays\SVC_SQL MVPDays.com P@ssw0rd


Services

For the purpose of this book we have pre-created the SQL Service account as part of the
DCBuild_Test1 Script.

Note: These accounts must have Log on as a Service rights on the SQL server. This can be
achieved via Group Policy or via local policy. You cannot set via local policy if a domain group
policy is already setting a list of user accounts that can log in as a service.

The policy is configured at Computer Configuration -> Policies -> Windows Settings -> Security
Settings -> Local Policies -> User Rights Assignment and the setting is Log on as a Service.

For the purpose of this book / lab we have added the SVC_SQL Service account as a local
administrator on the DPM01 Server.

77
Chapter 2 Install SQL Server 2016 SP1

Configure SQL Firewall Port Exceptions


These steps are executed even if SQL is co-located with Configuration Manager.

Instructions Screenshot (if applicable)

10. Logon to DPM01 as


MVPDays\Administrator

11. Open the local firewall


configuration. Note, if
you are managing
firewall settings via
Group Policy you will
need to manage
exceptions through
GPO.

12. Add port exceptions


for 1433, 1434, 4022,
80 and 443 by
following these steps.

13. Navigate to Inbound


rules

78
Chapter 2 Install SQL Server 2016 SP1

14. In the Actions Pane,


select New Rule

15. Select a new Port rule


and click Next

16. Maintain the radio


button on TCP.

17. Add in ports 135,1433,


1434, 4022, 80,
443,4088

Note: If SQL were


configured on a
remote server, add
135 as well

18. Click Next

79
Chapter 2 Install SQL Server 2016 SP1

19. Keep the setting


“Allow the
connection”

20. Click Next

21. Select this to apply in


the Domain profile
only.

22. Click Next

23. Name the rule SQL


2016 Exceptions

24. Click Finish

80
Chapter 2 Install SQL Server 2016 SP1

25. Close the Firewall


manager
26. If applying via GPO be
sure to gpupdate
/force on the server
before proceeding.

81
Chapter 2 Install SQL Server 2016 SP1

Install Default Instance of SQL 2016 SP1

Instructions Screenshot (if applicable)

1. Logon to DPM01 as
MVPDays\Administrator

2. Mount SQL media to the Media available from the volume license download site
media drive of the site
server
3. Open File Explorer,
navigate to Computer
and then double-click
the Media Drive
4. When prompted by
User Account Control
(UAC), click Yes to
continue with the
installation.
5. The SQL Server
Installation Center
screen launches

6. In the left-hand pane,


select Installation

82
Chapter 2 Install SQL Server 2016 SP1

7. The right-hand pane


options change when
the Installation choice is
selected.

1. Select the top-most


installation option,
“New SQL Server stand-
alone installation or
add features to an
existing installation.”
2. The Product Key screen
appears

3. The license key should


be embedded with
volume license media. If
not, retrieve the license
key from the volume
license media site.

83
Chapter 2 Install SQL Server 2016 SP1

4. Click Next

5. The License Terms


screen appears
6. Select the checkbox that
states “I accept the
license terms.”

7. Click Next

8. The Microsoft Update


screen appears.

9. Select the checkbox to


Use Microsoft Update.

10. Click Next

84
Chapter 2 Install SQL Server 2016 SP1

11. A rules validation


process runs.

12. The Install Rules screen


appears.

13. Check/remediate any


warnings that appear.

14. Click Next.

15. The Feature Selection


screen appears

16. Under Instance


Features, select
Database Engine
Services and Reporting
Services – Native

17. If the server contains a


separate volume for SQL
databases, change the
install directories from
C:\ to the alternate
drive letter D:\.

18. Click Next

85
Chapter 2 Install SQL Server 2016 SP1

19. The Instance


Configuration screen
will appear

20. The first instance we


will install is the default
SQL instance
(MSSQLSERVER). The
default instance is used
for Reporting Services.

21. Leave the radio button


for “Default instance”
selected

22. Leave the instance ID as


MSSQLSERVER

23. Click Next


24. The Server
Configuration screen
will appear. We will now
configure services to run
under the alternate user
accounts created earlier
in this document.

25. Next to SQL Server


Agent under Account
Name, enter
MVPDays\SVC_SQL,
under Password, enter
the P@ssw0rd.

26. Next to SQL Server


Database Engine under
Account Name, enter
MVPDays\SVC_SQL,
under Password, enter

86
Chapter 2 Install SQL Server 2016 SP1

the P@ssw0rd.

27. Next to SQL Server


Reporting Services
under Account Name,
enter
MVPDays\SVC_SQL,
under Password, enter
the P@ssw0rd.
28. Select Grant Perform
Volume Maintenance
Task privilege to SQL
Server Database Engine
Service
29. Configure the SQL
Server Agent startup
type to Automatic
30. The Database Engine
Configuration screen
appears. Ensure
Windows
authentication mode is
selected and click on
Add Current User.
31. Then add
MVPDays\Domain
Admins and click Next

87
Chapter 2 Install SQL Server 2016 SP1

32. The Reporting Services


Configuration screen
appears, Click Next

33. The Ready to


Install screen appears

34. This screen


summarizes the choices
made in installing this
instance of the SQL
Server.

35. Note that a


ConfigurationFile.Ini is
saved to the C:\ drive.
This ini file can be used
to perform unattended
SQL installations that
match this
configuration. When
planning for a large
deployment of SQL
servers, you can set up a
server once using the
menu system and then
use the
ConfigurationFile.ini for
88
Chapter 2 Install SQL Server 2016 SP1

unattended installations
for the remaining
servers.

36. Click Install


37. The installation begins.
The progress is
displayed on the
Installation Progress
screen

38. Once complete, the


Complete screen will
appear.

39. Click Close to exit the


installation

40. The SQL Server


Installation Center
screen will re-appear,
with the Installation
option selected in the
left-hand pane.

89
Chapter 2 Install SQL Server 2016 SP1

41. Close the SQL server


Installation Center by
clicking the Red X in the
upper right corner
42. Eject the SQL media

90
Chapter 2 Install SQL Server 2016 SP1

Install SQL Server Management Studio


(SSMS) 16.5
The steps below will install the SQL Server Management Studio (SMSS) in the lab. It is important
to use SQL Server Management Studio 16.5 as it is the only version supported on a DPM 1801
Server at this time.

Instructions Screenshot (if applicable)

1. Logon to DPM01 as

2. Launch the d:\SSMS-


Setup-ENU.exe installer
3. On the Welcome page
click Install

91
Chapter 2 Install SQL Server 2016 SP1

4. On the Restart required


in order to complete
setup page click Restart

92
Chapter 2 Install SQL Server 2016 SP1

Configure SQL Server Memory Limits

Instructions Screenshot (if applicable)

1. Logon to
DPM01 as
MVPDays\Admi
nistrator

2. Launch SQL
Server
Management
Studio
3. Click Connect
to connect to
the local
database

93
Chapter 2 Install SQL Server 2016 SP1

4. Within the
Management
Studio, right-
click the
Server and
select
Properties

94
Chapter 2 Install SQL Server 2016 SP1

5. Select the
Memory
node

6. Reset the
maximum
memory to
one half the
memory of
the site
server.

7. Save settings.

95
Chapter 2 Install SQL Server 2016 SP1

8. If available
change the
amount of
RAM to 8192

96
Chapter 3 Install System Center Data Protection Manager 1801

Chapter 3

Install System Center Data


Protection Manager 1801
Prep-DPM1801.PS1
To ensure consistency of our DPM Server build we will use a prep script called Prep-
DPM1801.PS1. This Script will install all the required Roles/Features, copy the media into the
lab VHDx file, add the VHDx file to the DPM01 VM.

You can grab a copy of the script from here:


https://raw.githubusercontent.com/dkawula/Deploying-System-Center-Data-Protection-
Manager-1801/master/Prep-DPM1801.ps1

Here is a copy of the script:


<#
Created: 2018-02-01
Version: 1.0
Author Dave Kawula MVP
Homepage: http://www.checkyourlogs.net

Disclaimer:
This script is provided "AS IS" with no warranties, confers no rights and
is not supported by the authors or CheckyourLogs or MVPDays Publishing

Author - Dave Kawula


Twitter: @DaveKawula
Blog : http://www.checkyourlogs.net

.Synopsis
Deploys System Center Data Protection Manager (DPM )1801 Server to a Hyper-V
Lab VM
.DESCRIPTION
This Script was part of my BIGDemo series and I have broken it out into a
standalone function

97
Chapter 3 Install System Center Data Protection Manager 1801

You will need to have a SCVMM Service Accounts Pre-Created and DPM 1801
Trial Media for this lab to work
The Script will prompt for the path of the Files Required
The Script will prompt for an Admin Account which will be used in
$DomainCred
If your File names are different than mine adjust accordingly.

We will use PowerShell Direct to setup the Veeam Server in Hyper-V

The Source Hyper-V Virtual Machine needs to be Windows Server 2016

.EXAMPLE
TODO: Dave, add something more meaningful in here
.PARAMETER WorkingDir
Transactional directory for files to be staged and written
.PARAMETER VMname
The name of the Virtual Machine
.PARAMETER VMPath
The Path to the VM Working Folder - We create a new VHDx for the DPM Install
.PARAMETER GuestOSName
Name of the Guest Operating System Name

Usage: Install-DPM -Vmname YOURVM -GuestOS VEEAMSERVER -VMpath f:\VMs\SCVMM


-WorkingDir f:\Temp
#>
#Installs SCVMM 1801 for your lab

Function Install-DPMPREP{

param
(
[string]$VMName,
[string]$GuestOSName,
[string]$VMPath

#Ask for DPM EXE

[reflection.assembly]::loadwithpartialname("System.Windows.Forms")
$openFile = New-Object System.Windows.Forms.OpenFileDialog -Property @{
Title="Please Select the DPM 1801 .EXE"
}
$openFile.Filter = "exe files (*.exe)|*.exe|All files (*.*)|*.*"
If($openFile.ShowDialog() -eq "OK")
{
Write-Host "File $($openfile.FileName) selected"
}
if (!$openFile.FileName){
WriteErrorAndExit "Iso was not selected... Exitting"
}
$DPMEXE = $openfile.FileName

98
Chapter 3 Install System Center Data Protection Manager 1801

$DomainCred = Get-Credential
#$VMName = 'DPM01'
#$GuestOSname = 'DPM01'
#$VMPath = 'f:\dcbuild_Test\VMs'
#$SQL = 'VMM01\MSSQLSERVER'
#$SCOMDrive = 'd:'

icm -VMName $VMName -Credential $DomainCred {

Write-Output -InputObject "[$($VMName)]:: Configure DPM Service Account as


a Local Admin"

# Add-LocalGroupMember -Group Administrators -Member $DPMServiceAcct

Write-Output -InputObject "[$($VMName)]:: Disable Server Manager"

Get-ScheduledTask -Taskname Servermanager | Disable-ScheduledTask

Write-Output -InputObject "[$($VMName)]:: Enable Netadapter RSS"

Enable-NetAdapterRss -Name *

Write-Output -InputObject "[$($VMName)]:: Add Hyper-V PowerShell Features"

Dism.exe /Online /Enable-Feature /FeatureName:Microsoft-Hyper-V


/FeatureName:microsoft-Hyper-V-Management-PowerShell /quiet

Restart-DemoVM -VMName $VMname


Wait-PSDirect -VMName $VMName -cred $DomainCred

Write-Output -InputObject "[$($VMName)]:: Adding Drive for DPM Install"

New-VHD -Path "$($VMPath)\$($GuestOSName) - DPM Data 5.vhdx" -Dynamic -


SizeBytes 50GB
Mount-VHD -Path "$($VMPath)\$($GuestOSName) - DPM Data 5.vhdx"
$DiskNumber = (Get-Diskimage -ImagePath "$($VMPath)\$($GuestOSName) - DPM
Data 5.vhdx").Number
Initialize-Disk -Number $DiskNumber -PartitionStyle GPT
Get-Disk -Number $DiskNumber | New-Partition -UseMaximumSize -
AssignDriveLetter | Format-Volume -FileSystem NTFS -NewFileSystemLabel "DPM" -
Confirm:$False
$Driveletter = get-wmiobject -class "Win32_Volume" -namespace "root\cimv2" |
where-object {$_.Label -like "DPM*"}
$DPMDriveLetter = $DriveLetter.DriveLetter
Write-Output -InputObject "[$($VMName)]:: Copying SCDPM 1801 EXE to the new
VHDx"
Copy-Item -Path $DPMEXE -Destination "$($DPMDriveLetter)\SCDPM_1801.exe" -
Force
Dismount-VHD -Path "$($VMPath)\$($GuestOSName) - DPM Data 5.vhdx"
Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - DPM
Data 5.vhdx" -ControllerType SCSI

99
Chapter 3 Install System Center Data Protection Manager 1801

icm -VMName $VMName -Credential $domainCred {

Write-Output -InputObject "[$($VMName)]:: Adding the new VHDx for the DPM
Install"
Get-Disk | Where OperationalStatus -EQ "Offline" | Set-Disk -IsOffline
$False
Get-Disk | Where Number -NE "0" | Set-Disk -IsReadOnly $False
$Driveletter = get-wmiobject -class "Win32_Volume" -namespace "root\cimv2" |
where-object {$_.Label -like "DPM*"}
$DPMDrive = $Driveletter.DriveLetter

Write-Output -InputObject "[$($VMName)]:: Configuring WIndows Firewall for


DPM"
Set-NetFirewallRule -DisplayName 'File and Printer Sharing (Echo Request -
ICMPv4-In)' -Profile Domain -Enabled True -Direction Inbound -Action Allow
Set-NetFirewallRule -DisplayName 'File and Printer Sharing (Echo Request -
ICMPv6-In)' -Profile Domain -Enabled True -Direction Inbound -Action Allow
Set-NetFirewallRule -DisplayName 'File and Printer Sharing (SMB-In)' -
Profile Domain -Enabled True -Direction Inbound -Action Allow
Set-NetFirewallRule -DisplayName 'Remote Desktop - User Mode (TCP-In)' -
Profile Domain -Enabled True -Direction Inbound -Action Allow
Set-NetFirewallRule -DisplayName 'Remote Desktop - User Mode (UDP-In)' -
Profile Domain -Enabled True -Direction Inbound -Action Allow

Write-Output -InputObject "[$($VMName)]:: Configuring WIndows Firewall for


DPM New Rules"
New-NetFirewallRule -DisplayName "SCDPM-TCP" -Direction Inbound -Protocol
TCP -Profile Domain -LocalPort 135,5718,5719,6075,88,389,139,445 -Action Allow
New-NetFirewallRule -DisplayName "SCDPM-UDP" -Direction Inbound -Protocol
UDP -Profile Domain -LocalPort 53,88,389,137,138 -Action Allow
New-NetFirewallRule -DisplayName "Remote-SQL Server TCP" -Direction Inbound
-Protocol TCP -Profile Domain -LocalPort 80,1433 -Action Allow
New-NetFirewallRule -DisplayName "Remote-SQL Server UDP" -Direction Inbound
-Protocol UDP -Profile Domain -LocalPort 1434 -Action Allow

Write-Output -InputObject "[$($VMName)]:: Adding Drives for Storage Spaces /


Backup Target"
New-VHD -Path "$($VMPath)\$($GuestOSName) - DPM SS 1.vhdx" -Dynamic -
SizeBytes 200GB
New-VHD -Path "$($VMPath)\$($GuestOSName) - DPM SS 2.vhdx" -Dynamic -
SizeBytes 200GB
New-VHD -Path "$($VMPath)\$($GuestOSName) - DPM SS 3.vhdx" -Dynamic -
SizeBytes 200GB
New-VHD -Path "$($VMPath)\$($GuestOSName) - DPM SS 4.vhdx" -Dynamic -
SizeBytes 200GB
New-VHD -Path "$($VMPath)\$($GuestOSName) - DPM SS 5.vhdx" -Dynamic -
SizeBytes 200GB
New-VHD -Path "$($VMPath)\$($GuestOSName) - DPM SS 6.vhdx" -Dynamic -
SizeBytes 200GB
Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - DPM
SS 1.vhdx" -ControllerType SCSI
Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - DPM
SS 2.vhdx" -ControllerType SCSI
100
Chapter 3 Install System Center Data Protection Manager 1801

Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - DPM


SS 3.vhdx" -ControllerType SCSI
Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - DPM
SS 4.vhdx" -ControllerType SCSI
Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - DPM
SS 5.vhdx" -ControllerType SCSI
Add-VMHardDiskDrive -VMName $VMName -Path "$($VMPath)\$($GuestOSName) - DPM
SS 6.vhdx" -ControllerType SCSI

function Wait-PSDirect {
param
(
[string]
$VMName,

[Object]
$cred
)

Write-Log $VMName "Waiting for PowerShell Direct (using $($cred.username))"


while ((Invoke-Command -VMName $VMName -Credential $cred {
'Test'
} -ea SilentlyContinue) -ne 'Test')
{
Start-Sleep -Seconds 1
}
}

function Restart-DemoVM {
param
(
[string]
$VMName
)

Write-Log $VMName 'Rebooting'


stop-vm $VMName
start-vm $VMName
}

function Write-Log {
param
(
[string]$systemName,
[string]$message
)

Write-Host -Object (Get-Date).ToShortTimeString() -ForegroundColor Cyan -


NoNewline
Write-Host -Object ' - [' -ForegroundColor White -NoNewline
Write-Host -Object $systemName -ForegroundColor Yellow -NoNewline
Write-Host -Object "]::$($message)" -ForegroundColor White
}

101
Chapter 3 Install System Center Data Protection Manager 1801

Running Prep-DPM1801.PS1

Instructions Screenshot (if applicable)

1. Logon to the Hyper-V


Host Server as
Administrator
2. Download the script Invoke-WebRequest -uri
https://raw.githubusercontent.com/dkawula/Deploying
from GitHub by running -System-Center-Data-Protection-Manager-
the following from an 1801/master/Prep-DPM1801.ps1 -OutFile
f:\_MasterScripts\prep-DPM1801.PS1
Administrative
PowerShell Prompt
3. Import the Prep- Import-Module F:\_MasterScripts\prep-DPM1801.PS1 -
verbose
DPM1801SQL.PS1
Module

4. Run Install-DPMPrep Install-DPMPrep -VMName DPM01 -GuestOSName DPM01 -


VMPath F:\dcbuild_test\VMs

5. When Prompted select


the SCDPM1801.EXE

102
Chapter 3 Install System Center Data Protection Manager 1801

6. When prompted type


MVPDays\Administrato
r with a password of
P@ssw0rd

7.

Here is the output from the script execution:

PS C:\Users\dkawula-admin> Install-DPMPREP -VMName DPM01 -GuestOSName


DPM01 -VMPath f:\dcbuild_test\VMS

GAC Version Location

--- ------- --------

True v4.0.30319
C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.
0.0__b77a5c561934e089...

File F:\DCBuild_Test\SCDPM_1801.exe selected

cmdlet Get-Credential at command pipeline position 1

Supply values for the following parameters:

Credential

[]:: Configure DPM Service Account as a Local Admin

103
Chapter 3 Install System Center Data Protection Manager 1801

[]:: Disable Server Manager

PSComputerName : DPM01

RunspaceId : fa2d3d79-9a30-4390-9b07-cc9d6781ac8d

Actions : {MSFT_TaskExecAction}

Author : Microsoft Corporation

Date :

Description : Task for launching Initial Configuration Tasks or


Server Manager at logon.

Documentation :

Principal : MSFT_TaskPrincipal2

SecurityDescriptor : D:P(A;;FA;;;BA)(A;;FA;;;SY)(A;;FR;;;BU)

Settings : MSFT_TaskSettings3

Source : Server Manager

State : 1

TaskName : ServerManager

TaskPath : \Microsoft\Windows\Server Manager\

Triggers : {MSFT_TaskLogonTrigger}

URI : \Microsoft\Windows\Server Manager\ServerManager

Version : 1.0

[]:: Enable Netadapter RSS

[]:: Add Hyper-V PowerShell Features

12:01 AM - [DPM01]::Rebooting

12:01 AM - [DPM01]::Waiting for PowerShell Direct (using


MVPDays\Administrator)

[DPM01]:: Adding Drive for DPM Install

ComputerName : TECHMENTORHV04

104
Chapter 3 Install System Center Data Protection Manager 1801

Path : f:\dcbuild_test\VMS\DPM01 - DPM Data 5.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 53687091200

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

BlockSize : 33554432

ParentPath :

DiskIdentifier : CF004747-CDF3-400C-A2E6-285346EA1F88

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

ObjectId :
{1}\\TECHMENTORHV04\root/Microsoft/Windows/Storage/Providers_v2\WSP_Volum
e.ObjectId="{14e75eea-c

7ee-11e7-a942-
806e6f6e6963}:VO:\\?\Volume{6938b7d2-6f4f-4786-a298-ef91ea76dcb7}\"

PassThroughClass :

PassThroughIds :

PassThroughNamespace :

PassThroughServer :

UniqueId : \\?\Volume{6938b7d2-6f4f-4786-a298-ef91ea76dcb7}\

AllocationUnitSize : 4096

105
Chapter 3 Install System Center Data Protection Manager 1801

DedupMode : NotAvailable

DriveLetter : E

DriveType : Fixed

FileSystem : NTFS

FileSystemLabel : DPM

FileSystemType : NTFS

HealthStatus : Healthy

OperationalStatus : OK

Path : \\?\Volume{6938b7d2-6f4f-4786-a298-ef91ea76dcb7}\

Size : 53550772224

SizeRemaining : 53445619712

PSComputerName :

[DPM01]:: Copying SCDPM 1801 EXE to the new VHDx

[]:: Adding the new VHDx for the DPM Install

[]:: Configuring WIndows Firewall for DPM

[]:: Configuring WIndows Firewall for DPM New Rules

Name : {016e469a-835c-4627-b9d3-ffe97ccbde21}

ID : {016e469a-835c-4627-b9d3-ffe97ccbde21}

Group :

Profile : Domain

Platform : {}

LSM : False

PSComputerName : DPM01

RunspaceId : 000a2894-469c-4838-a8fd-1bf2d9b6101e

Caption :

Description :

106
Chapter 3 Install System Center Data Protection Manager 1801

ElementName : SCDPM-TCP

InstanceID : {016e469a-835c-4627-b9d3-ffe97ccbde21}

CommonName :

PolicyKeywords :

Enabled : 1

PolicyDecisionStrategy : 2

PolicyRoles :

ConditionListType : 3

CreationClassName : MSFT|FW|FirewallRule|{016e469a-835c-4627-b9d3-
ffe97ccbde21}

ExecutionStrategy : 2

Mandatory :

PolicyRuleName :

Priority :

RuleUsage :

SequencedActions : 3

SystemCreationClassName :

SystemName :

Action : 2

Direction : 1

DisplayGroup :

DisplayName : SCDPM-TCP

EdgeTraversalPolicy : 0

EnforcementStatus : {0}

LocalOnlyMapping : False

LooseSourceMapping : False

Owner :

Platforms : {}

PolicyStoreSource : PersistentStore
107
Chapter 3 Install System Center Data Protection Manager 1801

PolicyStoreSourceType : 1

PrimaryStatus : 1

Profiles : 1

RuleGroup :

Status : The rule was parsed successfully from the


store.

StatusCode : 65536

Name : {1d818f78-4308-46bb-9e38-558aa237c456}

ID : {1d818f78-4308-46bb-9e38-558aa237c456}

Group :

Profile : Domain

Platform : {}

LSM : False

PSComputerName : DPM01

RunspaceId : 000a2894-469c-4838-a8fd-1bf2d9b6101e

Caption :

Description :

ElementName : SCDPM-UDP

InstanceID : {1d818f78-4308-46bb-9e38-558aa237c456}

CommonName :

PolicyKeywords :

Enabled : 1

PolicyDecisionStrategy : 2

PolicyRoles :

ConditionListType : 3

CreationClassName : MSFT|FW|FirewallRule|{1d818f78-4308-46bb-9e38-
558aa237c456}

108
Chapter 3 Install System Center Data Protection Manager 1801

ExecutionStrategy : 2

Mandatory :

PolicyRuleName :

Priority :

RuleUsage :

SequencedActions : 3

SystemCreationClassName :

SystemName :

Action : 2

Direction : 1

DisplayGroup :

DisplayName : SCDPM-UDP

EdgeTraversalPolicy : 0

EnforcementStatus : {0}

LocalOnlyMapping : False

LooseSourceMapping : False

Owner :

Platforms : {}

PolicyStoreSource : PersistentStore

PolicyStoreSourceType : 1

PrimaryStatus : 1

Profiles : 1

RuleGroup :

Status : The rule was parsed successfully from the


store.

StatusCode : 65536

Name : {52b505e3-4d06-424d-b15d-60b55af4afb1}
109
Chapter 3 Install System Center Data Protection Manager 1801

ID : {52b505e3-4d06-424d-b15d-60b55af4afb1}

Group :

Profile : Domain

Platform : {}

LSM : False

PSComputerName : DPM01

RunspaceId : 000a2894-469c-4838-a8fd-1bf2d9b6101e

Caption :

Description :

ElementName : Remote-SQL Server TCP

InstanceID : {52b505e3-4d06-424d-b15d-60b55af4afb1}

CommonName :

PolicyKeywords :

Enabled : 1

PolicyDecisionStrategy : 2

PolicyRoles :

ConditionListType : 3

CreationClassName : MSFT|FW|FirewallRule|{52b505e3-4d06-424d-b15d-
60b55af4afb1}

ExecutionStrategy : 2

Mandatory :

PolicyRuleName :

Priority :

RuleUsage :

SequencedActions : 3

SystemCreationClassName :

SystemName :

Action : 2

Direction : 1
110
Chapter 3 Install System Center Data Protection Manager 1801

DisplayGroup :

DisplayName : Remote-SQL Server TCP

EdgeTraversalPolicy : 0

EnforcementStatus : {0}

LocalOnlyMapping : False

LooseSourceMapping : False

Owner :

Platforms : {}

PolicyStoreSource : PersistentStore

PolicyStoreSourceType : 1

PrimaryStatus : 1

Profiles : 1

RuleGroup :

Status : The rule was parsed successfully from the


store.

StatusCode : 65536

Name : {0ca36644-c3bd-45d7-84f5-ed7f1b8f5d2a}

ID : {0ca36644-c3bd-45d7-84f5-ed7f1b8f5d2a}

Group :

Profile : Domain

Platform : {}

LSM : False

PSComputerName : DPM01

RunspaceId : 000a2894-469c-4838-a8fd-1bf2d9b6101e

Caption :

Description :

ElementName : Remote-SQL Server UDP


111
Chapter 3 Install System Center Data Protection Manager 1801

InstanceID : {0ca36644-c3bd-45d7-84f5-ed7f1b8f5d2a}

CommonName :

PolicyKeywords :

Enabled : 1

PolicyDecisionStrategy : 2

PolicyRoles :

ConditionListType : 3

CreationClassName : MSFT|FW|FirewallRule|{0ca36644-c3bd-45d7-84f5-
ed7f1b8f5d2a}

ExecutionStrategy : 2

Mandatory :

PolicyRuleName :

Priority :

RuleUsage :

SequencedActions : 3

SystemCreationClassName :

SystemName :

Action : 2

Direction : 1

DisplayGroup :

DisplayName : Remote-SQL Server UDP

EdgeTraversalPolicy : 0

EnforcementStatus : {0}

LocalOnlyMapping : False

LooseSourceMapping : False

Owner :

Platforms : {}

PolicyStoreSource : PersistentStore

PolicyStoreSourceType : 1
112
Chapter 3 Install System Center Data Protection Manager 1801

PrimaryStatus : 1

Profiles : 1

RuleGroup :

Status : The rule was parsed successfully from the


store.

StatusCode : 65536

[DPM01]:: Adding Drives for Storage Spaces / Backup Target

ComputerName : TECHMENTORHV04

Path : f:\dcbuild_test\VMS\DPM01 - DPM SS 1.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 214748364800

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

BlockSize : 33554432

ParentPath :

DiskIdentifier : 41E71073-C290-480E-BA46-C84A44752477

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

ComputerName : TECHMENTORHV04
113
Chapter 3 Install System Center Data Protection Manager 1801

Path : f:\dcbuild_test\VMS\DPM01 - DPM SS 2.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 214748364800

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

BlockSize : 33554432

ParentPath :

DiskIdentifier : 1C0B069F-B87C-45FA-A0C2-A75D62C67BA5

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

ComputerName : TECHMENTORHV04

Path : f:\dcbuild_test\VMS\DPM01 - DPM SS 3.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 214748364800

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

BlockSize : 33554432

114
Chapter 3 Install System Center Data Protection Manager 1801

ParentPath :

DiskIdentifier : 01CD08D3-B556-4A36-98AC-5C1BBA1A728C

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

ComputerName : TECHMENTORHV04

Path : f:\dcbuild_test\VMS\DPM01 - DPM SS 4.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 214748364800

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

BlockSize : 33554432

ParentPath :

DiskIdentifier : FC23AC93-1AA3-49A9-B00D-7FA4FE8FADA9

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

115
Chapter 3 Install System Center Data Protection Manager 1801

ComputerName : TECHMENTORHV04

Path : f:\dcbuild_test\VMS\DPM01 - DPM SS 5.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 214748364800

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

BlockSize : 33554432

ParentPath :

DiskIdentifier : 23130F16-F954-4F02-9C01-A713EBE020FE

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

ComputerName : TECHMENTORHV04

Path : f:\dcbuild_test\VMS\DPM01 - DPM SS 6.vhdx

VhdFormat : VHDX

VhdType : Dynamic

FileSize : 4194304

Size : 214748364800

MinimumSize :

LogicalSectorSize : 512

PhysicalSectorSize : 4096

116
Chapter 3 Install System Center Data Protection Manager 1801

BlockSize : 33554432

ParentPath :

DiskIdentifier : C80B8574-059C-4459-AE14-D712320E7154

FragmentationPercentage : 0

Alignment : 1

Attached : False

DiskNumber :

Number :

PS C:\Users\dkawula-admin>

117
Chapter 3 Install System Center Data Protection Manager 1801

Extract System Center Data Protection


Manager (SCDPM) 1801

Instructions Screenshot (if applicable)

1. Logon to DPM01 as
MVPDays\Administrator

2. Save the Binary


SCDPM_1801.EXE to
E:\Sysytem Center Virtual
Machine Manager

118
Chapter 3 Install System Center Data Protection Manager 1801

Install System Center Data Protection


Manager (SCDPM) 1801

Instructions Screenshot (if applicable)

1. Logon to DPM01 as
MVPDays\Administrat
or

2. Browse to e:\System
Center Data Protection
Manager
3. Run Setup.exe

4. Click on Install Data


Protection Manager

119
Chapter 3 Install System Center Data Protection Manager 1801

5. On the Microsoft
Software License Terms
page select Accept

6. On the Welcome page


click Next

120
Chapter 3 Install System Center Data Protection Manager 1801

7. On the Prerequisites
Check page type
DPM01 in Instance of
SQL Server and click
Check and Install and
then click Next

8. On the Product
Registration page click
Next

Special thanks to
@MrthomasRayner for
the Easter Egg in the
Lab Build Script

121
Chapter 3 Install System Center Data Protection Manager 1801

9. On the Installation
Settings page change
the path the
E:\DPMINSTALL and
click Next

10. On the Microsoft


Update Opt-In page
select Use Microsoft
Update when I check
for updates
(recommended) and
click Next

11. On the Summary of


Settings page click
Install

122
Chapter 3 Install System Center Data Protection Manager 1801

12. Wait a few minutes for


the installation to
complete.

13. Once setup completes


click Close

123
Chapter 4 Configuring DPM 1801

Chapter 4

Configuring DPM 1801


Modern Backup Storage
Modern Backup Storage (MBS) is provided by System Center Data Protection Manager (DPM) to
deliver 50% storage savings, 3X faster backups, and more efficient, workload-aware storage.

Note: MBS is enabled automatically when you're running at least DPM 2016 on Windows Server
2016. If DPM is running on a version of Windows Server older than Windows Server 2016, it
doesn't use MBS.

MBS backups are stored on an ReFS disk. It uses ReFS block cloning, and VHDX technology, Learn
more.

MBS provides intelligent storage for short-term backup to disk. MBS provides faster disk backup,
consuming less disk space. Without MBS, each datasource needs two volumes, one for the initial
backup and the other for delta changes.

DPM 2016 accepts volumes for storage. Once you add a volume, DPM formats the volume to
ReFS to use the new features of Modern Backup Storage. Volumes cannot reside on a dynamic
disk. Use only a basic disk.

While you can directly give a volume to DPM, you may face issues in extending the volume if a
need arises later. To prepare DPM for future expansion, Use the available disks to create a
storage pool, then create volumes on the storage pool, and expose the volumes to DPM. These
virtual volumes can then be extended when needed.

The remainder of this article provides the detail on how to add a volume and to expand it later.

124
Chapter 4 Configuring DPM 1801

Configuring Modern Backup Storage


Review Create-DPMModernStorage.PS1
Create-DPMModernStorage is a PowerShell Module that can be downloaded from Dave’s Github
Repository: https://raw.githubusercontent.com/dkawula/Deploying-System-Center-Data-
Protection-Manager-1801/master/Create-DPMModernStorage.ps1

It can be used to create a new Storage Pool with Storage Spaces, create a Virtual Disk, Prepare
and format the disk getting it ready for the DPM 1801 Console and to be used as DPM Modern
Storage.

Here is a copy of the script:

#Variables
Function Create-DPMModernStorage {
param
(
[string]$VMName,
[string]$GuestOSName

$DomainCred = Get-Credential
$Pool1 = "DPM Storage Pool"
$VD1 = "Simple DPM vDisk01"
#$VMName = 'DPM01'
icm -VMName $VMName -Credential $DomainCred {
$VMName
Write-Output -InputObject "[$($VMName)]:: Defining the Variables"
$Pool1 = "DPM Storage Pool"
Write-Output -InputObject "[$($VMName)]:: Pool Name = $($Pool1)"
$VD1 = "Simple DPM vDisk01"
Write-Output -InputObject "[$($VMName)]:: Virtual Disk Name = $($VD1)"
Write-Output -InputObject "[$($VMName)]:: Checking the Drives and the Disk
SubSystem"
Get-PhysicalDisk | FT
Get-StorageSubSystem | FT
Write-Output -InputObject "[$($VMName)]:: Creating the Storage Pool"
New-StoragePool -FriendlyName $Pool1 -StorageSubSystemFriendlyName "Windows
Storage*" -PhysicalDisks (Get-PhysicalDisk -CanPool $True)
Get-StoragePool $Pool1 | Get-PhysicalDisk | Sort Size | FT FriendlyName, Size,
MediaType, HealthStatus, OperationalStatus -AutoSize

125
Chapter 4 Configuring DPM 1801

Get-StoragePool DPM* | Get-PhysicalDisk | Where MediaType -eq "Unspecified"


|Set-PhysicalDisk -MediaType HDD
#Create Simple Storage Space Virtual Disk
Write-Output -InputObject "[$($VMName)]:: Creating the Virtual Disk $($VD1)"
New-VirtualDisk -StoragePoolFriendlyName $Pool1 -FriendlyName $VD1 -
ResiliencySettingName Simple -UseMaximumSize -ProvisioningType Thin -MediaType
HDD -Interleave 256KB -NumberOfColumns 1
Get-VirtualDisk -FriendlyName $VD1 |Get-Disk | Initialize-Disk -PassThru |New-
Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -AllocationUnitSize
64KB -FileSystem ReFS -NewFileSystemLabel "DPM Modern Storage" -Confirm:$False
}
}

126
Chapter 4 Configuring DPM 1801

Running Create-DPMModernStorage.PS1

Instructions Screenshot (if applicable)

1. Logon to the Hyper-V


Host Server as
Administrator
2. Download the script Invoke-WebRequest -uri
https://raw.githubusercontent.com/dkawula/Deploying
from GitHub by running -System-Center-Data-Protection-Manager-
the following from an 1801/master/Create-DPMModernStorage.ps1 -OutFile
f:\_MasterScripts\Create-DPMModernStorage.PS1
Administrative
PowerShell Prompt
3. Import the Prep- Import-Module
F:\_MasterScripts\CreateDPMModernStorage.PS1 -
DPM1801SQL.PS1 verbose
Module

4. Run Install-DPMPrep Create-DPMModerStorage -VMName DPM01

5. When prompted type


MVPDays\Administrato
r with a password of
P@ssw0rd

6.

127
Chapter 4 Configuring DPM 1801

Here is the output of the script:


PS C:\Users\dkawula-admin> Create-DPMModernStorage -VMName DPM01

cmdlet Get-Credential at command pipeline position 1

Supply values for the following parameters:

Credential

[]:: Defining the Variables

[]:: Pool Name = DPM Storage Pool

[]:: Virtual Disk Name = Simple DPM vDisk01

[]:: Checking the Drives and the Disk SubSystem

FriendlyName SerialNumber CanPool OperationalStatus HealthStatus


Usage Size

------------ ------------ ------- ----------------- ------------ ---


-- ----

Msft Virtual Disk True OK Healthy


Auto-Select 200 GB

Msft Virtual Disk True OK Healthy


Auto-Select 200 GB

Msft Virtual Disk True OK Healthy


Auto-Select 200 GB

Msft Virtual Disk False OK Healthy


Auto-Select 50 GB

Msft Virtual Disk True OK Healthy


Auto-Select 200 GB

Msft Virtual Disk False OK Healthy


Auto-Select 50 GB

Msft Virtual Disk True OK Healthy


Auto-Select 200 GB

Msft Virtual Disk True OK Healthy


Auto-Select 200 GB

128
Chapter 4 Configuring DPM 1801

Msft Virtual Disk False OK Healthy


Auto-Select 60 GB

FriendlyName HealthStatus OperationalStatus

------------ ------------ -----------------

Windows Storage on DPM01 Healthy OK

[]:: Creating the Storage Pool

FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly


PSComputerName

------------ ----------------- ------------ ------------ ---------- -


-------------

DPM Storage Pool OK Healthy False False


DPM01

FriendlyName Size MediaType HealthStatus OperationalStatus

------------ ---- --------- ------------ -----------------

Msft Virtual Disk 214748364800 Unspecified Healthy OK

Msft Virtual Disk 214748364800 Unspecified Healthy OK

Msft Virtual Disk 214748364800 Unspecified Healthy OK

Msft Virtual Disk 214748364800 Unspecified Healthy OK

Msft Virtual Disk 214748364800 Unspecified Healthy OK

Msft Virtual Disk 214748364800 Unspecified Healthy OK

129
Chapter 4 Configuring DPM 1801

[]:: Creating the Virtual Disk Simple DPM vDisk01

130
Chapter 4 Configuring DPM 1801

Add Volumes to DPM Storage

Instructions Screenshot (if applicable)

1. Logon to DPM01 as
MVPDays\Administrator

2. Open the DPM Console

3. In the DPM
Management console >
Disk Storage, click
Rescan.

131
Chapter 4 Configuring DPM 1801

4. In Add Disk Storage, click


F:\ and click Add.
5. A Warning Prompt will
appear that DPM will
format the storage click
Yes
6. After the volumes are
added, you can give
them a friendly name.

132
Chapter 4 Configuring DPM 1801

7. Click OK to format the


volumes to ReFS, so that
DPM can use them as
MBS.

8.

System Center DPM Backup Storage


Capacity Planner

Configure Volume Exclusions


DPM servers may be managed by a team of Administrators. While there are guidelines on
storage that should be used for backups, a wrong volume given to DPM as backup storage may
lead to loss of critical data. Hence, with UR4, you can prevent such scenarios by configuring
those volumes to not be shown as available for storage using PowerShell.

TBD…

133
Chapter 4 Configuring DPM 1801

Deploy DPM Protection Agents

Deploy Protection Groups

Configure Firewall Settings

Install the DPM Central Console

Enable End User Recovery

Deploy the DPM Agent using PowerShell

Configure Email Alerting

Configure DPM 1801 Management Pack in


SCOM

134
Chapter 4 Configuring DPM 1801

135
Chapter 5 Protecting Workloads with DPM

Chapter 5

Protecting Workloads with


DPM
Backup Hyper-V

136
Chapter 5 Protecting Workloads with DPM

Backup Exchange

Backup SharePoint

Backup SQL Server

Backup VMWare

Backup Client Computers

Backup File Data

Backup Bare Metal System State

Backup Storage Spaces Direct

Backup Shielded Hyper-V VM’s

137
Chapter 6 Backing up to Azure

Chapter 6

Backing up to Azure
Configure DPM to backup using Azure
Backup

Backing up Exchange to Azure

Recovering DPM Data to an Alternate DPM


Server

Backing up SQL Workloads to Azure

Backing up SharePoint Farms to Azure

138
Chapter 7 DPM Reporting and Monitoring

Chapter 7

DPM Reporting and


Monitoring

Chapter6

Meet great MVP’s like this in


person
If you liked their book, you will love to hear them in person.

Live Presentations
Dave frequently speaks at Microsoft conferences around North America, such as TechEd,
VeeamOn, TechDays, and MVPDays Community Roadshow.

Cristal runs the MVPDays Community Roadshow.

You can find additional information on the following blog:

www.checkyourlogs.net

www.mvpdays.com

139
Chapter6 Meet great MVP’s like this in person

Video Training
For video-based training, see the following site:

www.mvpdays.com

Live Instructor-led Classes


Dave has been a Microsoft Certified Trainer (MCT) for more than 15 years and presents
scheduled instructor-led classes in the US and Canada. For current dates and locations, see the
following sites:

 www.truesec.com

 www.checkyourlogs.net

Consulting Services
Dave and Cristal have worked with some of the largest companies in the world and have a
wealth of experience and expertise. Customer engagements are typically between two weeks
and six months.

140
Chapter6 Meet great MVP’s like this in person

Twitter
Dave, Cristal, Allan, Cary on Twitter tweet on the following aliases:

 Dave Kawula: @DaveKawula

 Cristal Kawula: @SuperCristal1

 Cary Sun: @SifuSun

141

Вам также может понравиться