Skip to content

5 Preparation

rbannist edited this page Nov 13, 2017 · 35 revisions





Preparing for a deployment


An Azure Resource Group (RG) and Resource naming convention is needed that allows for:

  1. A set of RGs per-zone/service in each region deployed to.
    • Storage Accounts - Disks.
    • Storage Accounts - Diagnostics.
    • Public IPs (if applicable).
    • Connectivity Test VMs inc. any associated Resources such as NICs (optional).
  2. A primary CSR 1000v RG per-zone/service in each region to be deployed to.   Child resources:
    • Virtual Networks.
    • User Defined Route Tables.
  3. Two rolling ID count RGs for initial and then subsequent CSR 1000v deployments per-zone/service in each region if deploying CSR 1000v VMs from the Azure Marketplace (16.6 image – each VM deployment to a new/empty RG).   Child resources:
    • CSR 1000v VMs – A and B nodes.
    • CSR 1000v NICs.
    • CSR 1000v ‘Nic-0’ NSGs.

OR

  1. One RG for CSR 1000v deployments per-zone/service in each region if deploying CSR 1000v VMs using the templates in this repository (16.4 image with an Availability Set in the same RG).   Child Resources:
    • CSR 1000v VMs – A and B nodes.
    • CSR 1000v NICs.
    • CSR 1000v ‘nic01’ NSGs.
    • Availability Sets.



Choosing between an Azure Marketplace offer and the templates held in this repository:



Summary (green dashed lines denote RG boundaries):



Here is an example RG naming convention for separate 'Dev+QA' (Stage 1) and 'Prod' (Stage 2) network/VPN overlays across 3 Azure Regions for a fictional application/service called ‘AAA’:

Resource Type(s) in the Resource Group Naming
Storage Accounts - Disks <orgprefix>-<regioncode>-<service>-<stage>-sdisk-rg<id>
Storage Accounts - Diagnostics <orgprefix>-<regioncode>-<service>-<stage>-sdiag-rg<id>
Public IPs – CSR 1000v Management <orgprefix>-<regioncode>-<service>-<stage>-pipm-rg<id>
Public IPs – CSR 1000v ‘Outside’ Interfaces
(optional)
<orgprefix>-<regioncode>-<service>-<stage>-pipd-rg<id>
Connectivity Test VMs
(optional)
<orgprefix>-<regioncode>-<service>-<stage>-tstvm-rg<id>
CSR 1000v associated resources - common and fixed/static <orgprefix>-<regioncode>-<service>-<stage>-csrcr-rg<id>
CSR 1000v VMs - initial and then subsequent deployments (Azure Marketplace) <orgprefix>-<regioncode>-<service>-<stage>-csrvm-rg<id1>
and
<orgprefix>-<regioncode>-<service>-<stage>-csrvm-rg<id2>
OR
CSR 1000v VMs - templates in this repo <orgprefix>-<regioncode>-<service>-<stage>-csrvm-rg<id>

A detailed overview of Resource Group names (click here to bypass):

  • Storage Accounts - Disks.
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-sdisk-rg<id>
Service/App Zone Azure Region ('Site') RG Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-sdisk-rg01
South East Asia rb-sea-aaa-dqa-sdisk-rg01
East US rb-eus-aaa-dqa-sdisk-rg01
AAA – Prod
West Europe rb-we-aaa-prod-sdisk-rg01
South East Asia rb-sea-aaa-prod-sdisk-rg01
East US rb-eus-aaa-prod-sdisk-rg01

  • Storage Accounts – Diagnostics.
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-sdiag-rg<id>
Service/App Zone Azure Region ('Site') RG Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-sdiag-rg01
South East Asia rb-sea-aaa-dqa-sdiag-rg01
East US rb-eus-aaa-dqa-sdiag-rg01
AAA – Prod
West Europe rb-we-aaa-prod-sdiag-rg01
South East Asia rb-sea-aaa-prod-sdiag-rg01
East US rb-eus-aaa-prod-sdiag-rg01

Note.   At this time, the Marketplace template for the CSR 1000v does not allow you to put CSR 1000v boot diagnostics logs in a separate storage account to the OS disks.   These resource groups names are added for if you want to subsequently move the logging destination or if you're using this repo's templates.


  • Public IPs – CSR 1000v Management.
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-pipm-rg<id>
Service/App Zone Azure Region ('Site') RG Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-pipm-rg01
South East Asia rb-sea-aaa-dqa-pipm-rg01
East US rb-eus-aaa-dqa-pipm-rg01
AAA - Prod
West Europe rb-we-aaa-prod-pipm-rg01
South East Asia rb-sea-aaa-prod-pipm-rg01
East US rb-eus-aaa-prod-pipm-rg01

  • Public IPs – CSR 1000v 'Outside' Interfaces (optional).
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-pipd-rg<id>
Service/App Zone Azure Region ('Site') RG Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-pipd-rg01
South East Asia rb-sea-aaa-dqa-pipd-rg01
East US rb-eus-aaa-dqa-pipd-rg01
AAA - Prod
West Europe rb-we-aaa-prod-pipd-rg01
South East Asia rb-sea-aaa-prod-pipd-rg01
East US rb-eus-aaa-prod-pipd-rg01

  • Connectivity Test VMs and all associated Resources such as Storage Accounts and NICs (optional).
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-tstvm-rg<id>
Service/App Zone Azure Region ('Site') RG Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-tstvm-rg01
South East Asia rb-sea-aaa-dqa-tstvm-rg01
East US rb-eus-aaa-dqa-tstvm-rg01
AAA - Prod
West Europe rb-we-aaa-prod-tstvm-rg01
South East Asia rb-sea-aaa-prod-tstvm-rg01
East US rb-eus-aaa-prod-tstvm-rg01

  • CSR 1000v associated Resources - common and static.
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-csrcr-rg<id>
Service/App Zone Azure Region ('Site') RG Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-csrcr-rg01
South East Asia rb-sea-aaa-dqa-csrcr-rg01
East US rb-eus-aaa-dqa-csrcr-rg01
AAA - Prod
West Europe rb-we-aaa-prod-csrcr-rg01
South East Asia rb-sea-aaa-prod-csrcr-rg01
East US rb-eus-aaa-prod-csrcr-rg01

  • CSR 1000v VMs - Initial and then subsequent deployments (Azure Marketplace).
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-csrvm-rg<id>
Service/App Zone Azure Region ('Site') CSR 1000v HA Node RG Name Examples
AAA - Dev and QA
West Europe
A rb-we-aaa-dqa-csrvm-rg101
--> '111' --> '121' --> 1n1
B rb-we-aaa-dqa-csrvm-rg102
--> '112' --> '122' --> 1n2
South East Asia
A rb-sea-aaa-dqa-csrvm-rg101
--> '111' --> '121' --> 1n1
B rb-sea-aaa-dqa-csrvm-rg102
--> '112' --> '122' --> 1n2
East US
A rb-eus-aaa-dqa-csrvm-rg101
--> '111' --> '121' --> 1n1
B rb-eus-aaa-dqa-csrvm-rg102
--> '112' --> '122' --> 1n2
AAA - Prod
West Europe
A rb-we-aaa-prod-csrvm-rg101
--> '111' --> '121' --> 1n1
B rb-we-aaa-prod-csrvm-rg102
--> '112' --> '122' --> 1n2
South East Asia
A rb-sea-aaa-prod-csrvm-rg101
--> '111' --> '121' --> 1n1
B rb-sea-aaa-prod-csrvm-rg102
--> '112' --> '122' --> 1n2
East US
A rb-eus-aaa-prod-csrvm-rg101
--> '111' --> '121' --> 1n1
B rb-eus-aaa-prod-csrvm-rg102
--> '112' --> '122' --> 1n2

OR


  • CSR 1000v VMs (templates in this repo).
    • Naming Standard = <orgprefix>-<regioncode>-<service>-<stage>-csrvm-rg<id>
Service/App Zone Azure Region ('Site') RG Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-csrvm-rg01
South East Asia rb-sea-aaa-dqa-csrvm-rg01
East US rb-eus-aaa-dqa-csrvm-rg01
AAA - Prod
West Europe rb-we-aaa-prod-csrvm-rg01
South East Asia rb-sea-aaa-prod-csrvm-rg01
East US rb-eus-aaa-prod-csrvm-rg01



Individual Resource naming summary for the same example as above:

Resource Type Naming
Storage Accounts - Disks <orgprefix><regioncode><service><stage>sadisk<id>
Storage Accounts - Diagnostics <orgprefix><regioncode><service><stage>sadiag<id>
Public IPs - Management <orgprefix><regioncode><service><stage>pipm<id>
Public IPs - CSR 1000v Outside Interfaces (data plane) <orgprefix><regioncode><service><stage>pipd<id>
Connectivity Test VMs <orgprefix><regioncode><service>-<stage>-tstvm<id>

(15 character limit = <service><regioncode>tst<id> )
Connectivity Test VMs' NICs <orgprefix><regioncode><service>-<stage>-tstvm<id>-nic<id>
Availability Sets for CSR 1000v VMs <orgprefix><regioncode><service>-<stage>-csrvm-as<id>
Virtual Networks <orgprefix><regioncode><service>-<stage>-vn<id>
Subnets <orgprefix><regioncode><service>-<stage>-vn<id>-sn<id>
UDR Tables <orgprefix><regioncode><service>-<stage>-udrvn<id>sn<id>
CSR 1000v VMs - Azure Marketplace <orgprefix><regioncode><service>-<stage>-csrvm<id>
OR
CSR VMs - this repo's templates <orgprefix><regioncode><service>-<stage>-csrvm<id>
CSR VMs' NICs (4 NIC SKU + this repo's templates) <orgprefix><regioncode><service>-<stage>-csrvm<id>-nic<id>



A detailed overview of resource names (click here to bypass)

  • Storage Accounts – Disks.
    • Naming Standard = <orgprefix><regioncode><service><stage>sadisk<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-sdisk-rg01 rbweaaadqasadisk01
South East Asia rb-sea-aaa-dqa-sdisk-rg01 rbneaaadqasadisk01
East US rb-eus-aaa-dqa-sdisk-rg01 rbeusaaadqasadisk01
AAA - Prod
West Europe rb-we-aaa-prod-sdisk-rg01 rbweaaaprodsadisk01
South East Asia rb-sea-aaa-prod-sdisk-rg01 rbneaaaprodsadisk01
East US rb-eus-aaa-prod-sdisk-rg01 rbeusaaaprodsadisk01

  • Storage Accounts – Diagnostics.
    • Naming Standard = <orgprefix><regioncode><service><stage>sadiag<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-sdiag-rg01 rbweaaadqasadiag01
South East Asia rb-sea-aaa-dqa-sdiag-rg01 rbneaaadqasadiag01
East US rb-eus-aaa-dqa-sdiag-rg01 rbeusaaadqasadiag01
AAA - Prod
West Europe rb-we-aaa-prod-sdiag-rg01 rbweaaaprodsadiag01
South East Asia rb-sea-aaa-prod-sdiag-rg01 rbneaaaprodsadiag01
East US rb-eus-aaa-prod-sdiag-rg01 rbeusaaaprodsadiag01

  • Public IPs - Management.
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-pipm<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe
rb-we-aaa-dqa-pipm-rg01 rb-we-aaa-dqa-pipm01
rb-we-aaa-dqa-pipm-rg01 rb-we-aaa-dqa-pipm02
South East Asia
rb-sea-aaa-dqa-pipm-rg01 rb-sea-aaa-dqa-pipm01
rb-sea-aaa-dqa-pipm-rg01 rb-sea-aaa-dqa-pipm02
East US
rb-eus-aaa-dqa-pipm-rg01 rb-eus-aaa-dqa-pipm01
rb-eus-aaa-dqa-pipm-rg01 rb-eus-aaa-dqa-pipm02
AAA - Prod
West Europe
rb-we-aaa-prod-pipm-rg01 rb-we-aaa-prod-pipm01
rb-we-aaa-prod-pipm-rg01 rb-we-aaa-prod-pipm02
South East Asia
rb-sea-aaa-prod-pipm-rg01 rb-sea-aaa-prod-pipm01
rb-sea-aaa-prod-pipm-rg01 rb-sea-aaa-prod-pipm02
East US
rb-eus-aaa-prod-pipm-rg01 rb-eus-aaa-prod-pipm01
rb-eus-aaa-prod-pipm-rg01 rb-eus-aaa-prod-pipm02

  • Public IPs - CSR 1000v Outside Interfaces (data plane).
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-pipd<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe
rb-we-aaa-dqa-pipd-rg01 rb-we-aaa-dqa-pipd01
rb-we-aaa-dqa-pipd-rg01 rb-we-aaa-dqa-pipd02
South East Asia
rb-sea-aaa-dqa-pipd-rg01 rb-sea-aaa-dqa-pipd01
rb-sea-aaa-dqa-pipm-rg01 rb-sea-aaa-dqa-pipd02
East US
rb-eus-aaa-dqa-pipd-rg01 rb-eus-aaa-dqa-pipd01
rb-eus-aaa-dqa-pipd-rg01 rb-eus-aaa-dqa-pipd02
AAA - Prod
West Europe
rb-we-aaa-prod-pipd-rg01 rb-we-aaa-prod-pipd01
rb-we-aaa-prod-pipd-rg01 rb-we-aaa-prod-pipd02
South East Asia
rb-sea-aaa-prod-pipd-rg01 rb-sea-aaa-prod-pipd01
rb-sea-aaa-prod-pipd-rg01 rb-sea-aaa-prod-pipd02
East US
rb-eus-aaa-prod-pipd-rg01 rb-eus-aaa-prod-pipd01
rb-eus-aaa-prod-pipd-rg01 rb-eus-aaa-prod-pipd02

  • Connectivity Test VMs (1 per-zone/site for 'Inside' subnet or 2 per-zone/site for 'Inside' and 'DMZ' subnets).
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-tstvm<id> (15 character limit: <service><regioncode>tst<id> )
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-tstvm-rg01 rb-we-aaa-dqa-tstvm01 (15: aaadqawetst1)
South East Asia rb-sea-aaa-dqa-tstvm-rg01 rb-sea-aaa-dqa-tstvm01 (15: aaadqanetst1)
East US rb-eus-aaa-dqa-tstvm-rg01 rb-eus-aaa-dqa-tstvm01 (15: aaadqaeustst1)
AAA - Prod
West Europe rb-we-aaa-prod-tstvm-rg01 rb-we-aaa-prod-tstvm01 (15: aaaprodwetst1)
South East Asia rb-sea-aaa-prod-tstvm-rg01 rb-sea-aaa-prod-tstvm01 (15: aaaprodnetst1)
East US rb-eus-aaa-prod-tstvm-rg01 rb-eus-aaa-prod-tstvm01 (15: aaaprodeustst1)

  • Connectivity Test VMs' NICs.
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-tstvm<id>-nic<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-tstvm-rg01 rb-we-aaa-dqa-tstvm01-nic01
South East Asia rb-sea-aaa-dqa-tstvm-rg01 rb-sea-aaa-dqa-tstvm01-nic01
East US rb-eus-aaa-dqa-tstvm-rg01 rb-eus-aaa-dqa-tstvm01-nic01
AAA - Prod
West Europe rb-we-aaa-prod-tstvm-rg01 rb-we-aaa-prod-tstvm01-nic01
South East Asia rb-sea-aaa-prod-tstvm-rg01 rb-sea-aaa-prod-tstvm01-nic01
East US rb-eus-aaa-prod-tstvm-rg01 rb-eus-aaa-prod-tstvm01-nic01

  • Availability Sets for CSR 1000v VMs.
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-csrvm-as<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-csrvm-rg01 rb-we-aaa-dqa-csrvm-as01
South East Asia rb-sea-aaa-dqa-csrvm-rg01 rb-sea-aaa-dqa-csrvm-as01
East US rb-eus-aaa-dqa-csrvm-rg01 rb-eus-aaa-dqa-csrvm-as01
AAA - Prod
West Europe rb-we-aaa-prod-csrvm-rg01 rb-we-aaa-prod-csrvm-as01
South East Asia rb-sea-aaa-prod-csrvm-rg01 rb-sea-aaa-prod-csrvm-as01
East US rb-eus-aaa-prod-csrvm-rg01 rb-eus-aaa-prod-csrvm-as01

Note. The Marketplace templates for the CSR 1000v do not allow for putting CSR 1000v VMs in Availability Sets as all new deployments go in new/empty RGs. These resources are added for if you're using the GitHub repo templates or as a future-proofing exercise should Cisco add the ability to deploy to existing RGs in future releases.


  • Virtual Networks.
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-vn<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-csrcr-rg01 rb-we-aaa-dqa-vn01
South East Asia rb-sea-aaa-dqa-csrcr-rg01 rb-sea-aaa-dqa-vn01
East US rb-eus-aaa-dqa-csrcr-rg01 rb-eus-aaa-dqa-vn01
AAA - Prod
West Europe rb-we-aaa-prod-csrcr-rg01 rb-we-aaa-prod-vn01
South East Asia rb-sea-aaa-prod-csrcr-rg01 rb-sea-aaa-prod-vn01
East US rb-eus-aaa-prod-csrcr-rg01 rb-eus-aaa-prod-vn01

  • Subnets
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-vn<id>-sn<id> (If ER = <orgprefix><regioncode><service>-<stage>-vn<id>-gwsn01 )
Service/App Zone Azure Region ('Site') Parent RG Parent VNET Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-csrcr-rg01 rb-we-aaa-dqa-vn01
rb-we-aaa-dqa-vn01-sn01
rb-we-aaa-dqa-vn01-sn02
rb-we-aaa-dqa-vn01-sn03
rb-we-aaa-dqa-vn01-sn04
rb-we-aaa-dqa-vn01-gwsn01
South East Asia rb-sea-aaa-dqa-csrcr-rg01 rb-sea-aaa-dqa-vn01
rb-sea-aaa-dqa-vn01-sn01
rb-sea-aaa-dqa-vn01-sn02
rb-sea-aaa-dqa-vn01-sn03
rb-sea-aaa-dqa-vn01-sn04
rb-sea-aaa-dqa-vn01-gwsn01
East US rb-eus-aaa-dqa-csrcr-rg01 rb-eus-aaa-dqa-vn01
rb-eus-aaa-dqa-vn01-sn01
rb-eus-aaa-dqa-vn01-sn02
rb-eus-aaa-dqa-vn01-sn03
rb-eus-aaa-dqa-vn01-sn04
rb-eus-aaa-dqa-vn01-gwsn01
AAA - Prod
West Europe rb-we-aaa-prod-csrcr-rg01 rb-we-aaa-prod-vn01
rb-we-aaa-prod-vn01-sn01
rb-we-aaa-prod-vn01-sn02
rb-we-aaa-prod-vn01-sn03
rb-we-aaa-prod-vn01-sn04
rb-we-aaa-prod-vn01-gwsn01
South East Asia rb-sea-aaa-prod-csrcr-rg01 rb-sea-aaa-prod-vn01
rb-sea-aaa-prod-vn01-sn01
rb-sea-aaa-prod-vn01-sn02
rb-sea-aaa-prod-vn01-sn03
rb-sea-aaa-prod-vn01-sn04
rb-sea-aaa-prod-vn01-gwsn01
East US rb-eus-aaa-prod-csrcr-rg01 rb-eus-aaa-prod-vn01
rb-eus-aaa-prod-vn01-sn01
rb-eus-aaa-prod-vn01-sn02
rb-eus-aaa-prod-vn01-sn03
rb-eus-aaa-prod-vn01-sn04
rb-eus-aaa-prod-vn01-gwsn01

  • UDR Tables.
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-udrvn<id>sn<id>
Service/App Zone Azure Region ('Site') Parent RG Linked Subnet Resource Name Examples
AAA - Dev and QA
West Europe rb-we-aaa-dqa-csrcr-rg01
rb-we-aaa-dqa-vn01-sn01 rb-we-aaa-dqa-udrvn01sn01
rb-we-aaa-dqa-vn01-sn02 rb-we-aaa-dqa-udrvn01sn02
rb-we-aaa-dqa-vn01-sn03 rb-we-aaa-dqa-udrvn01sn03
rb-we-aaa-dqa-vn01-sn04 rb-we-aaa-dqa-udrvn01sn04
rb-we-aaa-dqa-vn01-gwsn01 rb-we-aaa-dqa-udrvn01gwsn01
South East Asia rb-sea-aaa-dqa-csrcr-rg01
rb-sea-aaa-dqa-vn01-sn01 rb-sea-aaa-dqa-udrvn01sn01
rb-sea-aaa-dqa-vn01-sn02 rb-sea-aaa-dqa-udrvn01sn02
rb-sea-aaa-dqa-vn01-sn03 rb-sea-aaa-dqa-udrvn01sn03
rb-sea-aaa-dqa-vn01-sn04 rb-sea-aaa-dqa-udrvn01sn04
rb-sea-aaa-dqa-vn01-gwsn01 rb-sea-aaa-dqa-udrvn01gwsn01
East US rb-eus-aaa-dqa-csrcr-rg01
rb-eus-aaa-dqa-vn01-sn01 rb-eus-aaa-dqa-udrvn01sn01
rb-eus-aaa-dqa-vn01-sn02 rb-eus-aaa-dqa-udrvn01sn02
rb-eus-aaa-dqa-vn01-sn03 rb-eus-aaa-dqa-udrvn01sn03
rb-eus-aaa-dqa-vn01-sn04 rb-eus-aaa-dqa-udrvn01sn04
rb-eus-aaa-dqa-vn01-gwsn01 rb-eus-aaa-dqa-udrvn01gwsn01
AAA - Prod
West Europe rb-we-aaa-prod-csrcr-rg01
rb-we-aaa-prod-vn01-sn01 rb-we-aaa-prod-udrvn01sn01
rb-we-aaa-prod-vn01-sn02 rb-we-aaa-prod-udrvn01sn02
rb-we-aaa-prod-vn01-sn03 rb-we-aaa-prod-udrvn01sn03
rb-we-aaa-prod-vn01-sn04 rb-we-aaa-prod-udrvn01sn04
rb-we-aaa-prod-vn01-gwsn01 rb-we-aaa-prod-udrvn01gwsn01
South East Asia rb-sea-aaa-prod-csrcr-rg01
rb-sea-aaa-prod-vn01-sn01 rb-sea-aaa-prod-udrvn01sn01
rb-sea-aaa-prod-vn01-sn02 rb-sea-aaa-prod-udrvn01sn02
rb-sea-aaa-prod-vn01-sn03 rb-sea-aaa-prod-udrvn01sn03
rb-sea-aaa-prod-vn01-sn04 rb-sea-aaa-prod-udrvn01sn04
rb-sea-aaa-prod-vn01-gwsn01 rb-sea-aaa-prod-udrvn01gwsn01
East US rb-eus-aaa-prod-csrcr-rg01
rb-eus-aaa-prod-vn01-sn01 rb-eus-aaa-prod-udrvn01sn01
rb-eus-aaa-prod-vn01-sn02 rb-eus-aaa-prod-udrvn01sn02
rb-eus-aaa-prod-vn01-sn03 rb-eus-aaa-prod-udrvn01sn03
rb-eus-aaa-prod-vn01-sn04 rb-eus-aaa-prod-udrvn01sn04
rb-eus-aaa-prod-vn01-gwsn01 rb-eus-aaa-prod-udrvn01gwsn01

  • CSR 1000v VMs - Azure Marketplace.
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-csrvm<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe
rb-we-aaa-dqa-csrvm-rg101 rb-we-aaa-dqa-csrvm101
rb-we-aaa-dqa-csrvm-rg102 rb-we-aaa-dqa-csrvm102
South East Asia
rb-sea-aaa-dqa-csrvm-rg101 rb-sea-aaa-dqa-csrvm101
rb-sea-aaa-dqa-csrvm-rg102 rb-sea-aaa-dqa-csrvm102
East US
rb-eus-aaa-dqa-csrvm-rg101 rb-eus-aaa-dqa-csrvm101
rb-eus-aaa-dqa-csrvm-rg102 rb-eus-aaa-dqa-csrvm102
AAA - Prod
West Europe
rb-we-aaa-prod-csrvm-rg101 rb-we-aaa-prod-csrvm101
rb-we-aaa-prod-csrvm-rg102 rb-we-aaa-prod-csrvm102
South East Asia
rb-sea-aaa-prod-csrvm-rg101 rb-sea-aaa-prod-csrvm101
rb-sea-aaa-prod-csrvm-rg102 rb-sea-aaa-prod-csrvm102
East US
rb-eus-aaa-prod-csrvm-rg101 rb-eus-aaa-prod-csrvm101
rb-eus-aaa-prod-csrvm-rg102 rb-eus-aaa-prod-csrvm102

OR


  • CSR 1000v VMs – This repo's templates.
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-csrvm<id>
Service/App Zone Azure Region ('Site') Parent RG Resource Name Examples
AAA - Dev and QA
West Europe
rb-we-aaa-dqa-csrvm-rg01
rb-we-aaa-dqa-csrvm101
rb-we-aaa-dqa-csrvm102
South East Asia
rb-sea-aaa-dqa-csrvm-rg01
rb-sea-aaa-dqa-csrvm101
rb-sea-aaa-dqa-csrvm102
East US
rb-eus-aaa-dqa-csrvm-rg01
rb-eus-aaa-dqa-csrvm101
rb-eus-aaa-dqa-csrvm102
AAA - Prod
West Europe
rb-we-aaa-prod-csrvm-rg01
rb-we-aaa-prod-csrvm101
rb-we-aaa-prod-csrvm102
South East Asia
rb-sea-aaa-prod-csrvm-rg01
rb-sea-aaa-prod-csrvm101
rb-sea-aaa-prod-csrvm102
East US
rb-eus-aaa-prod-csrvm-rg01
rb-eus-aaa-prod-csrvm101
rb-eus-aaa-prod-csrvm102

  • CSR VM NIC (4 NIC SKU + This repo's templates).
    • Naming Standard = <orgprefix><regioncode><service>-<stage>-csrvm<id>-nic<id>
Service/App Zone Azure Region ('Site') Associated CSR 1000v VM Resource Name Examples
AAA - Dev and QA
West Europe
rb-we-aaa-dqa-csrvm101
rb-we-aaa-dqa-csrvm101-nic01
rb-we-aaa-dqa-csrvm101-nic02
rb-we-aaa-dqa-csrvm101-nic03
rb-we-aaa-dqa-csrvm101-nic04
rb-we-aaa-dqa-csrvm102
rb-we-aaa-dqa-csrvm102-nic01
rb-we-aaa-dqa-csrvm102-nic02
rb-we-aaa-dqa-csrvm102-nic03
rb-we-aaa-dqa-csrvm102-nic04
South East Asia
rb-sea-aaa-dqa-csrvm101
rb-sea-aaa-dqa-csrvm101-nic01
rb-sea-aaa-dqa-csrvm101-nic02
rb-sea-aaa-dqa-csrvm101-nic03
rb-sea-aaa-dqa-csrvm101-nic04
rb-sea-aaa-dqa-csrvm102
rb-sea-aaa-dqa-csrvm102-nic01
rb-sea-aaa-dqa-csrvm102-nic01
rb-sea-aaa-dqa-csrvm102-nic01
rb-sea-aaa-dqa-csrvm102-nic01
rb-eus-aaa-dqa-csrvm101
rb-eus-aaa-dqa-csrvm101-nic01
rb-eus-aaa-dqa-csrvm101-nic02
rb-eus-aaa-dqa-csrvm101-nic03
rb-eus-aaa-dqa-csrvm101-nic04
rb-eus-aaa-dqa-csrvm102
rb-eus-aaa-dqa-csrvm102-nic01
rb-eus-aaa-dqa-csrvm102-nic02
rb-eus-aaa-dqa-csrvm102-nic03
rb-eus-aaa-dqa-csrvm102-nic04
AAA - Prod
West Europe
rb-we-aaa-prod-csrvm101
rb-we-aaa-prod-csrvm101-nic01
rb-we-aaa-prod-csrvm101-nic02
rb-we-aaa-prod-csrvm101-nic03
rb-we-aaa-prod-csrvm101-nic04
rb-we-aaa-prod-csrvm102
rb-we-aaa-prod-csrvm102-nic01
rb-we-aaa-prod-csrvm102-nic02
rb-we-aaa-prod-csrvm102-nic03
rb-we-aaa-prod-csrvm102-nic04
South East Asia
rb-sea-aaa-prod-csrvm101
rb-sea-aaa-prod-csrvm101-nic01
rb-sea-aaa-prod-csrvm101-nic02
rb-sea-aaa-prod-csrvm101-nic03
rb-sea-aaa-prod-csrvm101-nic04
rb-sea-aaa-prod-csrvm102
rb-sea-aaa-prod-csrvm102-nic01
rb-sea-aaa-prod-csrvm102-nic01
rb-sea-aaa-prod-csrvm102-nic01
rb-sea-aaa-prod-csrvm102-nic01
rb-eus-aaa-prod-csrvm101
rb-eus-aaa-prod-csrvm101-nic01
rb-eus-aaa-prod-csrvm101-nic02
rb-eus-aaa-prod-csrvm101-nic03
rb-eus-aaa-prod-csrvm101-nic04
rb-eus-aaa-prod-csrvm102
rb-eus-aaa-prod-csrvm102-nic01
rb-eus-aaa-prod-csrvm102-nic02
rb-eus-aaa-prod-csrvm102-nic03
rb-eus-aaa-prod-csrvm102-nic04



The naming convention above allows for:
  • When using the Azure Marketplace offer:
    • Deployment of new CSR VMs into new RGs.
      • In cases of:
        • Replacement of CSR VMs for IOS-XE upgrades.
        • Replacement of CSR VMs post-failure.
    • Common Resources remaining in place with easy identification of 'rogue' resources that are auto-created each time that a CSR 1000v is deployed (e.g. new UDR Tables that aren't assigned to the Subnets).
  • When using either the Azure Marketplace offer or this repo's templates:
    • RGs mapped to resource types and lifecycles.

We also require IP address space allocation that provides a logical structure for:

  1. 4 x Azure Subnets per-site/region, per-stage.
  2. 24 in total = 8 per-site = 4 in 'DevQA' VNet and 4 in 'Prod' VNet. 1. CSR VMs and Connectivity Test VMs have NICs attached to these Subnets.
  3. 1 x Inter-site/region tunnel subnet, per-stage.
  4. 2 in total. 1. 1 per-stage across all sites/regions.
  5. These subnets are not configured/seen in Azure - they are in an abstracted namespace.
  6. Each router has a single mGRE tunnel interface configured with an IP address in one of these 2 subnets. 1. DMVPN leverages these tunnels.
  7. 12 x Intra-site/region tunnel subnets, per-stage.
  8. 2 per-HA router pair.
    1. 1 in default ('Management') VRF.
    2. 1 in new 'PROD' VRF.
  9. These subnets are not configured in Azure - they are in an abstracted namespace.
  10. VXLAN GPE tunnel interfaces are configured with IP addresses in these subnets. 1. Failure-detection leverages these intra-site/region tunnels.
  11. 2 x /32 Loopback interface subnets per-router.
  12. 24 in total (6 routers = 12 per-stage). 1. 1 x Loopback interface per-router resides in the default VRF. 2. 1 x Loopback interface per-router resides in a 'PROD' VRF.

A single router: