Skip to content

Comparing Multiple Subscriptions as that's how underlying REST API was designed.

Notifications You must be signed in to change notification settings

nelsd/AZ-Resiliency

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

AZ Resiliency

This Repo has 2 files
1.> ResourceSKU.ps1
2.> Check-AzureAZmapping.ps1

1.> Resource SKU information in Azure Region and Avaialbility zones via ResourceSKU.ps1
Usage:
Below command would generate a csv file in the same folder and all the arguments are optional. Please be aware that it would generate a large file depending upon your subscription and organization if you dont pass any arguments to the below command.
PS C:> .\ResourceSKU.ps1 -Targetsubscriptions "SubscriptionID1", "SubscriptionID2" -resourceType "virtualMachines" -skuName "Standard_M128" -location "eastus2"





2.> AZ Peer Mapping information via Check-AzureAZmapping.ps1
Comparing multiple subscriptions as that's how underlying REST API works which will help with a single REST API call for multiple subscriptions instead of calling this in a loop
Prerequisite
This Script calls CheckZonePeers API API and we need to make sure 'AvailabilityZonePeering' feature is registered for the source subscription before using this REST API OR powershell scripts.

PS C:> az feature register -n AvailabilityZonePeering --namespace Microsoft.Resources
Once the feature 'AvailabilityZonePeering' is registered, invoking 'az provider register -n Microsoft.Resources' is required to get the change propagated { "id": "/subscriptions/SubscriptionID1/providers/Microsoft.Features/providers/Microsoft.Resources/features/AvailabilityZonePeering", "name": "Microsoft.Resources/AvailabilityZonePeering", "properties": { "state": "Registering" }, "type": "Microsoft.Features/providers/features" }

You can check the status with the below command,
PS C:> az feature show -n AvailabilityZonePeering --namespace Microsoft.Resources
{ "id": "/subscriptions/SubscriptionID1/providers/Microsoft.Features/providers/Microsoft.Resources/features/AvailabilityZonePeering", "name": "Microsoft.Resources/AvailabilityZonePeering", "properties": { "state": "Registered" }, "type": "Microsoft.Features/providers/features" }

PS C:>az provider register -n Microsoft.Resources

Usage:
PS C:> .\Check-AzureAZmapping.ps1 -Targetsubscriptions SubscriptionID2, SubscriptionID3 -location eastus2 -SourceSubscription SubscriptionID1

This script validates the Availability Zone mapping between two subscriptions Checking: SubscriptionID1 Versus: SubscriptionID2, SubscriptionID3,

AV Zone peering for subscription SubscriptionID1 in eastus2 is:
availabilityZone   peers
==========    ====
1         {@{subscriptionId=SubscriptionID2; availabilityZone=3}, @{subscriptionId=SubscriptionID3; availabilityZone=1}}
2         {@{subscriptionId=SubscriptionID2; availabilityZone=1}, @{subscriptionId=SubscriptionID3; availabilityZone=2}}
3         {@{subscriptionId=SubscriptionID2; availabilityZone=2}, @{subscriptionId=SubscriptionID3; availabilityZone=3}}

NOTE:
These Script is developed on an "as-is" basis and this has not been properply tested. Before using it, please perform your own testing.

About

Comparing Multiple Subscriptions as that's how underlying REST API was designed.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • PowerShell 100.0%