Infraestrutura
Visão Geral
Toda a infraestrutura dos AI Agents INCI Brasil está hospedada em um único servidor cloud gerenciado pela OptiCloud, com deploy e orquestração através do EasyPanel.
Servidor Principal
Especificações
- Provedor: OptiCloud
- CPU: 16 cores
- RAM: 32 GB
- Sistema Operacional: Linux Ubuntu
- Gerenciamento: EasyPanel
Por que EasyPanel?
EasyPanel é uma plataforma de gerenciamento de containers Docker que simplifica:
- Deploy de aplicações
- Gerenciamento de serviços
- Configuração de variáveis de ambiente
- Monitoramento básico
- Backups automáticos
Documentação oficial: https://easypanel.io/docs
Instalação do EasyPanel
Pré-requisitos
Certifique-se de que o Docker está instalado:
curl -sSL https://get.docker.com | sh
Instalação
Execute com privilégios de root (sudo):
docker run --rm -it \
-v /etc/easypanel:/etc/easypanel \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
easypanel/easypanel setup
- EasyPanel instala Docker Swarm e outras ferramentas
- Recomendado instalar em servidor limpo
- Portas 80 e 443 devem estar disponíveis e não bloqueadas pelo firewall
Atualização
EasyPanel tenta atualizar automaticamente. Para forçar atualização manual:
docker image pull easypanel/easypanel && docker service update easypanel --force
Reset de Senha
Se precisar resetar a senha do EasyPanel:
docker run --rm -it \
-v /etc/easypanel:/etc/easypanel \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
easypanel/easypanel reset-password
Serviços em Execução
1. Chatwoot (v4.0.1)
Containers:
chatwoot- Aplicação principalchatwoot-sidekiq- Workers para jobs assíncronoschatwoot-postgres- Banco de dados PostgreSQLchatwoot-redis- Cache e filas
Como foi instalado:
- No EasyPanel, clicar em
+no projeto - Clicar em
+em Services - Na aba Templates, selecionar "Chatwoot"
- EasyPanel instala automaticamente todos os containers
URL: https://chatwoot.zamply.com.br
2. Dify (v0.13.0)
Containers:
dify-api- API backenddify-web- Interface webdify-worker- Processador de tarefasdify-postgres- Banco de dadosdify-redis- Cache
Como foi instalado:
- No EasyPanel, selecionar template "Dify" (versão 0.13.0)
- Configurar variáveis de ambiente (LLM keys, etc.)
URL: https://dify.zamply.com.br
3. N8N (Queue Mode)
Arquitetura:
- 1 réplica editor: Interface web para criar workflows
- 10 réplicas webhook: Recebem webhooks HTTP
- 25 réplicas worker: Processam jobs da fila (concurrency: 250 por worker)
Como foi configurado:
- Instalar N8N via template do EasyPanel
- Ativar modo queue nas configurações
- Escalar réplicas de webhook e worker conforme necessidade
Configurações importantes:
EXECUTIONS_MODE=queue
QUEUE_BULL_REDIS_HOST=redis
N8N_CONCURRENCY=250 # Por worker
URL Editor: https://n8n-queue.incibrasil.com.br
4. MySQL
Função: Banco de dados principal para dados customizados (logs, webhooks, insights)
Schema: Ver Schema do Banco de Dados
Tabelas principais:
agent- Configurações dos agentesconversation- Conversas e statusmessage- Mensagens processadaswebhook- Webhooks recebidoslogs- Logs de processamento
Cloudflare Pages
Além do servidor OptiCloud, a documentação (este site) está hospedada no Cloudflare Pages para performance e CDN global.
Deploy:
npm run deploy
Este comando:
- Faz build do Docusaurus (
npm run build) - Usa Wrangler para deploy no Cloudflare Pages (
wrangler pages deploy ./build)
Rede e DNS
Domínios
Todos os serviços usam subdomínios de zamply.com.br e incibrasil.com.br:
| Serviço | URL |
|---|---|
| Chatwoot | https://chatwoot.zamply.com.br |
| Dify | https://dify.zamply.com.br |
| N8N | https://n8n-queue.incibrasil.com.br |
SSL/TLS
EasyPanel gerencia certificados SSL automaticamente via Let's Encrypt.
Backup e Recuperação
Estratégia de Backup
-
Banco de Dados PostgreSQL (Chatwoot):
- Backup automático diário via EasyPanel
- Retenção: 7 dias
-
Banco de Dados MySQL:
- Dump manual semanal
- Armazenado em Google Cloud Storage
-
Configurações N8N:
- Workflows exportados mensalmente
- Versionados no Git (repositório privado)
Recuperação de Desastre
Em caso de falha total do servidor:
- Provisionar novo servidor OptiCloud
- Instalar EasyPanel
- Restaurar backups dos bancos de dados
- Recriar serviços via templates do EasyPanel
- Reconfigurar DNS (downtime ~1-2 horas)
Monitoramento
Recursos do Servidor
Através do EasyPanel:
- Uso de CPU por serviço
- Uso de memória
- Uso de disco
- Logs de containers
Alertas
Ainda não temos alertas automáticos configurados. Recomenda-se:
- Integrar com Uptime Robot ou similar
- Configurar alertas de uso de recursos (>80% CPU/RAM)
- Monitorar disponibilidade dos endpoints
Custos Mensais Estimados
| Item | Custo Mensal |
|---|---|
| OptiCloud (16 CPU, 32GB) | R$ 1.500 |
| Cloudflare Pages | Gratuito |
| WhatsApp Business API | Variável (por mensagem) |
| Total Fixo | R$ 1.500 |
Para informações detalhadas sobre os custos por mensagem do WhatsApp Business API, consulte a página oficial de preços da Meta.
Próximos Passos
- Conheça os Fornecedores em detalhes
- Explore a Arquitetura Geral do sistema