/AzureDeploymentFramework

ARM Bicep & DSC Project for Azure Infrastructure and App Environment Deployments. [v 0.3 - March 2023]

Primary LanguageBicepMIT LicenseMIT

Azure Deployment Framework - v 0.3 [ADF Docs].

This is now Version 0.3

  • v 0.3 is main branch - current
  • v 0.2 in ADFv2 branch - created March 2023
  • v 0.1 in armjson branch - created 2022

This project is currently in Preview. [ADF Source]

  • If you have previously forked this project, I recommend to pull in recent commits [Mar 2023]
    • The project setup steps have been streamlined.
    • Automatic network setup.
    • Advanced template capabilities around Zero Trust.

- Declarative Infrastructure


Is this Framework worth considering?

If I walk into your organization and look at your App Catalog or CMDB for your core 
business Applications.

- How many applications do you have? (10 or 100 or 1000?)

Which of those applications are really Core Business applications/services?

- Which generate the most revenue?
- Which provide the most value to your customers?
- Which are fundamentally important for running your business?

Once you identify those applications/services, you need to ensure they are running in the most: 
    - efficient
    - secure
    - reliable
    manner possible, your business and competitive advantage in the marketplace depends on it.

How do you enhance the lifecycle of those applications and the infrastructure in a Cloud First world?
    - How do you iterate in the Sofware development lifecycle with velocity, while maintaining quality?

Microsoft recommends that you follow the:

Once you are familiar with those, how do you actually implement? Taking 1 or more of those Core App Platforms and move them to the Cloud using a Fully Declarative Model?

How do you actually implement those design patterns that are in the architectural documentation?
How do you actually start designing and deploying your application code?
How do you prototype out design models allowing faster testing and validation, while staying within budget?
How do you define, deploy and release to as many environments that your application needs for: 
    - Dev, Test, QA, UAT, PROD, DR Etc. across regions.
How do you Train your staff on Cloud principles and keep up with the rapid pace of Cloud capabilites?
How do you Document what your environments look like and at the same time manage rapid Change?

Perhaps you just need a Lab environment:

If you are looking to build out Lab/Demo environments then the ADF will work very nicely.
- Most of the work is deploying specific App Components
- So if you are just wanted lab environments, you can get up and running with ADF very fast, 
    - Hopefully within 1 week
- The DSC components in this project allow for Domain Controller or SQL Server clusters to be deployed
    - If you are still leveraging IaaS services, this could be very useful.

If above is something that is of interest to you, then this project can help.

Full list of templates:

ADF/bicep Bicep_Templates

Any Feedback on this project is welcome, please feel free to reach out or ask questions, open a 'Discussions' or 'Issues'.
  • This is a template project, so just clone your own version and build from there with your own tenants
  • Below diagram with DR is outdated, best to support Multi site, Multi region deployments with Geo load balancer E.g. Frontdoor.

How

Documentation - What is ADF?