In-Depth MDT Process Question RRS feed

  • Question

  • Hi All, I'm in the midst of building my first reference image and my brain keeps coming back to a question I can't seem to find any info on. I've looked through no telling how many web pages/articles and don't see any mention of it. 

    When you kick off a deployment, are the scripts in MDT (ztigather,ztiutility,ltisuspend, etc) and application installers, the image, basically the deployment share,all downloaded locally and THEN run? Or does the process look at cs.ini/task sequence and then run the needed script for a particular step across the network one at a time as needed? Meaning, the image only downloads when it is called, any apps and their source files are installed across the network as they are called. 

    I hope some of that makes sense, and it probably isn't even something I HAVE to know. More curiosity at this point. I think what I'm wondering is when you start a deployment, will it be a constant stream of bandwidth being used the entire time the deployment is happening, or does it download everything at the beginning and then run it locally so the bandwidth usage time is shorter?

    Tuesday, February 26, 2019 2:48 PM

All replies

  • Look at LTICopyScripts.wsf, those scripts are copied to the local drive as they form the basis of what MDT will use during the deployment.

    When you kick off a deployment it will process customsettings.ini first and then, if you have one, your database. Once you choose a task sequence then MDT will process that which includes applying the image for that TS. Once the OS is applied and the system boots to it, then MDT will continue on with the TS and process the State Restore part of the sequence. That is typically where you have custom programs install, maybe some custom scripts, etc.

    If you're worried about network bandwidth, really the only time it would be under "load" is when the actual OS image is being applied to the disk (it's copied from your deployment share). You won't notice unless you're using slow hubs and not switches. Even then this is internal network traffic. The only time you'll use internet bandwidth is when Windows checks for updates assuming you're not using your own WSUS server.

    Daniel Vega

    Tuesday, February 26, 2019 3:13 PM
  • Thanks for that Dan. Bandwidth isn't a concern as we have gig switches everywhere and there won't be any deployments across a WAN. I was just more curious about what the individual tasks and bandwidth "spikes" if you can call them that would like like when you take a step back to see the whole thing. I'll go have a peek at LTICopyScripts.wsf

    I wasn't sure if it was like below, or if most of it was just run remotely and it basicallt only downloaded the image.

    Task Sequence:

    Task1 needs scriptA so it is downloaded to the local PC and processed

    Then Task2 needs scriptB so it is downloaded and processed

    Then Task3 needs scriptC which installs APP1 so the script, the app installer and any other needed files are downloaded.

    Then Task4 etc 

    As far as the LTICopyScripts, are they downloaded as needed, or based on which ones it needs, downloaded all at once?

    Again, probably not necessary to know quite this much, but curiosity and I are really old friends!

    Tuesday, February 26, 2019 3:31 PM
  • So if you look at the lticopyscripts you see which scripts get copied locally. MDT starts with those. Once the task sequence is selected and as it start to process, it'll copy the "injected" drivers locally as well.

    		' Create a list of scripts to copy.
    		ScriptsToCopy = Array("LiteTouch.wsf", "ZTIUtility.vbs", "ZTIGather.wsf", "ZTIGather.xml", _
    			"Wizard.hta", "Credentials_ENU.xml", "Credentials_scripts.vbs", "WizUtility.vbs", "Wizard.css", _
    			"Wizard.ico", "BackButton.jpg", "plusicon.gif", "minusico.gif", "DeployWiz_Definition_ENU.xml", _
    			"DeployWiz_Initialization.vbs", "DeployWiz_Validation.vbs", "Summary_Definition_ENU.xml", _
    			"Summary_scripts.vbs", "LTICleanup.wsf", "LTIGetFolder.wsf", "ZTINICConfig.wsf", _
    			"ZTINICUtility.vbs","ZTIBCDUTILITY.VBS", "ZTIDataAccess.vbs", "LTISuspend.wsf", _
    			"ZTIDiskUtility.vbs", "ZTIRunCommandHidden.wsf", "header-image.png", "NavBar.png", "Computer.png", _
    			"SetupComplete.cmd", "SetupRollback.cmd", "ZTISetupRollback.wsf", "LTITriggerUpgradeFailure.wsf", "LTIBootstrap.vbs")
    		SourcePath = oUtility.ScriptDir & "\"		
    		TargetPath = oUtility.LocalRootPath & "\Scripts\"

    As for application installers, be it an exe or if you created a script to run the installer, that's run from your deployment share. Still most application installers aren't going to be anywhere near as big as the OS, so they run from your DS location and given your use of gig switches it'll be fast.

    Daniel Vega

    Tuesday, February 26, 2019 3:48 PM
  • Oh speaking of drivers, it's best to do "total control" so you aren't injecting boat loads of drivers that are useless for the system you are deploying to.

    See: MDT 2013 Lite Touch Driver Management

    Daniel Vega

    Tuesday, February 26, 2019 3:49 PM
  • Perfect. Now maybe my brain can move on to something else. Drivers were getting closer to the top of my to do list. I've already looked into what MDT can do with drivers. The deployment infrastructure I inherited basically had a dump of drivers for 2-3 different models in WDS. I know have 5 models to account for so MDT should be able to help me greatly with getting those sorted.

    Thanks again for the info!

    Tuesday, February 26, 2019 4:07 PM