Skip to content

Commit 22b58e8

Browse files
authored
Merge pull request #151245 from v-dalc/ready
ASE: Network Readiness Checker tool (ready)
2 parents 97ba469 + 77cfec6 commit 22b58e8

12 files changed

+315
-55
lines changed

articles/databox-online/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -380,6 +380,8 @@
380380
href: /security/benchmark/azure/baselines/stack-edge-security-baseline?toc=/azure/databox-online/TOC.json
381381
- name: Shared how-tos
382382
items:
383+
- name: Check network readiness
384+
href: azure-stack-edge-deploy-check-network-readiness.md
383385
- name: Manage Edge compute
384386
href: azure-stack-edge-gpu-manage-compute.md
385387
- name: Manage Edge container registry
Lines changed: 247 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,247 @@
1+
---
2+
title: Check network readiness for Azure Stack Edge using Azure Stack Network Readiness Checker
3+
description: Pre-qualify your network before deploying Azure Stack Edge Pro GPU, Pro R, or Mini R device using Azure Stack Network Readiness Checker.
4+
services: databox
5+
author: v-dalc
6+
7+
ms.service: databox
8+
ms.subservice: edge
9+
ms.topic: how-to
10+
ms.date: 02/22/2022
11+
ms.author: alkohli
12+
13+
# Customer intent: As an IT admin, I want to save time and avoid Support calls during deployment of Azure Stack Edge devices by verifying network settings in advance.
14+
---
15+
16+
# Check network readiness for Azure Stack Edge devices
17+
18+
[!INCLUDE [applies-to-GPU-and-pro-r-and-mini-r-skus](../../includes/azure-stack-edge-applies-to-gpu-pro-r-mini-r-sku.md)]
19+
20+
This article describes how to check to see how ready your network is for deployment of Azure Stack Edge devices.
21+
22+
You'll use the Azure Stack Network Readiness Checker, a PowerShell tool that runs a series of tests to check mandatory and optional settings on the network where you deploy your Azure Stack Edge devices. The tool returns Pass/Fail status for each test and saves a log file and report file with more detail.
23+
24+
You can run the tool from any computer on the network where you'll deploy the Azure Stack Edge devices. The tool works with PowerShell 5.1, which is built into Windows.
25+
26+
## About the tool
27+
28+
The Azure Stack Network Readiness Checker can check whether a network meets the following prerequisites:
29+
30+
- The Domain Name System (DNS) server is available and functioning.
31+
32+
- The Network Time Protocol (NTP) server is available and functioning.
33+
34+
- Azure endpoints are available and respond on HTTPS, with or without a proxy server.<!--Ask Shijo: HTTPS isn't supported on a proxy server. Does the Network Readiness Checker tool check proxy server connections?-->
35+
36+
- The Windows Update server - either the customer-provided Windows Server Update services (WSUS) server or the public Windows Update server - is available and functioning.
37+
38+
- The network path has a Maximum Transmission Unit (MTU) of at least 1,500 bytes, as required by the Azure Stack Edge service.
39+
40+
- There are no overlapping IP addresses for Edge Compute.
41+
42+
- DNS resource records for Azure Stack Edge can be resolved.
43+
44+
#### Report file
45+
46+
The tool saves a report, `AzsReadinessCheckerReport.json`, with detailed diagnostics that are collected during each test. This information can be helpful if you need to [contact Microsoft Support](azure-stack-edge-contact-microsoft-support.md).
47+
48+
For example, the report provides:
49+
50+
- A list of network adapters on the machine used to run the tests, with the driver version, MAC address, and connection state for each network adapter.
51+
52+
- IP configuration of the machine used to run the tests.
53+
54+
- Detailed DNS response properties that the DNS server returned for each test.
55+
56+
- Detailed HTTP response for each test of a URL.<!--Verify: Should this also be HTTPS instead of HTTP? Does the tool check connections when a proxy server is in use?-->
57+
58+
- Network route trace for each test.
59+
60+
## Prerequisites
61+
62+
Before you begin, complete the following tasks:
63+
64+
- Review network requirements in the [Deployment checklist for your Azure Stack Edge Pro GPU device](azure-stack-edge-gpu-deploy-checklist.md).
65+
66+
- Make sure you have access to a client computer that is running on the network where you'll deploy your Azure Stack Edge devices.
67+
68+
- Install the Azure Stack Network Readiness Checker tool in PowerShell by following the steps in [Install Network Readiness Checker](#install-network-readiness-checker), below.
69+
70+
71+
## Install Network Readiness Checker
72+
73+
To install the Azure Stack Network Readiness Checker on the client computer, do these steps:
74+
75+
1. Open PowerShell on the client computer. If you need to install PowerShell, see [Installing PowerShell on Windows](/powershell/scripting/install/installing-powershell-on-windows?view=powershell-7.2&preserve-view=true).
76+
77+
1. In a browser, go to [Microsoft.AzureStack.ReadinessChecker](https://www.powershellgallery.com/packages/Microsoft.AzureStack.ReadinessChecker/1.2100.1780.756) in the PowerShell Gallery. Version 1.2100.1780.756 of the Microsoft.AzureStack.ReadinessChecker module is displayed.
78+
79+
1. On the **Install Module** tab, select the Copy icon to copy the Install-Module command that installs version 1.2100.1396.426 of the Microsoft.AzureStack.ReadinessChecker.
80+
81+
![Screenshot showing the download page for the Azure Stack Edge Network Readiness Checker tool. The Install Module tab and the Copy icon are highlighted.](./media/azure-stack-edge-deploy-check-network-readiness/network-readiness-checker-install-tool.png)
82+
83+
1. Paste in the command at the PowerShell command prompt, and press **Enter**.
84+
85+
1. Press **Y** (Yes) or **A** (Yes to All) at the following prompt to install the module.
86+
87+
```powershell
88+
Untrusted repository
89+
You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'?
90+
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"):
91+
```
92+
93+
94+
## Run a network readiness check
95+
96+
When you run the Azure Stack Network Readiness Checker tool, you'll need to provide network and device information from the [Deployment checklist for your Azure Stack Edge Pro GPU device](azure-stack-edge-gpu-deploy-checklist.md).
97+
98+
To run a network readiness check, do these steps:
99+
100+
1. Open PowerShell on a client computer running on the network where you'll deploy the Azure Stack Edge device.
101+
102+
1. Run a network readiness check by entering the following command:
103+
104+
```powershell
105+
Invoke-AzsNetworkValidation -DnsServer <string[]> -DeviceFqdn <string> [-TimeServer <string[]>] `
106+
[-Proxy <uri>] [-ProxyCredential <pscredential>] [-WindowsUpdateServer <uri[]>] [-CustomUrl <url[]>] `
107+
[-AzureEnvironment {AzureCloud | AzureChinaCloud | AzureGermanCloud | AzureUSGovernment | CustomCloud}] `
108+
[-SkipTests {LinkLayer | IPConfig | DnsServer | TimeServer | PathMtu | DuplicateIP | AzureEndpoint | WindowsUpdateServer | DnsRegistration}] `
109+
[-OutputPath <string>]
110+
```
111+
112+
To get meaningful Network Readiness Checker results that find key issues in your network setup, you need to include all of the following parameters that apply to your environment.
113+
114+
|Parameter|Description|
115+
|---------|-----------|
116+
|`-DnsServer`|IP addresses of the DNS servers (for example, your primary and secondary DNS servers).|
117+
|`-DeviceFqdn`|Fully qualified domain name (FQDN) that you plan to use for the Azure Stack Edge device.|
118+
|`-TimeServer`|FQDN of one or more Network Time Protocol (NTP) servers. (Recommended)|
119+
|`-Proxy`|URI for the proxy server, if you're using a proxy server. (Optional)|
120+
|`-ProxyCredential`|[PSCredential object](/powershell/module/microsoft.powershell.security/get-credential) containing the username and password used on the proxy server. (Required if proxy server requires user authentication)|
121+
|`-WindowsUpdateServer`|URIs for one or more Windows Server Update Services (WSUS) servers. (Optional)|
122+
|`-ComputeIPs`|The Compute IP range to be used by Kubernetes. Specify the Start IP and End IP separated by a hyphen.|
123+
|`-CustomUrl`|Lists other URLs that you want to test HTTP access to. (Optional)|
124+
|`-AzureEnvironment`|Indicates the Azure environment. Required if the device is deployed to an environment other than the Azure public cloud (Azure Cloud).|
125+
|`-SkipTests`|Can be used to exclude tests. (Optional)<br>Separate test names with a comma.|
126+
|`-OutputPath`|Tells where to store the log file and report from the tests. (Optional)<br>If you don't use this path, the files are stored in the following path: `C:\Users\<username>\AppData\Local\Temp\AzsReadinessChecker\`<br>Each run of the Network Readiness Checker overwrites the existing report.|
127+
128+
## Sample output
129+
130+
The following samples are the output from successful and unsuccessful runs of the Azure Stack Network Readiness Checker tool.
131+
132+
### Sample output: Successful test
133+
134+
The following sample is the output from a successful run of the Network Readiness Checker tool with these parameters:
135+
136+
```powershell
137+
Invoke-AzsNetworkValidation -DnsServer '10.50.10.50', '10.50.50.50' -DeviceFqdn 'aseclient.contoso.com' -TimeServer 'pool.ntp.org' -Proxy 'http://proxy.contoso.com:3128/' -SkipTests DuplicateIP -WindowsUpdateServer 'http://ase-prod.contoso.com' -OutputPath `C:\ase-network-tests`
138+
```
139+
<!--Query: Add beginning single quote to the output path string or remove the final one? No end quote in sample return data.-->
140+
141+
The tool returned this output:
142+
143+
```powershell
144+
PS C:\Users\Administrator> Invoke-AzsNetworkValidation -DnsServer '10.50.10.50', '10.50.50.50' -DeviceFqdn 'aseclient.contoso.com' -TimeServer 'pool.ntp.org' -Proxy 'http://proxy.contoso.com:3128/' -SkipTests DuplicateIP -WindowsUpdateServer 'http://ase-prod.contoso.com' -OutputPath C:\ase-network-tests
145+
146+
Invoke-AzsNetworkValidation v1.2100.1396.426 started.
147+
The following tests will be executed: LinkLayer, IPConfig, DnsServer, PathMtu, TimeServer, AzureEndpoint, WindowsUpdateServer, DnsRegistration, Proxy
148+
Validating input parameters
149+
Validating Azure Stack Edge Network Readiness
150+
Link Layer: OK
151+
IP Configuration: OK
152+
Using network adapter name 'vEthernet (corp-1g-Static)', description 'Hyper-V Virtual Ethernet Adapter'
153+
DNS Server 10.50.10.50: OK
154+
DNS Server 10.50.50.50: OK
155+
Network Path MTU: OK
156+
Time Server pool.ntp.org: OK
157+
Proxy Server 10.57.48.80: OK
158+
Azure ARM Endpoint: OK
159+
Azure Graph Endpoint: OK
160+
Azure Login Endpoint: OK
161+
Azure ManagementService Endpoint: OK
162+
Azure AseService Endpoint: OK
163+
Azure AseServiceBus Endpoint: OK
164+
Azure AseStorageAccount Endpoint: OK
165+
Windows Update Server ase-prod.contoso.com port 80: OK
166+
DNS Registration for aseclient.contoso.com: OK
167+
DNS Registration for login.aseclient.contoso.com: OK
168+
DNS Registration for management.aseclient.contoso.com: OK
169+
DNS Registration for *.blob.aseclient.contoso.com: OK
170+
DNS Registration for compute.aseclient.contoso.com: OK
171+
172+
Log location (contains PII): C:\ase-network-tests\AzsReadinessChecker.log
173+
Report location (contains PII): C:\ase-network-tests\AzsReadinessCheckerReport.json
174+
Invoke-AzsNetworkValidation Completed
175+
```
176+
177+
### Sample output: Failed test
178+
179+
If a test fails, the Network Readiness Checker returns information to help you resolve the issue, as shown in the sample output below.
180+
181+
The following sample is the output from this command:
182+
183+
```powershell
184+
Invoke-AzsNetworkValidation -DnsServer '10.50.10.50' -TimeServer 'time.windows.com' -DeviceFqdn aseclient.contoso.com -ComputeIPs 10.10.52.1-10.10.52.20 -CustomUrl 'http://www.nytimes.com','http://fakename.fakeurl.com'
185+
```
186+
187+
The tool returned this output:
188+
189+
```powershell
190+
PS C:\Users\Administrator> Invoke-AzsNetworkValidation -DnsServer '10.50.10.50' -TimeServer 'time.windows.com' -DeviceFqdn aseclient.contoso.com -ComputeIPs 10.10.52.1-10.10.52.20 -CustomUrl 'http://www.nytimes.com','http://fakename.fakeurl.com'
191+
192+
Invoke-AzsNetworkValidation v1.2100.1396.426 started.
193+
Validating input parameters
194+
The following tests will be executed: LinkLayer, IPConfig, DnsServer, PathMtu, TimeServer, AzureEndpoint, WindowsUpdateServer, DuplicateIP, DnsRegistration, CustomUrl
195+
Validating Azure Stack Edge Network Readiness
196+
Link Layer: OK
197+
IP Configuration: OK
198+
DNS Server 10.50.10.50: OK
199+
Network Path MTU: OK
200+
Time Server time.windows.com: OK
201+
Azure ARM Endpoint: OK
202+
Azure Graph Endpoint: OK
203+
Azure Login Endpoint: OK
204+
Azure ManagementService Endpoint: OK
205+
Azure AseService Endpoint: OK
206+
Azure AseServiceBus Endpoint: OK
207+
Azure AseStorageAccount Endpoint: OK
208+
URL http://www.nytimes.com/: OK
209+
URL http://fakename.fakeurl.com/: Fail
210+
Windows Update Server windowsupdate.microsoft.com port 80: OK
211+
Windows Update Server update.microsoft.com port 80: OK
212+
Windows Update Server update.microsoft.com port 443: OK
213+
Windows Update Server download.windowsupdate.com port 80: OK
214+
Windows Update Server download.microsoft.com port 443: OK
215+
Windows Update Server go.microsoft.com port 80: OK
216+
Duplicate IP: Warning
217+
DNS Registration for aseclient.contoso.com: OK
218+
DNS Registration for login.aseclient.contoso.com: Fail
219+
DNS Registration for management.aseclient.contoso.com: Fail
220+
DNS Registration for *.blob.aseclient.contoso.com: Fail
221+
DNS Registration for compute.aseclient.contoso.com: Fail
222+
Details:
223+
[-] URL http://fakename.fakeurl.com/: fakename.fakeurl.com : DNS name does not exist
224+
[-] Duplicate IP: Some IP addresses allocated to Azure Stack may be active on the network. Check the output log for the detailed list.
225+
[-] DNS Registration for login.aseclient.contoso.com: login.aseclient.contoso.com : DNS name does not exist
226+
[-] DNS Registration for management.aseclient.contoso.com: management.aseclient.contoso.com : DNS name does not exist
227+
[-] DNS Registration for *.blob.aseclient.contoso.com: testname.aseclient.contoso.com : DNS name does not exist
228+
[-] DNS Registration for compute.aseclient.contoso.com: compute.aseclient.contoso.com : DNS name does not exist
229+
Additional help URL http://aka.ms/azsnrc
230+
231+
Log location (contains PII): C:\Users\[*redacted*]\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessChecker.log
232+
Report location (contains PII): C:\Users\[*redacted*]\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessCheckerReport.json
233+
Invoke-AzsNetworkValidation Completed
234+
```
235+
236+
## Review log and report
237+
238+
For more information, you can review the log and report. By default, both files are saved in the following location:
239+
240+
- Log: `C:\Users\<username>\AppData\Local\Temp\AzsReadinessChecker\AzrReadinessChecker.log`
241+
- Report: `C:\Users\<username>\AppData\Local\Temp\AzsReadinessChecker\AzrReadinessCheckerReport.json`
242+
243+
## Next steps
244+
245+
- Learn how to connect to your Azure Stack Edge device: [Pro GPU device](azure-stack-edge-gpu-deploy-connect.md), [Pro R device](azure-stack-edge-pro-r-deploy-connect.md), [Mini R device](azure-stack-edge-mini-r-deploy-connect.md).
246+
- Review a deployment checklist for your device: [Pro GPU checklist](azure-stack-edge-gpu-deploy-checklist.md), [Pro R checklist](azure-stack-edge-pro-r-deploy-checklist.md), [Mini R checklist](azure-stack-edge-mini-r-deploy-checklist.md).
247+
- [Contact Microsoft Support](azure-stack-edge-contact-microsoft-support.md).

0 commit comments

Comments
 (0)