Pular para o conteúdo principal

Guia de Instalação On-Premise

Este documento descreve os pré-requisitos pré-implantação, etapas de verificação e considerações necessárias para a instalação e implantação bem-sucedidas do produto EKB On-Premise. Ele serve como uma lista de verificação abrangente para garantir que o ambiente do cliente esteja configurado corretamente e atenda a todos os requisitos necessários antes de prosseguir com a implantação.

Pré-requisitos​

Requisitos de Acesso​

  • Acesso ao Servidor:
    • Confirme o acesso aos servidores de implantação com privilégios sudo.
    • Verifique se todas as rotas de rede necessárias foram estabelecidas por meio de uma VPN segura ou configuração de rede dedicada.
  • Permissões de Usuário:
    • Certifique-se de que a equipe de implantação recebeu os direitos de acesso necessários.
    • Valide se a autenticação de dois fatores (2FA) ou tokens de segurança necessários estão configurados.

Requisitos do Sistema​

Sistema Operacional:     \\n           Ubuntu 22 ou RHEL 8.10

Especificações de Hardware:     \\n      Para cada camada de implantação, certifique-se de que o hardware atenda ou exceda os seguintes requisitos:

CamadaNúcleosRAM (GB)SSD
PEQUENO16641TB
MÉDIO321282TB
GRANDEPersonalizadoPersonalizadoPersonalizado
  • GPU (Necessária ao implantar um LLM na mesma máquina que a plataforma EKB.)
  • PEQUENO: Uma única VM com 16 núcleos, 64GB de RAM e 1 TB de SSD pode suportar cerca de 500 (100 simultâneos) usuários. O custo dessas máquinas é de aproximadamente US$ 600 por mês. Esta é uma implantação de tamanho mínimo.
  • MÉDIO: Uma máquina maior com 32 núcleos, 128GB de RAM e 2 TB de SSD pode suportar cerca de 2.000 (500 simultâneos) usuários. O custo dessas máquinas é de aproximadamente US$ 1.200 por mês.
  • GRANDE: Cerca de 10.000 (1.000+ simultâneos) usuários devem ser implantados em contêineres para que a infraestrutura possa escalar para atender às necessidades. Geralmente, o custo mínimo é de US$ 2.000 por mês. Recomenda-se calcular US$ 2.000 por mês para cada 1.000 usuários ativos adicionais. Esta é uma implantação totalmente distribuída.

Ferramentas de Implantação e Dependências de Software​

  • Scripts de Implantação:
    • Scripts de implantação em Bash verificados e com controle de versão.
  • Ferramentas de Gerenciamento de Dependências:
    • Python 3
    • Git (versão atual)
    • Docker (v27.1.1) ou Podman
  • Ferramentas Adicionais (Opcional):
    • Ferramentas de registro e monitoramento (por exemplo, ELK Stack, Prometheus, Grafana) conforme os requisitos de monitoramento do cliente.

Credenciais e Chaves​

  • Credenciais do Servidor:
    • Certifique-se de que todas as credenciais de acesso ao servidor estejam atualizadas e armazenadas de forma segura.
  • Chaves de API e Licenças da Aplicação:
    • Verifique se todas as chaves de API e licenças específicas da aplicação (por exemplo, OpenAI, SERP, Sentry) estão disponíveis e válidas.

Lista de Verificação Pré-Implantação​

Verificação de Hardware e Sistema​

Certifique-se de que as configurações de hardware e sistema do cliente correspondam às especificações:

# Check CPU Information

lscpu                         # Works on both Ubuntu and RHEL

cat /proc/cpuinfo             # More detailed CPU information


# Check Memory Usage

free -h                       # Human-readable format for memory usage

cat /proc/meminfo             # Detailed memory information


# Check Storage Usage

df -h                         # Displays disk usage

lsblk                         # Lists block devices and partitions

Verificação de Software e Dependências​

Verifique se todos os componentes de software necessários estão instalados e com a versão correta:


# Check Docker Version

docker --version              # Applicable for both Ubuntu and RHEL


# Check Docker Compose Version

docker compose version        # For modern Docker setups

docker-compose --version      # For older installations

```

# Check Python Version

python3 --version             # Preferred check for Python 3

python --version              # Alternative if python3 is not available


# Check Git Version

git --version                 # Valid for both Ubuntu and RHEL


Verificação de Rede e Conectividade​

Certifique-se de que a rede esteja configurada corretamente e que haja conectividade de internet adequada para dependências externas ou atualizações:

# Check Internet Connection Availability

ping -c 4 google.com          # Ping Google to verify network connectivity

curl -Is https://www.google.com | head -n 1  # Alternative check using curl

Verificações Adicionais​

Serviços e portas

ServiçoCaminhoParâmetroPortas internasPortas externas
Frontend/FRONTEND_SUFFIX3000—
Nginx/——80, 443
Backend/backendBACKEND_SUFFIX8001—
Automator/automatorAUTOMATOR_SUFFIX8002—
Redis——6379—
RabbitMQ——5672, 15672—
Supabase Kong API Gateway/supabaseSUPABASE_SUFFIX8000, 84438000, 8443 (apenas admin)
Supabase Postgres——6543—
PostgreSQL (automator)——5433—
Redis (automator)——6380—
Ollama——11434— (apenas se implantar o Ollama localmente)

Suporte a protocolos

ServiçoHTTPHTTPSWebSocket
Frontend✓✓—
Nginx✓✓—
Backend✓✓—
Automator✓✓—
Redis✓✓—
RabbitMQ✓✓—
Supabase Kong API Gateway✓✓✓
Supabase Postgres✓✓—
PostgreSQL (automator)✓✓—
Redis (automator)✓✓—
Ollama✓✓—

Observações: Todas as máquinas internas devem ser capazes de comunicar-se livremente entre si. Recomendamos o uso de conexões SSL (HTTPS); o HTTP é suportado durante POCs.

Configurações de Firewall e Segurança:

Valide se as regras de firewall ou grupos de segurança permitem o tráfego necessário.

Arquitetura Geral​

general-arc.png

Diagrama de Arquitetura – On-Premise​

Fluxo de arquitetura de implantação para uma única caixa de máquina virtual com a alocação de recursos pré-requisitos mencionada

general-arc.png

Fluxo de arquitetura de implantação para implantação em Nuvem AWS​

AWS EKS Architecture for EKB