{"repo":"amirhosssein0/terraform-lab","free":true,"listed":false,"github":"https://github.com/amirhosssein0/terraform-lab","clone":"git clone https://github.com/amirhosssein0/terraform-lab.git","description":"Azure infrastructure as code with Terraform — AKS, ACR, VNet, PostgreSQL","language":"HCL","stars":22,"topics":["aks","azure","azure-storage","azurerm","postgresql","terraform","terraform-module"],"license":"MIT","category":"deployment-docker-iac","readme_excerpt":"&nbsp;&nbsp;&nbsp; terraform-lab Modular Azure Infrastructure as Code with Terraform --- What is this? A modular Terraform project that provisions a complete Azure environment from scratch: networking, a Kubernetes cluster with autoscaling, a container registry, a managed PostgreSQL database, and a Key Vault for secrets — all wired together and using a remote state backend. The goal of this lab is to demonstrate clean Terraform module design, not a single monolithic main.tf . --- Architecture --- Modules Module Purpose --- --- modules/resource-group Creates the Azure Resource Group modules/vnet Virtual Network + Subnet for AKS modules/acr Azure Container Registry modules/aks AKS cluster with autoscaling node pool (1–3 nodes) modules/postgresql PostgreSQL Flexible Server (burstable tier) modules/keyvault Key Vault storing the generated PostgreSQL password Each module is self-contained with its own main.tf , variables.tf , and outputs.tf — designed to be reused across multiple environments ( dev , staging , prod ) by simply pointing a new environments/ folder at them with different variable values. --- Key Design Decisions Autoscaling — how it actually works The AKS node pool uses auto scaling enabled = true with min count = 1 and max count = 3 . Node count is not driven directly by CPU/memory usage on existing nodes — it's driven by scheduling pressure: This pairs with the Horizontal Pod Autoscaler (HPA) used in k8s-gitops-lab : HPA scales pod count based on CPU/memory metrics","default_branch":null,"files":null,"tree":[],"storefront":"/r/amirhosssein0","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/amirhosssein0/terraform-lab/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}