Zachary Loeber

The personal website of Zachary Loeber.

PowerShell: Azure ARM Site Overview

Visualizing an Azure deployment can be a bit tricky. This short Azure summary script is a good way to start though.

I’ve been noodling around with an existing Azure deployment recently and wanted to get a quick tree view report of the networking elements. I didn’t find anything out there readily available so I put this quick script together. It is a tad simplistic but manages to capture some relationships pretty well I think. At the very least you should be able to quickly see if oddball things are being done like assigning NSGs to individual interfaces or gateway subnets. It will only show regions where you have active resources and just dumps all output to the screen (via Write-Output so you can pipe it wherever).

Here is a quick overview of what it will output:

<#
    Quick report of ARM based Azure networking that includes:

    - Location (region)
        - Virtual Networks (region based!)
            - Subnets
                - Associated NSGs
                - Associated Interfaces (VMs)
        - Network Security Groups (and rule counts)
                - Associated Subnets
        - Interfaces
        - Resource Groups
                - Associated Interfaces
                - Associated Availability Sets
#>

You will need the AzureRM module and an ARM based deployment to get use from this. It would be cool to turn this into some graphviz charts (I’m looking at PSGraph for this if I can find the time).

Anyway, the script is on github buried in my piles of other scripts if anyone wants it.

comments powered by Disqus