The Deployment Bunny

OS Deployment, Virtualization, Microsoft based Infrastructure…

  • Archives

  • Meta

Posts Tagged ‘Session’

From Ignite 2016 – Master Windows 10 Deployments – Expert Level (BRK4023)

Posted by Mikael Nystrom on September 28, 2016

Yesterday me and Johan Arwidmark did a session at Microsoft Ignite, we had around +1000 attendees. The session was recorded and here it is:



Posted in Microsoft Ignite, Recording, Session | Tagged: , , | 2 Comments »

Microsoft Virtual Academy (MVA) – Storage Spaces Deep Dive script are now published

Posted by Mikael Nystrom on February 27, 2016

In springtime 2015, me, Markus Lassfolk and Ola Skog did an MVA recording about Storage Spaces, during that recording we did use some scripts and someone said “Please, could you publish them?” (more then one time) and here they are…

I have also added the main script here for indexing and easy “copy-paste” operations…

1..12 | % {New-VHD -Path E:\demo\disk$_.VHDX -Dynamic –SizeBytes 400GB}
13..48 | % {New-VHD -Path E:\demo\disk$_.VHDX -Dynamic –SizeBytes 2TB}

$VHDs = Get-ChildItem E:\Demo
foreach ($VHD in $VHDs)
    Mount-VHD -Path $VHD.FullName

Get-PhysicalDisk -CanPool $true
Get-StorageSubSystem -FriendlyName *Spaces*

$StorageSubSystem = Get-StorageSubSystem -FriendlyName *Spaces*
$PhysicalDisk = Get-PhysicalDisk -CanPool $true
$PoolName = "stpool01"

New-StoragePool -FriendlyName $PoolName -StorageSubSystemFriendlyName $StorageSubSystem.FriendlyName -PhysicalDisks $PhysicalDisk

Get-StoragePool -FriendlyName $PoolName | Get-PhysicalDisk | Where-Object -Property Size -EQ -Value 428691423232 | Set-PhysicalDisk -MediaType SSD #For Demo Only 
Get-StoragePool -FriendlyName $PoolName | Get-PhysicalDisk | Where-Object -Property Size -NE -Value 428691423232 | Set-PhysicalDisk -MediaType HDD #For Demo Only 

Get-StoragePool -FriendlyName $PoolName | Get-PhysicalDisk | Where-Object -Property MediaType -EQ -Value SSD
Get-StoragePool -FriendlyName $PoolName | Get-PhysicalDisk | Where-Object -Property MediaType -EQ -Value HDD

$SSDTierName = "SSDTier"
$HDDTierName = "HDDTier"

$SSDTier = Get-StoragePool -FriendlyName $PoolName | New-StorageTier -MediaType SSD -FriendlyName $SSDTierName
$HDDTier = Get-StoragePool -FriendlyName $PoolName | New-StorageTier -MediaType HDD -FriendlyName $HDDTierName

Set-StoragePool -FriendlyName $PoolName -RetireMissingPhysicalDisks Always -RepairPolicy Parallel
#Preserve 1 HDD plus 8 GB and 1 SSD plus 8 GB per enclosure for the automatic repair proccess to work correctly
#Use at least one fewer columns then maximum!

Get-StoragePool -FriendlyName $PoolName | Select-Object RetireMissingPhysicalDisks,RepairPolicy

# 2 Tier 2 way Mirror with 6 columns
$vDisk01Name = "vDisk01"
$vDisk01 = New-VirtualDisk  `
-FriendlyName $vDisk01Name  `
-ResiliencySettingName Mirror  `
-NumberOfDataCopies 2  `
-NumberOfColumns 5  `
-StoragePoolFriendlyName $PoolName  `
-StorageTiers $SSDTier, $HDDTier  `
-StorageTierSizes 8gb, 32gb

Get-VirtualDisk -FriendlyName $vDisk01Name | Format-List FriendlyName,OperationalStatus,HealthStatus,ProvisioningType,ParityLayout,WriteCacheSize,AllocatedSize,Interleave,IsEnclosureAware,NumberOfAvailableCopies,NumberOfColumns,PhysicalDiskRedundancy,Size

# 2 Tier 3 way Mirror with 4 columns
$vDisk02Name = "vDisk02"
$vDisk02 = New-VirtualDisk  `
-FriendlyName $vDisk02Name  `
-ResiliencySettingName Mirror  `
-NumberOfDataCopies 3  `
-NumberOfColumns 3  `
-StoragePoolFriendlyName $PoolName  `
-StorageTiers $SSDTier, $HDDTier  `
-StorageTierSizes 8gb, 32gb

Get-VirtualDisk -FriendlyName $vDisk02Name | Format-List FriendlyName,OperationalStatus,HealthStatus,ProvisioningType,ParityLayout,WriteCacheSize,AllocatedSize,Interleave,IsEnclosureAware,NumberOfAvailableCopies,NumberOfColumns,PhysicalDiskRedundancy,Size

# Parity with 17 col
$vDisk03Name = "vDisk03"
$vDisk03 = New-VirtualDisk  `
-FriendlyName $vDisk03Name  `
-ResiliencySettingName Parity  `
-StoragePoolFriendlyName $PoolName  `
-Size 100GB  `
-PhysicalDiskRedundancy 2

Get-VirtualDisk -FriendlyName $vDisk03Name | Format-List FriendlyName,OperationalStatus,HealthStatus,ProvisioningType,ParityLayout,WriteCacheSize,AllocatedSize,Interleave,IsEnclosureAware,NumberOfAvailableCopies,NumberOfColumns,PhysicalDiskRedundancy,Size

You can also look at the original post about the MVA session itself here:

Posted in MVA, Session, Storage Spaces | Tagged: , , | Leave a Comment »

Demo Scripts from the WSUS.SE meeting 2016-02-16

Posted by Mikael Nystrom on February 26, 2016

Mattias Lehmus did a great session at the WSUS meeting 2016-02-16 and you can get them here:


Posted in Event, Session, WSUG | Tagged: , , | Leave a Comment »

Demo Scripts from Microsoft TechX Azure in Stockholm 2016-02-16

Posted by Mikael Nystrom on February 26, 2016

Markus Lassfolk and I did a couple of sessions at the Microsoft TechX Azure day, Stockholm and here are the scripts:


Read more here:


Posted in Event, Microsoft, Session | Tagged: , , | Leave a Comment »

Demo Scripts from TrueSec Windows Server 2016 Event is here

Posted by Mikael Nystrom on February 26, 2016

Here is all the scripts that we used to build and demo Windows Server 2016 at Rival, Stockholm on the 10th of February 2016


for more info about the event :


Posted in Event, Session, TrueSec | Tagged: , , | Leave a Comment »

My Sessions at Microsoft Ignite 2015

Posted by Mikael Nystrom on May 1, 2015

Banner for Ignite 2015

Hands-on Windows 10 Enterprise Deployment

Want to know how to prepare for Windows 10, or how to upgrade from Windows 7, 8, or 8.1 to Windows 10? Maybe you want to know how to build, customize, and deploy your own Windows 10 image? In this pre-day session we explore all of those areas, with hands-on labs to ensure that you’ll be ready for Windows 10 in your organization.

Sunday, May 3rd  – 9:00 am to 5:00 pm

Troubleshooting Windows 10 Deployment: Top 10 Tips and Tricks

Need help with troubleshooting Windows deployment issues? Johan and Mikael share lessons learned around handling device drivers in the deployment process, common deployment issues and their workarounds, parsing log files, WinPE and PXE troubleshooting, UEFI deployments. As a foundation, Microsoft Deployment Toolkit and Microsoft System Center Configuration Manager will be used. You can expect a lot of live demos, tips, and tricks in this session.

Wednesday, May 6th – 10:45 am to 12:00 pm

Expert-Level Windows 10 Deployment

Join us for a live demo on how to build a Windows deployment solution, based on Microsoft System Center Configuration Manager. In the session we are taking OS Deployment in Microsoft Deployment Toolkit and System Center Configuration Manager to its outer limits. Deployment tips, tricks, and hard core debugging in a single session. You can expect a lot of live demos in this session.

Thursday, May 7 7th – 9:00 pm to 10:15 pm

Windows 10 Deployment: Ask the Experts

Still have questions about Windows deployment, even after all the other sessions this week? For this session, we gather as many experts as we can find for a roundtable Q&A session, with plenty of “official” and “real-world” answers for everyone, troubleshooting and implementation advice, and probably a fair number of opinions and “it depends” answers as well.

Thursday, May 7 7th – 3:15 pm to 10:15 pm

Book signing in the Bookstore

If you for any reason would like to have a book written by me signed, I’ll be there and I will happily sign it for you:

Wednesday, May 6th – 12:30 pm

Posted in ConfigMgr, Deployment, Event, Ignite, MDT | Tagged: , , , , , , , | Leave a Comment »

TechEd EU 2014 – WIN-B314

Posted by Mikael Nystrom on November 2, 2014

During the session I did demo some scripts and here they are:

Script to configure the Build LAB Deployment share:

Import-Module "C:\Program Files\Microsoft Deployment Toolkit\bin\MicrosoftDeploymentToolkit.psd1"
New-PSDrive -Name "DS001" -PSProvider MDTProvider -Root "E:\MDTBuildLab"

#Set permisions correct
net share E:\MDTBuildLab '/grant:EVERYONE,change'
icacls E:\MDTBuildLab\Captures /grant '"MDT_BA":(OI)(CI)(M)'
icacls E:\MDTBuildLab\Logs /grant '"MDT_BA":(OI)(CI)(M)'

#Create the folder structure
new-item -path "DS001:\Applications" -enable "True" -Name "Install" -Comments "" -ItemType "folder" -Verbose
new-item -path "DS001:\Applications" -enable "True" -Name "Action" -Comments "" -ItemType "folder" -Verbose
new-item -path "DS001:\Operating Systems" -enable "True" -Name "Windows 8.1 x64" -Comments "" -ItemType "folder" -Verbose
new-item -path "DS001:\Task Sequences" -enable "True" -Name "Ref" -Comments "" -ItemType "folder" -Verbose

#Import the OS
import-mdtoperatingsystem ´
-path "DS001:\Operating Systems\Windows 8.1 x64" ´
-SourcePath "G:\Raw\Windows 8.1 x64" ´
-DestinationFolder "W81X64-001" ´

#Create the Task Sequence
import-mdttasksequence ´
-path "DS001:\Task Sequences\Ref" ´
-Name "Ref Windows 8.1 x64 Enterprise" ´
-Template "Client.xml" -Comments "" ´
-ID "RW81X64" -Version "1.0" ´
-OperatingSystemPath "DS001:\Operating Systems\Windows 8.1 x64\Windows 8.1 Enterprise in W81X64-001 install.wim" ´
-FullName "ViaMonstra" ´
-OrgName "ViaMonstra" ´
-HomePage "about:blank" ´

Set-ItemProperty -Path DS001: -Name Boot.x86.LiteTouchWIMDescription -Value 'MDT Build Lab x86'
Set-ItemProperty -Path DS001: -Name Boot.x86.LiteTouchISOName -Value 'MDT Build Lab x86.iso'
Set-ItemProperty -Path DS001: -Name Boot.x64.LiteTouchWIMDescription -Value 'MDT Build Lab x64'
Set-ItemProperty -Path DS001: -Name Boot.x64.LiteTouchISOName -Value 'MDT Build Lab x64.iso'
Set-ItemProperty -Path DS001: -Name SupportX86 -Value 'False'

Script to bulk import applications

Wrapper for C++

Script to download all C++

Sample Custom Settings.ini


Posted in Session, TechEd | Tagged: , | Leave a Comment »

TechDays Sweden 19-20/11 – Den nya generationens datacenter

Posted by Mikael Nystrom on October 16, 2014

(in Swedish)

Den 18 november, d.v.s. en dag INNAN TechDays öppnar portarna för årets Microsoft konferens I Sverige kommer jag och Markus Lassfolk att köra en hel dag kring frågan hur man bygger datacenter numera. Design kommer i huvudsak röra det som kallas converged och innehållet för dagen kommer att handla om

Hyper-V, design, best pratices, nätverk, VMQ, RSS, RDMA, CPU, Minne, IOPS, Storage Spaces, Scale-Out Files server, NVGRE networks, Gateway och mycket, mycket mer. Ska du bygga, håller du på att bygga, ska du kasta ut VMware och vill veta från oss som gör det på löpande band. Kom…



Posted in Session, TechDays | Tagged: , | Leave a Comment »

NIC Conf 2014 – Meet the S.W.A.T – Team

Posted by Mikael Nystrom on January 1, 2014


During the final day of NIC 2014 you have the unique opportunity to follow the creation of a new company, the fictive ViaMonstra organization. In five continuous sessions, top gurus Kent Agerlund, Mikael Nystrom and Johan Arwidmark, will implement, live on stage, a dynamic infrastructure based on Windows Server 2012 R2 and ConfigMgr 2012 R2. Join us for a day and learn how we build the Datacenter @ ViaMonstra from nothing to a powerful System Management solution that allows for modern management and meets the increasing demands of today and tomorrow.

You can expect a lot of tips and tricks, and live demos in this session!

Read the full story and agenda here –

See you in Oslo!

Posted in NICCONF | Tagged: , | 2 Comments »

NIC 2013–I have 2,5 Session

Posted by Mikael Nystrom on January 14, 2013

Session 1: “Windows to Go in real life”

I will do a session on Windows to Go, I’ll cover the Domain Join, Certificates, Group Policy’s, Applications, and Creation using the “non-wizard” way. Basically what you need to know when Windows to Go is supposed to be used in the real world.

Session 2: “Windows 8 Hyper-V”

The session will cover Hyper-V in Windows 8, installing, configuring, how to use, what to use it for and a bunch of tips and tricks.

Session 2.5: “Developing Hydration Kits – IT Pro Automation at its best!”

My half session with Johan Arwidmark is about Hydration, something that we both have used and built during many years. Hydration is the Uber-Geek thing, it is all about insanity in automation and scripting, I’ll demo the HYDV3 kit, which will build an entire infrastructure with Server 2012, Windows 7 and Windows 8 and the entire System Server 2012 SP1 product suite fully automated.


Posted in NICCONF, Session | Tagged: | 3 Comments »