You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 15, 2024. It is now read-only.
Copy file name to clipboardExpand all lines: Detailed-Setup-Instructions.md
+26-22Lines changed: 26 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
Please refer to this document to assist in installing and setting up the `PSAutolab` module on your computer. Run all commands from an **elevated** Windows PowerShell session. In other words, *run Windows PowerShell as administrator*. You will know you are elevated if you see the word `Administrator` in the title bar of the PowerShell window. __Do NOT run this module in PowerShell 7__. It is assumed you are running this on Windows 10 Professional or Enterprise editions.
4
4
5
-
It is also assumed that you have administrator rights to your computer and can makes changes. If your computer is controlled by Group Policy, you may encounter problems. You should also be logged in with a local or domain user account. The setup process may not work properly if using an O365 or Microsoft account to logon to Windows.
5
+
It is also assumed that you have administrator rights to your computer and can make changes. If your computer is controlled by Group Policy, you may encounter problems. You should also be logged in with a local or domain user account. The setup process may not work properly if using an O365 or Microsoft account to logon to Windows.
6
6
7
7
It is *possible* to run this module with nested virtualization inside a Windows 10 Hyper-V virtual machine but it is **not** recommended. Some networking features may not work properly and overall performance will likely be reduced.
8
8
@@ -20,7 +20,7 @@ Caption MemoryGB
20
20
Microsoft Windows 10 Pro 32
21
21
```
22
22
23
-
If the Caption shows anything other than Pro or Enterprise this module may not work. Although it appears that Windows 10 Education might be supported. In fact, if you can't even open a PowerShell prompt, this module won't work on your computer.
23
+
If the Caption shows anything other than Pro or Enterprise this module may not work. Although it appears that Windows 10 Education might be supported. If you can't even open a PowerShell prompt, this module won't work on your computer.
24
24
25
25
The memory size should be at least 12GB. 16GB or greater is recommended. If the number is less than 12, **STOP**. It is unlikely you have enough installed memory. Depending on the configuration you want to run, it *might* be possible to proceed with less memory. Open an Issue and ask for guidance indicating your memory settings from this command:
26
26
@@ -74,6 +74,22 @@ You should have close to 100GB of free space on a fixed hard drive such as C or
74
74
75
75
The module requires the Hyper-V feature on Windows 10. Please refer to the documentation for your computer hardware to determine if it supports virtualization. You may need to configure settings in your BIOS. You don't need to manually enable the Hyper-V feature now, although you are welcome to if you want to verify it is available.
76
76
77
+
### Pester
78
+
79
+
The module uses a standard PowerShell tool called Pester to validate lab configurations. Without getting into technical details, if you are running the out-of-the-box version of Pester on Windows 10, **you need to manually update Pester** before attempting to install this module. In an elevated Windows PowerShell session run this command:
80
+
81
+
```powershell
82
+
Get-Module Pester -ListAvailable
83
+
```
84
+
85
+
If the _only_ result you get is for version `3.4.0`, then you must run:
Re-run the `Get-Module` to verify version `4.10.1` is installed. If you have newer versions installed, that will have no effect on this module. Once you have verified Pester version 4.10.1 you can install the PSAutolab module.
You may see a newer version number than what is indicated here. The `README` file indicates the current version in the PowerShell Gallery.
@@ -130,8 +146,9 @@ PctFreeMemory : 59.71
130
146
Processor : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
131
147
IsElevated : True
132
148
RemotingEnabled : True
149
+
NetConnectionProfile : Private
133
150
HyperV : 10.0.18362.1
134
-
PSAutolab : 4.16.0
151
+
PSAutolab : 4.19.0
135
152
Lability : {0.19.1, 0.19.0, 0.18.0}
136
153
Pester : {5.0.2, 4.10.1, 4.9.0, 4.8.1...}
137
154
PowerShellGet : 2.2.4.1
@@ -159,20 +176,7 @@ Or open the file with Notepad.
159
176
160
177
Another option is to use the `Get-LabSummary` command. This will show you what computers will be created and how they will be created. The Computername will also be the virtual machine name.
Description : Windows Server 2016 Standard 64bit English Evaluation
170
-
Role : RDP
171
-
IPAddress : 192.168.3.75
172
-
MemoryGB : 4
173
-
Processors : 1
174
-
Lab : SingleServer-GUI-2016
175
-
```
179
+

176
180
177
181
You can run `Unattend-Lab` for a completely hands-free experience.
178
182
@@ -198,7 +202,7 @@ If you encounter errors running an unattended setup, you should step through the
198
202
199
203
Errors that affect setup should happen in one of these steps. If so, open an issue with the configuration name, the command you were working on and the error message. Also include the output from `Get-PSAutolabSetting`.
200
204
201
-
After about 10 minutes, you can manually test to see if the configuration has finalized.
205
+
After about 10 minutes, you can manually test to see if the configuration has converged.
202
206
203
207
```powershell
204
208
Invoke-Pester .\vmvalidate.test.ps1
@@ -232,13 +236,13 @@ NonNodeData = @{
232
236
#EnvironmentPrefix = 'AutoLab-'
233
237
```
234
238
235
-
Remove the `#` character before `EnvironmentPrefix`. If you want to change the value from `Autolab-` to something else go ahead. The prefix will be inserted before the computername to create the virtual machine name.
239
+
Remove the `#` character before `EnvironmentPrefix`. If you want to change the value from `Autolab-` to something else go ahead. The prefix will be inserted before the computer name to create the virtual machine name.
236
240
237
241
This setting should only be used in special situations as it can be confusing. While every effort has been made to ensure compatibility with commands in this module, there is no guarantee of 100% success. Also note that any changes you make to the configuration files could be overwritten in future updates or when you run `Refresh-Host`.
238
242
239
243
## Troubleshooting Tips
240
244
241
-
Occasionally, things can go wrong for no apparent reason. If you ran through the manual steps to setup a lab but the validations tests is still failing, you may need to stop and restart the virtual machine that is causing problems. For example, *sometimes* the SRV2 member in the `PowerShellLab` configuration simply won't pass validation, often because it can't be connected to. The best solution is to shut down the virtual machine in either the Hyper-V Manager or from PowerShell.
245
+
Occasionally, things can go wrong for no apparent reason. If you ran through the manual steps to setup a lab but the validation tests are still failing, you may need to stop and restart the virtual machine that is causing problems. For example, *sometimes* the SRV2 member in the `PowerShellLab` configuration simply won't pass validation, often because it can't be connected to. The best solution is to shut down the virtual machine in either the Hyper-V Manager or from PowerShell.
242
246
243
247
```powershell
244
248
Stop-VM srv2 -force
@@ -256,4 +260,4 @@ Wait about 5 minutes and then test again.
256
260
257
261
If encounter problems getting any of this to work, you are welcome to post an Issue. If you get the module installed, please include the results of `Get-PSAutolabSetting`. If your problem is meeting one of the requirements, we will do our best to help. Although if your computer is locked down or otherwise controlled by corporate policies there may not be much that we can do.
Most of the commands in the module use a domain-specific language (DSL), or a set of aliases to reference the actual commands. This DSL is intended to make it easier for beginner PowerShell users to use this module. Experienced users are welcome to use the proper command names if they wish.
0 commit comments