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

# Instalação na GCP

> Deploy do strattum.ai em uma instância Compute Engine na GCP com Docker Compose (tier Starter) ou GKE (tiers Growth e Scale).

> [!NOTE]
>
> O deploy na GCP é 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.

## Modelo de deploy BYOC

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

***

## Tiers disponíveis

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

> [!TIP]
>
> A GCP é a opção de menor custo para o tier Starter entre as três clouds, principalmente pelo IAP (Identity-Aware Proxy) incluso que elimina o custo de bastion host.

***

## Tier Starter — Compute Engine com Docker Compose

### Pré-requisitos

* [ ] Projeto GCP com billing ativo
* [ ] APIs habilitadas: Compute Engine, Cloud Storage, Secret Manager, IAM
* [ ] Permissões: `roles/editor` ou IAM customizado para os recursos listados
* [ ] Região definida (recomendação: `southamerica-east1` — São Paulo)
* [ ] Credenciais dos conectores coletadas (CRM, ERP, etc.)

### Infraestrutura provisionada pelo Terraform

O Terraform da Strattum cria automaticamente:

| Recurso GCP | Especificação | Finalidade |
| - | - | - |
| Compute Engine `e2-standard-4` | 4 vCPU / 16GB RAM | Host principal da plataforma |
| VPC + Subnet | 1 VPC privada + 1 subnet | Isolamento de rede |
| Firewall Rules | Ports 443 (HTTPS), 51820/UDP (WireGuard) | Controle de acesso |
| Cloud Storage Bucket | `<project>-strattum-data` | Data Lake (arquivos Parquet) |
| GCP Secret Manager | 1 secret por instalação | Credenciais e chaves |
| IAM Service Account | SA da VM | Acesso ao GCS e Secret Manager |
| Static IP | 1 IP estático regional | Endereço fixo da instância |
| Cloud NAT | 1 NAT Gateway | Saída de internet para os serviços |

### Processo de instalação

O time da Strattum executa:

```bash theme={null}
strattum init \
  --cloud gcp \
  --tier starter \
  --client <nome-do-cliente> \
  --project <gcp-project-id> \
  --region southamerica-east1
```

### SSH via IAP (Identity-Aware Proxy)

O acesso SSH à instância é feito via IAP sem bastion host:

```bash theme={null}
gcloud compute ssh strattum-<client>-vm \
  --zone southamerica-east1-a \
  --tunnel-through-iap \
  --project <gcp-project-id>
```

> [!NOTE]
>
> O IAP elimina a necessidade de abrir a porta 22 publicamente. O acesso é autenticado via conta Google com permissão `roles/iap.tunnelResourceAccessor`.

### Variáveis de ambiente obrigatórias

```bash theme={null}
# Storage GCS
STORAGE_BACKEND=gcs
GCS_BUCKET=<project>-strattum-data
GCP_PROJECT_ID=<gcp-project-id>
GOOGLE_APPLICATION_CREDENTIALS=/app/secrets/gcp-sa.json

# LLM Provider
LLM_PROVIDER=openai
LLM_API_KEY=<chave-do-cliente>
LLM_MODEL=gpt-4o

# 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>
```

### 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 |
| IAP SSH | Acesso da Strattum SRE (`gcloud compute ssh`) |

***

## Tier Growth/Scale — GKE

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

* 2–3 nodes (`e2-standard-4` ou `e2-standard-8`)
* PostgreSQL managed via Cloud SQL for PostgreSQL
* GKE Autopilot ou Standard com HPA nas APIs stateless
* Cloud Load Balancing 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.

***

## Custos estimados (Starter — southamerica-east1)

| Recurso | Custo estimado/mês |
| - | - |
| VM `e2-standard-4` | \~R\$ 550 |
| Cloud Storage (100 GB) | \~R\$ 10 |
| Persistent Disk SSD (100 GB) | \~R\$ 85 |
| Cloud NAT | \~R\$ 150 |
| IAP (incluso) | R\$ 0 |
| **Total** | **\~R\$ 795** |

***

## Segurança

A configuração padrão inclui:

* Encryption at rest nos discos e buckets GCS (gerenciada pelo Google 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 GCP Secret Manager — nunca em plaintext no `.env`
* IAM Service Account com princípio de menor privilégio
* Backup automatizado: PostgreSQL (7 dias via Cloud SQL), 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


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.