MDT Docs update
|
@ -566,7 +566,12 @@ Table=RoleAdministrators
|
|||
Parameters=Role
|
||||
"@
|
||||
|
||||
Set-Content -Path "\\$MDTServer\DeploymentShare$\Control\CustomSettings.ini" -Value $Content
|
||||
|
||||
$CustomSettingsFile="\\$MDTServer\DeploymentShare$\Control\CustomSettings.ini"
|
||||
Set-Content -Path $CustomSettingsFile -Value $Content -NoNewline #if NoNewLine not specified, scipt will add crlf at and of the file
|
||||
#replace LF with CRLF as text will be displayed correctly in Deployment Workbench
|
||||
$text = [IO.File]::ReadAllText($CustomSettingsFile) -replace "`n", "`r`n"
|
||||
[IO.File]::WriteAllText($CustomSettingsFile, $text)
|
||||
|
||||
#endregion
|
||||
|
||||
|
@ -700,7 +705,7 @@ GO
|
|||
}
|
||||
Return $HVHosts
|
||||
}
|
||||
|
||||
$HVHosts
|
||||
|
||||
#endregion
|
||||
|
||||
|
|
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/DHCP01.png
До Ширина: | Высота: | Размер: 47 KiB После Ширина: | Высота: | Размер: 62 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/Eventvwr01.png
До Ширина: | Высота: | Размер: 79 KiB После Ширина: | Высота: | Размер: 118 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/Explorer01.png
До Ширина: | Высота: | Размер: 30 KiB После Ширина: | Высота: | Размер: 43 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/Explorer02.png
До Ширина: | Высота: | Размер: 429 KiB После Ширина: | Высота: | Размер: 261 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/Explorer03.png
До Ширина: | Высота: | Размер: 421 KiB После Ширина: | Высота: | Размер: 314 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/Explorer04.png
До Ширина: | Высота: | Размер: 870 KiB После Ширина: | Высота: | Размер: 272 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/Explorer05.png
До Ширина: | Высота: | Размер: 254 KiB После Ширина: | Высота: | Размер: 186 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/Explorer06.png
До Ширина: | Высота: | Размер: 600 KiB После Ширина: | Высота: | Размер: 504 KiB |
После Ширина: | Высота: | Размер: 90 KiB |
После Ширина: | Высота: | Размер: 437 KiB |
После Ширина: | Высота: | Размер: 300 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/MDT01.png
До Ширина: | Высота: | Размер: 30 KiB После Ширина: | Высота: | Размер: 39 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/MDT02.png
До Ширина: | Высота: | Размер: 136 KiB После Ширина: | Высота: | Размер: 146 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/MDT03.png
До Ширина: | Высота: | Размер: 131 KiB После Ширина: | Высота: | Размер: 138 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/MDT04.png
До Ширина: | Высота: | Размер: 46 KiB После Ширина: | Высота: | Размер: 50 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/MDT05.png
До Ширина: | Высота: | Размер: 50 KiB После Ширина: | Высота: | Размер: 58 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/MDT06.png
До Ширина: | Высота: | Размер: 42 KiB После Ширина: | Высота: | Размер: 49 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/MDT07.png
До Ширина: | Высота: | Размер: 19 KiB После Ширина: | Высота: | Размер: 37 KiB |
После Ширина: | Высота: | Размер: 124 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/PowerShell01.png
До Ширина: | Высота: | Размер: 56 KiB После Ширина: | Высота: | Размер: 66 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/PowerShell02.png
До Ширина: | Высота: | Размер: 61 KiB После Ширина: | Высота: | Размер: 64 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/PowerShell03.png
До Ширина: | Высота: | Размер: 83 KiB После Ширина: | Высота: | Размер: 52 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/PowerShell04.png
До Ширина: | Высота: | Размер: 73 KiB После Ширина: | Высота: | Размер: 50 KiB |
Двоичные данные
Scenarios/AzSHCI and MDT/Screenshots/PowerShell05.png
До Ширина: | Высота: | Размер: 74 KiB После Ширина: | Высота: | Размер: 52 KiB |
|
@ -2,20 +2,20 @@
|
|||
|
||||
- [AzSHCI and MDT](#azshci-and-mdt)
|
||||
- [About the lab](#about-the-lab)
|
||||
- [LabConfig with enabled telemetry (Full)](#labconfig-with-enabled-telemetry-full)
|
||||
- [LabConfig with enabled telemetry Full](#labconfig-with-enabled-telemetry-full)
|
||||
- [The lab](#the-lab)
|
||||
- [Region download and install binaries](#region-download-and-install-binaries)
|
||||
- [Region prereqs](#region-prereqs)
|
||||
- [Region configure MDT](#region-configure-mdt)
|
||||
- [Region configure MDT run-as account](#region-configure-mdt-run-as-account)
|
||||
- [Region configure Bootstrap ini and generate WinPE](#region-configure-bootstrap-ini-and-generate-winpe)
|
||||
- [Region Install and configure WDS](#region-install-and-configure-wds)
|
||||
- [Region Configure MDT monitoring](#region-configure-mdt-monitoring)
|
||||
- [Region replace customsettings.ini ith all DB data to query wizard output](#region-replace-customsettingsini-ith-all-db-data-to-query-wizard-output)
|
||||
- [Region configure SQL to be able to access it remotely using MDTUSer account](#region-configure-sql-to-be-able-to-access-it-remotely-using-mdtuser-account)
|
||||
- [Region Run from Hyper-V Host to create new, empty VMs](#region-run-from-hyper-v-host-to-create-new-empty-vms)
|
||||
- [Create hash table out of machines that attempted to boot last 5 minutes](#create-hash-table-out-of-machines-that-attempted-to-boot-last-5-minutes)
|
||||
- [Create DHCP reservation for machines](#create-dhcp-reservation-for-machines)
|
||||
- [Region add deploy info to AD Object and MDT Database](#region-add-deploy-info-to-ad-object-and-mdt-database)
|
||||
- [Region replace customsettings.ini ith all DB data to query (wizard output)](#region-replace-customsettingsini-ith-all-db-data-to-query-wizard-output)
|
||||
- [Region configure SQL to be able to access it remotely using MDTUSer account](#region-configure-sql-to-be-able-to-access-it-remotely-using-mdtuser-account)
|
||||
- [Reboot machines](#reboot-machines)
|
||||
|
||||
<!-- /TOC -->
|
||||
|
@ -26,36 +26,52 @@
|
|||
|
||||
In this lab you will learn how to deploy Azure Stack HCI nodes with Microsoft Deployment Toolkit (MDT). Scripts demonstrates unattend installation of all components (ADK, ADKPE, SQL Express, MDT), required configuration, setup of WDS that responds only to known computers, adding servers either by querying local event log for attempted deployments or simply populating with Hash table and many more!
|
||||
|
||||
This demonstration is simplified, as in real world scenarios you will need to inject drivers, install software and configure OS. This scenario is great start for designing production deployments! All runs from DC (demonstrating installation on remote computer would introduce additional complexity, and it would be harder to understand scenario itself).
|
||||
This demonstration is simplified, as in real world scenarios you will need to inject drivers, install software and configure OS. This scenario is great start for designing production deployments! All runs from DC or management machine (Windows 10) demonstrating installation on remote computer.
|
||||
|
||||
[![WSLab in MVPDays](/Docs/media/Deploying_AzSHCI_with_MDT.png)](https://youtu.be/Vipbhkv9wyM)
|
||||
Same scenario can be used to deploy physical (DELL) servers as lab can connect to physical adapters.
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/LabInfo01.png)
|
||||
|
||||
Previous iteration of scenario (without dedicated MDT and physical machines) is demonstrated here:
|
||||
|
||||
[![MSLab in MVPDays](/Docs/media/Deploying_AzSHCI_with_MDT.png)](https://youtu.be/Vipbhkv9wyM)
|
||||
|
||||
## LabConfig with enabled telemetry (Full)
|
||||
|
||||
Notice, that following labconfig contains physical switch NIC names (NIC1 and NIC2) that will be added into vSwitch created by MSLab.
|
||||
|
||||
Lab also contains Windows 11. To create VHD, you can [use "CreateParentDisk.ps1" script](/Docs/MSLab-Advanced/creating-parent-disk.md).
|
||||
|
||||
```powershell
|
||||
$LabConfig=@{ DomainAdminName='LabAdmin'; AdminPassword='LS1setup!' ; <#Prefix = 'WSLab-'#> ; DCEdition='4'; Internet=$true ; TelemetryLevel='Full' ; TelemetryNickname='' ; AdditionalNetworksConfig=@(); VMs=@()}
|
||||
$LabConfig=@{SwitchNics="NIC1","NIC2"; DomainAdminName='LabAdmin'; AdminPassword='LS1setup!' ; <#Prefix = 'WSLab-'#> ; DCEdition='4'; Internet=$true ; TelemetryLevel='Full' ; TelemetryNickname='MDT' ; AdditionalNetworksConfig=@(); VMs=@()}
|
||||
|
||||
#MDT machine (GUI is needed as Core does not have WDSUtil)
|
||||
$LabConfig.VMs += @{ VMName = 'MDT' ; Configuration = 'S2D' ; ParentVHD = 'Win2022_G2.vhdx' ; SSDNumber = 1; SSDSize=1TB ; MGMTNICs=1 }
|
||||
|
||||
#optional Windows 11 machine for management
|
||||
$LabConfig.VMs += @{ VMName = 'Win11' ; ParentVHD = 'Win1121H2_G2.vhdx' ; MGMTNICs=1}
|
||||
|
||||
```
|
||||
|
||||
# The lab
|
||||
|
||||
Run all code from DC. Follow [Scenario.ps1](/Scenarios/AzSHCI%20and%20MDT/Scenario.ps1). Notice one part that needs to be adjusted and ran from hyper-v host (to create empty VMs and boot it)
|
||||
Run all code from DC or Management machine. Follow [Scenario.ps1](/Scenarios/AzSHCI%20and%20MDT/Scenario.ps1). Notice one part that needs to be adjusted and ran from hyper-v host (to create empty VMs and boot it).
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/PowerShell_ISE01.png)
|
||||
|
||||
## Region download and install binaries
|
||||
## Region prereqs
|
||||
|
||||
This region will download following binaries
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer01.png)
|
||||
|
||||
and install SQL, ADK and MDT. Note: it will download components from internet as ADK and SQL are just online installers.
|
||||
and install SQL, ADK and MDT to MDT Server and ADK and MDT to management machine. Note: it will download components from internet as ADK and SQL are just online installers.
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer02.png)
|
||||
|
||||
## Region configure MDT
|
||||
|
||||
This region configures WinPE settings, imports AzSHCI OS, configures SQL to allow named pipes, adds Task Sequence and configures MDT to use database.
|
||||
This region configures WinPE settings, imports AzSHCI OS, configures SQL to use TCP/IP or named pipes, adds Task Sequence and configures MDT to use database.
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/MDT01.png)
|
||||
|
||||
|
@ -73,7 +89,7 @@ Demonstrates setting up MDT account to be able to access deployment share, and a
|
|||
|
||||
## Region configure Bootstrap ini and generate WinPE
|
||||
|
||||
Configures bootstrap ini, so when booting WinPE, it uses MDTUser identity and connects to DC to deployment share.
|
||||
Configures bootstrap ini, so when booting WinPE, it uses MDTUser identity and connects to DC to deployment share. Also PowerShell is enabled in Windows PE.
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer03.png)
|
||||
|
||||
|
@ -83,14 +99,26 @@ Installs WDS feature, configures WDS to not require F12 for prestaged machines a
|
|||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/PowerShell02.png)
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/WDS01.png)
|
||||
|
||||
## Region Configure MDT monitoring
|
||||
|
||||
Creates MDT monitoring Firewall rule and enables monitoring on deployment share.
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/PowerShell03.png)
|
||||
|
||||
## Region replace customsettings.ini ith all DB data to query (wizard output)
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/MDT08.png)
|
||||
|
||||
Same as if you would click on "Configure Database Rules" (with all options selected) as on picture below
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/MDT07.png)
|
||||
|
||||
## Region configure SQL to be able to access it remotely using MDTUSer account
|
||||
|
||||
Will configure firewall rule to allow named pipes remote access and will enable MDTAccount as db_datareader using sqlserver powershell module
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/PowerShell05.png)
|
||||
|
||||
## Region Run from Hyper-V Host to create new, empty VMs
|
||||
|
||||
Creates 4 VMs in specified directory (you can adjust memory startup bytes, or number of VMs). By default there are 4 VMs, 4GB RAM each. You can adjust VMs down to 1GB if nested virt is not enabled.
|
||||
|
@ -115,19 +143,15 @@ Since machines booted in order (AzSHCI1 then AzSHCI2 ...) we can simply generate
|
|||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/MDT06.png)
|
||||
|
||||
As you can see, WDS will let machine boot if attribute is present
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer05.png)
|
||||
|
||||
## Region replace customsettings.ini ith all DB data to query (wizard output)
|
||||
It's the same attribute that is displayed in WDS Console. Since WDS management cannot be installed to Win11, screenshot below is from server "MDT".
|
||||
|
||||
Same as if you would click on "Configure Database Rules" (with all options selected) as on picture below
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer07.png)
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/MDT07.png)
|
||||
|
||||
## Region configure SQL to be able to access it remotely using MDTUSer account
|
||||
|
||||
Will configure firewall rule to allow named pipes remote access and will enable MDTAccount as db_datareader using sqlserver powershell module
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/PowerShell05.png)
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer08.png)
|
||||
|
||||
## Reboot machines
|
||||
|
||||
|
@ -135,4 +159,4 @@ Will configure firewall rule to allow named pipes remote access and will enable
|
|||
|
||||
Notice deployment progress in MDT monitoring section
|
||||
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer06.png)
|
||||
![](/Scenarios/AzSHCI%20and%20MDT/Screenshots/Explorer09.png)
|