# devopsinsiders/axion-monolithic-infra architecture

> Architecture diagram of the GitHub repository devopsinsiders/axion-monolithic-infra, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-13). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/devopsinsiders/axion-monolithic-infra
- Repository: https://github.com/devopsinsiders/axion-monolithic-infra

## Overview

Axion is a Terraform configuration for provisioning a modular Azure network and compute topology. The documented workflow is an operator applying the dev environment, whose entrypoint calls child modules to provision a resource group, virtual network, subnets, public IPs, and Linux VMs. The README describes frontend, backend, and database subnet roles and four VM roles (UI, telemetry query, ingestion, and database). No source excerpts were provided, so relationships below rely on the README; implementation details beyond its documentation are not inferred.

Main entry points: [`environments/dev/main.tf`](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/environments/dev/main.tf) (Dev environment), [`modules/azurerm_virtual_network/main.tf`](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_virtual_network/main.tf) (Virtual network), [`modules/azurerm_public_ip/main.tf`](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_public_ip/main.tf) (Public IPs), [`modules/azurerm_linux_virtual_machine/main.tf`](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_linux_virtual_machine/main.tf) (Linux VM fleet)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_environment["Environment entrypoint"]
  node_dev["Dev environment<br/>[main.tf]"]
end

subgraph group_network["Network foundation"]
  node_resource_group["Resource group<br/>[main.tf]"]
  node_vnet["Virtual network<br/>[main.tf]"]
  node_subnets["Frontend, backend, database subnets<br/>[main.tf]"]
end

subgraph group_compute["Compute and addressing"]
  node_public_ip["Public IPs<br/>[main.tf]"]
  node_vm["Linux VM fleet<br/>[main.tf]"]
end

node_operator(("Infrastructure operator"))
node_azure["Microsoft Azure"]

node_operator -->|"applies"| node_dev
node_dev -->|"calls module"| node_resource_group
node_dev -->|"calls module"| node_vnet
node_dev -->|"calls module"| node_subnets
node_dev -->|"calls module"| node_public_ip
node_dev -->|"calls module"| node_vm
node_vnet -->|"organizes"| node_subnets
node_dev -->|"provisions topology"| node_azure
node_vm -->|"provisions compute"| node_azure
node_public_ip -->|"provisions addresses"| node_azure

click node_dev "https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/environments/dev/main.tf"
click node_resource_group "https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_resource_group/main.tf"
click node_vnet "https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_virtual_network/main.tf"
click node_subnets "https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_subnet/main.tf"
click node_public_ip "https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_public_ip/main.tf"
click node_vm "https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_linux_virtual_machine/main.tf"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_dev toneBlue
class node_resource_group,node_vnet,node_subnets toneAmber
class node_public_ip,node_vm toneMint
class node_operator,node_azure toneIndigo
```

## Components

### Environment entrypoint

- [Dev environment](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/environments/dev/main.tf): `environments/dev/main.tf`

### Network foundation

- [Resource group](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_resource_group/main.tf): `modules/azurerm_resource_group/main.tf`
- [Virtual network](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_virtual_network/main.tf): `modules/azurerm_virtual_network/main.tf`
- [Frontend, backend, database subnets](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_subnet/main.tf): `modules/azurerm_subnet/main.tf`

### Compute and addressing

- [Public IPs](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_public_ip/main.tf): `modules/azurerm_public_ip/main.tf`
- [Linux VM fleet](https://github.com/devopsinsiders/axion-monolithic-infra/blob/main/modules/azurerm_linux_virtual_machine/main.tf): `modules/azurerm_linux_virtual_machine/main.tf`

### Other components

- **Infrastructure operator**
- **Microsoft Azure**

## Connections

- Infrastructure operator → Dev environment: applies (evidence: `README.md`)
- Dev environment → Resource group: calls module (evidence: `README.md`)
- Dev environment → Virtual network: calls module (evidence: `README.md`)
- Dev environment → Frontend, backend, database subnets: calls module (evidence: `README.md`)
- Dev environment → Public IPs: calls module (evidence: `README.md`)
- Dev environment → Linux VM fleet: calls module (evidence: `README.md`)
- Virtual network → Frontend, backend, database subnets: organizes (evidence: `README.md`)
- Dev environment → Microsoft Azure: provisions topology (evidence: `README.md`)
- Linux VM fleet → Microsoft Azure: provisions compute (evidence: `README.md`)
- Public IPs → Microsoft Azure: provisions addresses (evidence: `README.md`)
