IAC & PLATFORM

IaC & Plattformstandard

Repeterbar infrastruktur med Terraform/Bicep och policy som gör miljöer konsekventa. Infrastruktur du kan replikera. Inte återskapa.

Varför Infrastructure as Code?

Problem med manuell infrastruktur-hantering

Miljöer driftar isär

Dev, test och prod ser olika ut. "Configuration drift" gör troubleshooting och rollbacks osäkra.

Manuella ändringar är osynliga

Klickops i portalen lämnar inga spår. Ni vet inte vad som ändrats eller vem som ändrat det.

Ingen konsekvent standard

Varje team bygger resurser på sitt sätt. Taggar, naming, networking — allt är inkonsekvent.

Disaster recovery är omöjligt

Vid incident vet ni inte exakt hur miljön såg ut. Att återskapa tar veckor, inte timmar.

Vad vi levererar

Komplett IaC-plattform med governance

Terraform/Bicep modules & templates

Återanvändbara, testade och dokumenterade moduler för vanliga mönster.

  • Network modules (VNet, Subnets, NSG)
  • Compute modules (VMs, AKS, Functions)
  • Data modules (Storage, SQL, Cosmos)
  • Security modules (Key Vault, Managed Identity)

Policy as Code & guardrails

Automatisk validering av standards och compliance-krav.

  • Azure Policy/AWS SCP som kod
  • Pre-deployment validation
  • Tagging enforcement
  • Cost controls (budget limits)

Environment parity & drift detection

Säkerställ att alla miljöer är identiska och upptäck avvikelser automatiskt.

  • Samma kod för alla miljöer
  • Environment-specific variables
  • Continuous drift detection
  • Automated remediation

State management & locking

Säker state-hantering med locking för att undvika konflikter.

  • Remote state i Azure Storage/S3
  • State locking för concurrent runs
  • Encrypted state files
  • State backup & versioning

Exempel: IaC-workflow

Så här ser ett typiskt IaC-flöde ut

# main.tf - Exempel på Terraform module

module "networking" {
  source = "./modules/network"
  
  environment     = var.environment
  location        = var.location
  address_space   = ["10.0.0.0/16"]
  
  # Tagging enforced via module
  tags = local.common_tags
}

module "aks_cluster" {
  source = "./modules/aks"
  
  cluster_name    = "${var.project}-${var.environment}-aks"
  vnet_id         = module.networking.vnet_id
  subnet_id       = module.networking.aks_subnet_id
  
  # Policy validated before apply
  node_count      = var.node_count
  vm_size         = var.vm_size
}

1. Code Review & Validation

All IaC går genom PR-process med automated checks (terraform validate, plan, policy scan).

2. Plan & Approval

Terraform/Bicep plan visas i PR. Godkännande krävs innan apply.

3. Apply via Pipeline

CI/CD kör terraform apply med state locking. All output loggas.

4. Drift Detection

Continuous drift detection alarm om manuella ändringar görs utanför IaC.

Platform Standards vi bygger

Standarder som gör miljöer konsekventa

Naming Conventions

  • Konsekvent naming för alla resurser
  • Environment prefixes/suffixes
  • Region-aware naming
  • Auto-generated names via modules

Tagging Strategy

  • Mandatory tags (owner, cost-center, environment)
  • Optional tags (project, backup-policy)
  • Auto-tagging via modules
  • Tag compliance reports

Network Architecture

  • Hub-spoke topology
  • Standardiserade subnets
  • NSG/firewall rules as code
  • Private endpoints by default

Security Baselines

  • Encryption at rest & in transit
  • Managed identities över keys
  • RBAC assignments as code
  • Security scanning i pipeline

Redo att standardisera er infrastruktur?

Boka ett möte så går vi igenom er nuvarande setup och visar vägen till IaC.