Install-Lab
SYNOPSIS
Starts the process of lab deployment
SYNTAX
Install-Lab [-NetworkSwitches] [-BaseImages] [-VMs] [-Domains] [-AdTrusts] [-DHCP] [-Routing]
[-PostInstallations] [-SQLServers] [-Orchestrator2012] [-WebServers] [-SharepointServer] [-CA] [-ADFS]
[-DSCPullServer] [-VisualStudio] [-Office2013] [-Office2016] [-AzureServices] [-TeamFoundation]
[-FailoverStorage] [-FailoverCluster] [-FileServer] [-HyperV] [-WindowsAdminCenter] [-Scvmm] [-Scom]
[-Dynamics] [-RemoteDesktop] [-ConfigurationManager] [-StartRemainingMachines] [-CreateCheckPoints]
[-InstallRdsCertificates] [-InstallSshKnownHosts] [-PostDeploymentTests] [-NoValidation]
[[-DelayBetweenComputers] <Int32>] [<CommonParameters>]
DESCRIPTION
If called without any parameters, Install-Lab will: - Create all necessary base (parent) disks for all operating systems to be used in the lab - Create all virtual networks to be used in the lab - Create all machines to be used in the lab - Deploy and configure all machines defined in the lab in following order: Root DCs Routing DHCP Servers First child DCs Additional DCs Create AD trusts Certificate (CA) servers SQL servers 2008/2008R2/2012/2014 Web servers Orchestrator servers 2012 Exchange servers 2013 Sharepoint servers 2013 Visual Studio Office 2013 Start any machines without any AutomatedLab roles
If called with parameters, only the action(s) specified by the parameters will be performed.
EXAMPLES
Example 1
Install-Lab
Deploy and configure all machines defined in the lab in following order: Root DCs Routing DHCP Servers First child DCs Additional DCs Create AD trusts Certificate (CA) servers SQL servers 2008/2008R2/2012/2014 Web servers Orchestrator servers 2012 Exchange servers 2013 Sharepoint servers Visual Studio Office 2013 Start any machines without any AutomatedLab roles
Example 2
Install-Lab -BaseImages
Creates all needed base images if these are not already present. Size and/or integrity is NOT checked/verified. If the base image (disk) exists, it will considered good.
Example 3
Install-Lab -BaseImages -NetworkSwitches -VMs
Creates all needed base images if these are not already present. Size and/or integrity is NOT checked/verified. If the base image (disk) exists, it will considered good. All virtual network to be used in lab will be created.
Example 4
Install-Lab -BaseImages -NetworkSwitches -VMs -NoValidation
Same as first example but lab will be attempted validated/checked for common configuration errors. Not recommended. Use only if experiencing issues.
Example 5
Install-Lab -Domains -CA -SQLServers -WebServers -DelayBetweenComputers 30
Deployment/configuration of all domain controllers, all Certificate (CA) servers, SQL servers and Web servers will be performed. There will be a deplay of 30 seconds start of each machine if more than one machine is required to start at the same time. Use to avoid disk congestion (spread the 'load').
Example 6
Install-Lab -StartRemainingMachines -PostInstallations
Remaining machines (typically those without any AutomatedLab role), will be started and checked for readiness before contiuing.
None
PARAMETERS
-ADFS
Install all ADFS components
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-AdTrusts
Start configuring of AD trusts between all AD forests in the lab
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-AzureServices
Deploy only Azure services
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-BaseImages
Create base images (parent disks)
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-CA
Start installation of all Certificate (CA) servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-ConfigurationManager
Deploy ConfigMgr
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-CreateCheckPoints
Create checkpoints between each AutomatedLab role. Ie Checkpoint between AD and CA and SQL etc
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-DelayBetweenComputers
Seconds to wait between starting each lab machine
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-DHCP
Start installation of DHCP servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Domains
Start installation of Root DCs, First Child DCs and additional DCs. Note that lab machines with Routing role (if any), will be installed between Root DCs and First Child DCs.
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-DSCPullServer
Install all DSC Pull Servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Dynamics
Deploy Dynamics 365
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-FailoverCluster
Deploy only Failover Clusters
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-FailoverStorage
Deploy ISCSI targets
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-FileServer
Deploy File Servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-HyperV
Deploy Hyper-V VMs
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-InstallRdsCertificates
Install certificates of virtual machines
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-InstallSshKnownHosts
Add lab VMs to SSH known hosts file
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-NetworkSwitches
Create virtual networks
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-NoValidation
Disable validation of the lab configuration (and thereby missing out on avoiding common configuration errors)
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Office2013
Start installation of Office 2013 on all lab machines with this defined
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Office2016
Install all Office 2016 Servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Orchestrator2012
Start installation of all Orchestrator 2012 servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-PostDeploymentTests
Run post-deployment tests using Pester
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-PostInstallations
Start all post insallations of machines with this defined
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-RemoteDesktop
Deploy Remote Desktop Services
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Routing
Start installation of machines with Routing role
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Scom
Deploy SCOM
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Scvmm
Deploy SCVMM
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-SharepointServer
Start installation of all Sharepoint servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases: Sharepoint2013
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-SQLServers
Start installation of all SQL servers. SQL servers will be installed in batches of 4.
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-StartRemainingMachines
Start all remaining machines which are not already started
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-TeamFoundation
Deploy only CI/CD servers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-VisualStudio
Start installation of Visual Studio on all lab machines with this defined
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-VMs
Create lab machines
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-WebServers
WebServers
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-WindowsAdminCenter
Deploy Windows Admin Center
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.