Sad Tux - Windows bias detected
This page contains Windows bias

About This Page

This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.

Bias Analysis

Detected Bias Types
windows_first
powershell_heavy
windows_tools
missing_linux_example
Summary
The documentation demonstrates a Windows bias by consistently referencing Windows-centric tools and patterns. PowerShell is given equal prominence to Azure CLI, and in some cases, Windows-specific terminology (such as IIS Web server) is used without Linux alternatives. There are no explicit Linux/Bash examples for backend pool VMs or web server setup, and the testing instructions assume a Windows environment (IIS), omitting Linux-based web server guidance. The CLI examples are platform-agnostic, but the lack of Linux-specific context and examples (e.g., using Apache/Nginx, Linux VM setup, or Bash scripting) limits parity.
Recommendations
  • Add explicit Linux/Bash examples for creating and configuring backend VMs, including installing and running a Linux web server (e.g., Apache or Nginx) in addition to IIS.
  • In testing steps, provide instructions for both Windows (IIS) and Linux (Apache/Nginx) default web pages, clarifying expected results for each.
  • Clarify that Azure CLI commands can be run from Bash on Linux/macOS, and provide sample Bash scripts where appropriate.
  • When referencing PowerShell, ensure that equivalent Bash or shell scripting examples are provided, especially for tasks like variable assignment and resource manipulation.
  • Avoid Windows-centric language (e.g., referencing only IIS or Windows tools) in general instructions; instead, use cross-platform terminology or provide both Windows and Linux alternatives.
  • Consider adding a section or callout for Linux users, summarizing any differences or additional steps they may encounter.
GitHub Create Pull Request

Scan History

Date Scan Status Result
2026-01-14 00:00 #250 in_progress Biased Biased
2026-01-13 00:00 #246 completed Clean Clean
2026-01-11 00:00 #240 completed Biased Biased
2026-01-10 00:00 #237 completed Biased Biased
2026-01-09 00:34 #234 completed Biased Biased
2026-01-08 00:53 #231 completed Biased Biased
2026-01-06 18:15 #225 cancelled Clean Clean
2025-08-17 00:01 #83 cancelled Clean Clean
2025-07-13 21:37 #48 completed Biased Biased
2025-07-12 23:44 #41 cancelled Biased Biased
2025-07-09 13:09 #3 cancelled Clean Clean
2025-07-08 04:23 #2 cancelled Clean Clean

Flagged Code Snippets

# [Azure PowerShell](#tab/azurepowershell/)

### Create a resource group

An Azure resource group is a logical container into which Azure resources are deployed and managed.

Create a resource group with [New-AzResourceGroup](/powershell/module/az.resources/new-azresourcegroup).


---

## Test the load balancer

# [Azure portal](#tab/azureportal)
In this section, you test the global load balancer. You connect to the public IP address in a web browser.  You stop the virtual machines in one of the regional load balancer backend pools and observe the failover.

1. Find the public IP address for the load balancer on the **Overview** screen. Select **All services** in the left-hand menu, select **All resources**, and then select **myPublicIP-cr**.

2. Copy the public IP address, and then paste it into the address bar of your browser. The default page of IIS Web server is displayed on the browser.

    :::image type="content" source="./media/tutorial-cross-region-portal/test-cr-lb-1.png" alt-text="Test load balancer" border="true":::

3. Stop the virtual machines in the backend pool of one of the regional load balancers.

4. Refresh the web browser and observe the failover of the connection to the other regional load balancer.

    :::image type="content" source="./media/tutorial-cross-region-portal/test-cr-lb-2.png" alt-text="Test load balancer after failover" border="true":::

# [Azure CLI](#tab/azurecli/)

In this section, you test the global load balancer. You connect to the public IP address in a web browser.  You stop the virtual machines in one of the regional load balancer backend pools and observe the failover.

1. To get the public IP address of the load balancer, use [az network public-ip show](/cli/azure/network/public-ip#az-network-public-ip-show):

    
2. Copy the public IP address, and then paste it into the address bar of your browser. The default page of IIS Web server is displayed on the browser.

3. Stop the virtual machines in the backend pool of one of the regional load balancers.

4. Refresh the web browser and observe the failover of the connection to the other regional load balancer.

---
## Clean up resources

# [Azure portal](#tab/azureportal)


When no longer needed, delete the resource group, load balancer, and all related resources. 

To do so, select the resource group **CreateCRLBTutorial-rg** that contains the resources and then select **Delete**.

# [Azure CLI](#tab/azurecli/)

When no longer needed, use the [az group delete](/cli/azure/group#az-group-delete) command to remove the resource group, load balancer, and all related resources.

# [Azure PowerShell](#tab/azurepowershell/)

When no longer needed, you can use the [Remove-AzResourceGroup](/powershell/module/az.resources/remove-azresourcegroup) command to remove the resource group, load balancer, and the remaining resources.

### Create global load balancer resources

In this section, you create the resources needed for the global load balancer.

A global standard sku public IP is used for the frontend of the global load balancer.

* Use [New-AzPublicIpAddress](/powershell/module/az.network/new-azpublicipaddress) to create the public IP address.

* Create a frontend IP configuration with [New-AzLoadBalancerFrontendIpConfig](/powershell/module/az.network/new-azloadbalancerfrontendipconfig).

* Create a backend address pool with [New-AzLoadBalancerBackendAddressPoolConfig](/powershell/module/az.network/new-azloadbalancerbackendaddresspoolconfig).

* Create a load balancer rule with [Add-AzLoadBalancerRuleConfig](/powershell/module/az.network/add-azloadbalancerruleconfig).

* Create a global load Balancer with [New-AzLoadBalancer](/powershell/module/az.network/new-azloadbalancer).

## Configure backend pool

In this section, you add two regional standard load balancers to the backend pool of the global load balancer.

> [!IMPORTANT]
> To complete these steps, ensure that two regional load balancers with backend pools have been deployed in your subscription.  For more information, see, **[Quickstart: Create a public load balancer to load balance VMs using Azure PowerShell](quickstart-load-balancer-standard-public-powershell.md)**.

* Use [Get-AzLoadBalancer](/powershell/module/az.network/get-azloadbalancer) and [Get-AzLoadBalancerFrontendIpConfig](/powershell/module/az.network/get-azloadbalancerfrontendipconfig) to store the regional load balancer information in variables.

* Use [New-AzLoadBalancerBackendAddressConfig](/powershell/module/az.network/new-azloadbalancerbackendaddressconfig) to create the backend address pool configuration for the load balancer.

* Use [Set-AzLoadBalancerBackendAddressPool](/powershell/module/az.network/new-azloadbalancerbackendaddresspool) to add the regional load balancer frontend to the global backend pool.

2. Copy the public IP address, and then paste it into the address bar of your browser. The default page of IIS Web server is displayed on the browser.

3. Stop the virtual machines in the backend pool of one of the regional load balancers.

4. Refresh the web browser and observe the failover of the connection to the other regional load balancer.

# [Azure PowerShell](#tab/azurepowershell/)

In this section, you test the global load balancer. You connect to the public IP address in a web browser.  You stop the virtual machines in one of the regional load balancer backend pools and observe the failover.

1. Use [Get-AzPublicIpAddress](/powershell/module/az.network/get-azpublicipaddress) to get the public IP address of the load balancer: