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
This article shows you how to set up a class for emulating, configuring, testing, and troubleshooting virtual and real networks using [GNS3](https://www.gns3.com/) software.
17
+
This article shows you how to set up a class for emulating, configuring, testing, and troubleshooting networks using [GNS3](https://www.gns3.com/) software.
18
18
19
19
This article has two main sections. The first section covers how to create the lab. The second section covers how to create the [template machine](./classroom-labs-concepts.md#template-virtual-machine) with nested virtualization enabled and with GNS3 installed and configured.
20
20
@@ -50,11 +50,13 @@ To configure the template VM, complete the following tasks:
50
50
51
51
To prepare the template virtual machine for nested virtualization, follow the detailed steps in [enable nested virtualization](how-to-enable-nested-virtualization-template-vm.md).
52
52
53
+
If you created a lab template VM with a non-admin account, add the non-admin account to the **Hyper-V Administrators** group. For more information about using nested virtualization with a non-admin account, see [non-admin user best practices](concept-nested-virtualization-template-vm.md#non-admin-user).
54
+
53
55
### Install GNS3
54
56
55
57
1. Connect to the template VM by using remote desktop.
56
58
57
-
1. Follow the detailed instructions on the GNS3 website, to [install GNS3 on Windows](https://docs.gns3.com/docs/getting-started/installation/windows).
59
+
1. Follow the detailed instructions on the GNS3 website, to [install GNS3 on Windows](https://docs.gns3.com/docs/getting-started/installation/windows).
58
60
59
61
1. Make sure to select **GNS3 VM** in the component dialog:
60
62
@@ -75,11 +77,11 @@ To prepare the template virtual machine for nested virtualization, follow the de
75
77
76
78
When the setup finishes, a zip file `GNS3.VM.Hyper-V.2.2.17.zip` is downloaded to the same folder as the installation file. The zip file contains the virtual disks and the PowerShell script to create the Hyper-V virtual machine.
77
79
78
-
To create the GNS 3 VM:
80
+
To create the GNS 3 VM:
79
81
80
82
1. Connect to the template VM by using remote desktop.
81
83
82
-
1. Extract all files in the `GNS3.VM.Hyper-V.2.2.17.zip` file.
84
+
1. Extract all files in the `GNS3.VM.Hyper-V.2.2.17.zip` file. If the template VM has a non-admin account for lab users, extract the files in a location accessible to the non-admin account.
83
85
84
86
1. Right-select the `create-vm.ps1` PowerShell script, and then select **Run with PowerShell**.
85
87
@@ -115,6 +117,8 @@ Now that you installed GNS3, and added the GNS3 VM, configure GNS 3 to use the H
115
117
116
118
Next, you can add appliances for the class. Follow the detailed steps from the GNS3 documentation to [install appliances from the GNS3 marketplace](https://docs.gns3.com/docs/using-gns3/beginners/install-from-marketplace).
117
119
120
+
If the template VM has a non-admin account for lab users, install the appliances to a location accessible to the non-admin account. Optionally, you can set the preferences for the admin and non-admin user to look for appliances and projects in a location accessible by both users.
121
+
118
122
### Prepare to publish template
119
123
120
124
Now that you set up the template virtual machine, verify the following key points before you publish the template:
Copy file name to clipboardExpand all lines: articles/lab-services/concept-nested-virtualization-template-vm.md
+16-9Lines changed: 16 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,11 +36,11 @@ Before setting up a lab with nested virtualization, here are a few things to tak
36
36
37
37
- Hyper-V guest VMs are licensed as independent machines. For information about licensing for Microsoft operation systems and products, see [Microsoft Licensing](https://www.microsoft.com/licensing/default). Check licensing agreements for any other software you use, before installing it on the template VM or guest VMs.
38
38
39
-
- Virtualization applications other than Hyper-V are[*not* supported for nested virtualization](/virtualization/hyper-v-on-windows/user-guide/nested-virtualization#3rd-party-virtualization-apps). This includes any software that requires hardware virtualization extensions.
39
+
- Virtualization applications other than Hyper-V [*aren't* supported for nested virtualization](/virtualization/hyper-v-on-windows/user-guide/nested-virtualization#3rd-party-virtualization-apps). This includes any software that requires hardware virtualization extensions.
40
40
41
41
## Enable nested virtualization for a lab
42
42
43
-
To avoid that lab users need to enable nested virtualization on their lab VM and install the nested VMs inside it, you can prepare a lab template. When you publish the lab, each lab user has a lab VM that already contains the nested virtual machines.
43
+
You can enable nested virtualization and create nested Hyper-V VMs on the template VM. When you publish the lab, each lab user has a lab VM that already contains the nested virtual machines.
44
44
45
45
To enable nested virtualization for a lab:
46
46
@@ -77,12 +77,12 @@ You can connect to a lab VM from another lab VM or a nested VM without any extra
77
77
Consider the following sample lab setup:
78
78
79
79
- Lab VM 1 (Windows Server 2022, IP 10.0.0.8)
80
-
- Nested VM 1-1 (Ubuntu 20.04, IP 192.168.0.102)
81
-
- Nested VM 1-2 (Windows 11, IP 192.168.0.103, remote desktop enabled and allowed)
80
+
- Nested VM 1-1 (Ubuntu 20.04, IP 192.168.0.102)
81
+
- Nested VM 1-2 (Windows 11, IP 192.168.0.103, remote desktop enabled and allowed)
82
82
83
83
- Lab VM 2 (Windows Server 2022, IP 10.0.0.9)
84
-
- Nested VM 2-1 (Ubuntu 20.04, IP 192.168.0.102)
85
-
- Nested VM 2-2 (Windows 11, IP 192.168.0.103, remote desktop enabled and allowed)
84
+
- Nested VM 2-1 (Ubuntu 20.04, IP 192.168.0.102)
85
+
- Nested VM 2-2 (Windows 11, IP 192.168.0.103, remote desktop enabled and allowed)
86
86
87
87
To connect with SSH from lab VM 2 to nested lab VM 1-1:
88
88
@@ -108,12 +108,19 @@ To connect with RDP from lab VM 2, or its nested VMs, to nested lab VM 1-2:
108
108
109
109
1. On lab VM 2, or its nested VMs, connect using RDP to `10.0.0.8:3390`
110
110
111
-
112
111
> [!IMPORTANT]
113
112
> Include `~\` in front of the user name. For example, `~\Administrator` or `~\user1`.
114
113
115
114
## Recommendations
116
115
116
+
### Non-admin user
117
+
118
+
You may choose to create a non-admin user when creating your lab. There are a few things to note when using nested virtualization with a non-admin account.
119
+
120
+
- To be able to start or stop VMs, the non-admin user must be added to **Hyper-V Administrators** group.
121
+
- The non-admin user can't mount drives.
122
+
- The Hyper-V VM files must be saved in a location accessible to the non-admin user.
123
+
117
124
### Processor compatibility
118
125
119
126
The nested virtualization VM sizes may use different processors as shown in the following table:
@@ -139,11 +146,11 @@ When you create the nested virtual machines, choose the [VHDX file format](/open
139
146
140
147
### Configure the number of vCPUs for nested VMs
141
148
142
-
By default, when you create the nested virtual machine, only one virtual CPU (*vCPU*) is assigned. Depending on the operating system, and software of the nested VM, you might have to increase the number of vCPUs.
149
+
By default, when you create the nested virtual machine, only one virtual CPU (*vCPU*) is assigned. Depending on the operating system, and software of the nested VM, you might have to increase the number of vCPUs. For more information about managing and setting nested VM CPU resources, see [Hyper-V processor performance](/windows-server/administration/performance-tuning/role/hyper-v-server/processor-performance) or [Set-VM](/powershell/module/hyper-v/set-vm) PowerShell cmdlet.
143
150
144
151
### Configure the assigned memory for nested VMs
145
152
146
-
When you create the nested virtual machine, the minimum assigned memory might not be sufficient for the operating system and installed software of the nested VM. You might have to increase the minimum amount of assigned memory for the nested VM.
153
+
When you create the nested virtual machine, the minimum assigned memory might not be sufficient for the operating system and installed software of the nested VM. You might have to increase the minimum amount of assigned memory for the nested VM. For more information about managing and setting nested VM CPU resources, see [Hyper-V Host CPU Resource Management](/windows-server/virtualization/hyper-v/manage/manage-hyper-v-minroot-2016) or [Set-VM](/powershell/module/hyper-v/set-vm) PowerShell cmdlet.
0 commit comments