> ## Documentation Index
> Fetch the complete documentation index at: https://strattumai.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Instalação no Azure

> Deploy do strattum.ai em uma Azure VM com Docker Compose (tier Starter) ou AKS (tiers Growth e Scale).

<Note>
  O deploy no Azure é realizado pelo time da Strattum via ferramenta automatizada. Esta página documenta o processo para referência técnica do cliente e do time de operações.
</Note>

## Modelo de deploy BYOC

O strattum.ai opera no modelo **BYOC (Bring Your Own Cloud)**: toda a plataforma é instalada na subscription Azure do próprio cliente. Os dados nunca saem do ambiente corporativo. O time da Strattum acessa apenas logs de infraestrutura via Azure Bastion — nunca os dados de negócio.

<Tip>
  O Azure é a opção natural para clientes que já usam o ecossistema Microsoft — especialmente se utilizam Microsoft 365, Teams, Copilot ou Azure OpenAI. A integração com Microsoft Copilot via MCP Server é mais direta nesse ambiente.
</Tip>

***

## Tiers disponíveis

| Tier        | Infra                                 | Preço            | Capacidade                            |
| ----------- | ------------------------------------- | ---------------- | ------------------------------------- |
| **Starter** | 1 VM `Standard_B4ms` + Docker Compose | \~R\$ 1.350/mês  | Até 50K entidades, até 5 conectores   |
| **Growth**  | AKS (2–3 nodes)                       | \~R\$ 3.000/mês  | Até 500K entidades, até 15 conectores |
| **Scale**   | AKS cloud-native com HPA              | \~R\$ 5.500+/mês | Sem limite, multi-zone                |

<Warning>
  O Azure Starter tem custo \~46% maior que AWS e \~70% maior que GCP principalmente pelo Azure Bastion (\~R\$ 700/mês). Clientes que já usam Azure costumam absorver esse custo como parte do contrato Enterprise existente com a Microsoft.
</Warning>

***

## Tier Starter — Azure VM com Docker Compose

### Pré-requisitos

* [ ] Subscription Azure com billing ativo
* [ ] Resource Group criado (ou permissão para criar)
* [ ] Permissões: `Contributor` na subscription ou Resource Group
* [ ] Região definida (recomendação: `brazilsouth` — São Paulo)
* [ ] SSH public key disponível
* [ ] Credenciais dos conectores coletadas (CRM, ERP, etc.)

### Infraestrutura provisionada pelo Terraform

O Terraform da Strattum cria automaticamente:

| Recurso Azure                | Especificação                            | Finalidade                   |
| ---------------------------- | ---------------------------------------- | ---------------------------- |
| Azure VM `Standard_B4ms`     | 4 vCPU / 16GB RAM                        | Host principal da plataforma |
| VNet + Subnet                | 1 VNet privada + 1 subnet                | Isolamento de rede           |
| NSG (Network Security Group) | Ports 443 (HTTPS), 51820/UDP (WireGuard) | Controle de acesso           |
| Azure Blob Storage           | Container `strattum-data`                | Data Lake (arquivos Parquet) |
| Azure Key Vault              | 1 vault por cliente                      | Credenciais e chaves         |
| Managed Identity             | Atribuída à VM                           | Acesso ao Blob e Key Vault   |
| Static Public IP             | 1 IP estático                            | Endereço fixo da VM          |
| Azure Bastion                | Standard SKU                             | Acesso SSH sem porta pública |

### Processo de instalação

O time da Strattum executa:

```bash theme={null}
strattum init \
  --cloud azure \
  --tier starter \
  --client <nome-do-cliente> \
  --subscription <subscription-id> \
  --region brazilsouth
```

### SSH via Azure Bastion

O acesso SSH à VM é feito via Azure Bastion:

```bash theme={null}
# Via Azure CLI
az network bastion ssh \
  --name strattum-bastion \
  --resource-group strattum-<client>-rg \
  --target-resource-id /subscriptions/<sub-id>/resourceGroups/strattum-<client>-rg/providers/Microsoft.Compute/virtualMachines/strattum-<client>-vm \
  --auth-type ssh-key \
  --username azureuser \
  --ssh-key ~/.ssh/id_rsa
```

### Variáveis de ambiente obrigatórias

```bash theme={null}
# Storage Azure Blob
STORAGE_BACKEND=azure
AZURE_STORAGE_ACCOUNT=<storage-account-name>
AZURE_STORAGE_CONTAINER=strattum-data

# LLM Provider — Azure OpenAI (recomendado para clientes Microsoft)
LLM_PROVIDER=azure_openai
LLM_API_KEY=<azure-openai-api-key>
LLM_MODEL=gpt-4o
LLM_ENDPOINT=https://<seu-recurso>.openai.azure.com/

# Domínio público
TRAEFIK_DOMAIN=app.<dominio-do-cliente>.com.br
TRAEFIK_ACME_EMAIL=ops@<dominio-do-cliente>.com.br

# Zitadel
ZITADEL_DOMAIN=auth.<dominio-do-cliente>.com.br
ZITADEL_MASTERKEY=<gerado-via-openssl>
```

<Note>
  Para clientes com Azure OpenAI, defina `LLM_PROVIDER=azure_openai` e preencha `LLM_ENDPOINT` com o endpoint do recurso Azure OpenAI. O modelo de embedding deve ser deployado separadamente no recurso Azure OpenAI.
</Note>

### Acesso após instalação

| URL                             | Descrição                            |
| ------------------------------- | ------------------------------------ |
| `https://app.<dominio>.com.br`  | Console UI (HTTPS via Let's Encrypt) |
| `https://auth.<dominio>.com.br` | Zitadel — identity provider          |
| VPN WireGuard `:51820`          | Acesso operacional                   |
| Azure Bastion                   | Acesso SSH da Strattum SRE           |

***

## Integração com Microsoft Copilot

Uma das vantagens do deploy no Azure é a proximidade com o ecossistema Microsoft. O MCP Server do strattum.ai pode ser conectado diretamente ao Microsoft Copilot, expondo a memória e o conhecimento da plataforma para o Copilot for Microsoft 365.

Para configurar esta integração, consulte o guia [MCP Server — Microsoft Copilot](/mcp-server/microsoft-copilot).

***

## Tier Growth/Scale — AKS

Para tiers Growth e Scale, a plataforma roda em um cluster AKS com:

* 2–3 nodes (`Standard_D4s_v3` ou similar)
* PostgreSQL managed via Azure Database for PostgreSQL (Flexible Server)
* HPA nas APIs stateless
* Azure Load Balancer como ingress

<Warning>
  Especificações exatas de node types para os tiers Growth e Scale precisam ser validadas com o time de engenharia antes de ir para produção.
</Warning>

***

## Custos estimados (Starter — brazilsouth)

| Recurso                           | Custo estimado/mês |
| --------------------------------- | ------------------ |
| VM `Standard_B4ms`                | \~R\$ 580          |
| Azure Blob Storage (100 GB)       | \~R\$ 11           |
| Managed Disk Premium LRS (100 GB) | \~R\$ 60           |
| Azure Bastion (Standard)          | \~R\$ 700          |
| **Total**                         | **\~R\$ 1.350**    |

<Tip>
  Para reduzir o custo do Azure Bastion, o time da Strattum pode configurar uma VPN alternativa via WireGuard (já incluso na plataforma) e usar apenas o WireGuard para acesso operacional, eliminando o Bastion após o setup inicial.
</Tip>

***

## Segurança

A configuração padrão inclui:

* Encryption at rest nos discos e Azure Blob (gerenciada pela Microsoft por padrão)
* TLS entre todos os serviços internos
* Zero IP público nas APIs internas (acessíveis apenas via VPN WireGuard)
* Secrets no Azure Key Vault — nunca em plaintext no `.env`
* Managed Identity com princípio de menor privilégio
* Backup automatizado: PostgreSQL (7 dias via Azure Database backups), FalkorDB (diário via cron)

***

## Suporte

Dúvidas sobre o deploy? Entre em contato com o time da Strattum:

* Canal Slack compartilhado: `#strattum-suporte`
* Todas as ações do time Strattum ficam registradas em **Governance → Audit Log** no Console
