Microsoft Cloud Adoption Framework for Azure provides you with guidance and best practices to adopt Azure.
A landing zone is a segment of a cloud environment, that has been preprovisioned through code, and is dedicated to the support of one or more workloads. Landing zones provide access to foundational tools and controls to establish a compliant place to innovate and build new workloads in the cloud, or to migrate existing workloads to the cloud. Landing zones use defined sets of cloud services and best practices to set you up for success.
Components parts of the Cloud Adoption Framework for Azure Terraform landing zones:
Cloud Adoption Framework for Azure Terraform landing zones is an Open Source project with the following objectives:
- Enable the community with a set of sample reusable landing zones.
- Standardize deployments using battlefield-proven components.
- Accelerate the setup of complex environments on Azure.
- Propose an enterprise-grade approach to adopting Terraform on Microsoft Azure using Cloud Adoption Framework.
- Propose a prescriptive guidance on how to enable DevOps for infrastructure as code on Microsoft Azure.
- Foster a community of Azure Terraformers using a common set of practices and sharing best practices.
See our Getting Started on your laptop, or on the web with Getting Started on VSCodespaces.
See our Getting Started Video
More details on how to develop, deploy and operate with landing zones can be found in the reference section here
Currently we provide you with the following sample landing zones:
Name | Purpose | Depends on | Tested with launchpad |
---|---|---|---|
landingzone_caf_foundations | setup all the fundamentals for a subscription (logging, accounting, security.). You can find all details of the caf_foundations landing zone Here | N/A | launchpad_opensource_light, launchpad_opensource |
landingzone_hub_spoke | example of hub and spoke environment documentation here | landingzone_caf_foundations | launchpad_opensource_light, launchpad_opensource |
landingzone_hub_mesh | example of hub and mesh environment with Azure Virtual WAN documentation here | landingzone_caf_foundations | launchpad_opensource_light, launchpad_opensource |
landingzone_vdc_demo | setup a demo environment of a hub-spoke topology including shared services, as well as various DMZ (ingress, egress, transit). You can find all details of the vdc_demo landing zone Here | landingzone_caf_foundations | launchpad_opensource_light, launchpad_opensource |
landingzone_secure_vnet_dmz | (preview) this is an early implementation of the reference architecture secure_vnet_dmz. This is a work in progress used to illustrate landing zone creation process as described here . You can find all details of the secure vnet dmz landing zone Here | landingzone_caf_foundations | launchpad_opensource_light, launchpad_opensource |
landingzone_starter | this is an empty landing zones to use as a template to develop a level 2 landing zone. You can find all details of the starter landing zone Here | landingzone_caf_foundations | launchpad_opensource_light, launchpad_opensource |
Repo | Description |
---|---|
caf-terraform-landingzones (You are here!) | landing zones repo with sample and core documentations |
rover | devops toolset for operating landing zones |
launchpads | launchpads to support landing zones deployments |
azure_caf_provider | custom provider for naming conventions |
modules | set of curated modules available in the Terraform registry |
Feel free to open an issue for feature or bug, or to submit a PR.
In case you have any question, you can reach out to tf-landingzones at microsoft dot com.
You can also reach us on Gitter
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.