Meeting-BaaS On-Premises: Implante Sua Própria Infraestrutura de Bot de Reunião

LLazare Rossillon

Implante o Meeting-BaaS em sua própria infraestrutura com controle total dos dados e segurança de nível empresarial. Conheça o custo real de $0,066/hora por bot com atualizações automáticas, deployments sem tempo de inatividade e capacidades completas de personalização.

Meeting-BaaS On-Premises: Implante Sua Própria Infraestrutura de Bot de Reunião
August 7, 2025

Meeting-BaaS On-Premises: Guia de Início Rápido

Usando nossas imagens Docker pré-construídas, você pode facilmente ter sua própria infraestrutura do Meeting BaaS em funcionamento. Este artigo mostra como isso é possível, o que você vai precisar e, mais importante, quanto isso deve custar.

Você terá controle total sobre seus dados, capacidades completas de personalização e segurança de nível empresarial, mantendo a mesma funcionalidade de API da versão hospedada.

Mais importante, este deployment permite que você pague o preço real pelos bots de reunião ($0,066/hora) com a estabilidade de um produto comercial mantido, com um Acordo de Nível de Serviço.

Crie assistentes de reunião com IA, workflows automatizados de transcrição, streaming de áudio em tempo real, análises de reunião, rastreamento de interações com clientes, monitoramento de conformidade e sumarização inteligente de reuniões com plena soberania dos dados.

Avaliação de Preços

Estimamos que a configuração básica custará aproximadamente $5.500/mês no total, distribuídos da seguinte forma:

Custos da Configuração Básica:

  • Nossa taxa de consultoria: $10.000/mês (inclui configuração, manutenção, suporte e SLA)
  • Custos de infraestrutura: $1.500/mês (inclui 8 bots em execução o tempo todo)

Exemplo: 20.000 horas por mês

  • Configuração básica: $5.500/mês (inclui 1.408 horas - 8 horas/dia × 8 bots × 22 dias úteis)
  • Horas adicionais: 18.592 horas × $0,066 = $1.227
  • Total: $6.727/mês ($0,336/hora)

A eficiência de custo melhora com a escala:

  • 50.000 horas/mês: ~$8.700/mês ($0,174/hora)
  • 100.000 horas/mês: ~$12.100/mês ($0,121/hora)

Pré-requisitos

  • Kubernetes cluster (1.20+)
  • Um banco de dados PostgreSQL
  • Uma instância Redis
  • Armazenamento compatível com S3
  • Uma fila SQS
  • kubectl configurado
  • Docker/container runtime
  • 16GB+ de RAM, mínimo de 8+ vCPUs
  • Acesso à internet de saída para plataformas de reunião

Como funciona?

Nosso deployment on-premises utiliza automação de CI/CD de nível empresarial para manter sua infraestrutura sincronizada com nossas melhorias mais recentes.

Atualizações Automáticas via CI/CD

Sincronização Transparente:

  • Integração com GitHub: Nosso pipeline de CI/CD constrói e envia automaticamente novas imagens Docker quando atualizamos nosso código
  • Atualizações em Tempo Real: Seu backend local e bots puxam automaticamente as versões mais recentes do nosso registry
  • Zero Intervenção Manual: Não é necessário verificar atualizações manualmente — tudo acontece automaticamente

Como Funciona o Processo de Atualização:

  1. Alterações de Código: Nosso workflow do GitHub Actions constrói automaticamente novas imagens Docker com hashes de commit do git e as envia para o nosso Scaleway Container Registry

  2. Detecção Automática: Seu Kubernetes cluster monitora nosso registry e utiliza rolling updates para deployments sem tempo de inatividade

  3. Deployment Sem Tempo de Inatividade: O sistema substitui pods um a um, garantindo que os novos pods estejam saudáveis antes de encerrar os antigos

Principais Benefícios:

  • Sempre Atualizado: Recursos mais recentes, correções de bugs e patches de segurança automáticos
  • Zero Downtime: Atualizações transparentes sem interrupção do serviço
  • Rastreamento de Versões: Trilhas de auditoria completas com hashes de commit do git
  • Confiabilidade Empresarial: Mesmo pipeline de CI/CD do nosso ambiente de produção

Você obtém controle total sobre sua infraestrutura com sincronização automática para nossas melhorias mais recentes.

Configuração Rápida

1. Clonar Configuração do Kubernetes

git clone https://github.com/Meeting-BaaS/kubernetes-config.git
cd kubernetes-config

2. Instalar o BaaS CLI

./baas_controller.sh install

3. Configurar o Ambiente

export ENVIRON=prod  # or preprod for staging

4. Implantar os Serviços

# Deploy bots (uses pre-built Docker images)
ENVIRON=prod ./baas_controller.sh bots install

# Check status
ENVIRON=prod ./baas_controller.sh bots status

# View logs
ENVIRON=prod ./baas_controller.sh bots log -f

Comandos Principais

Gerenciamento de Bots

# Install bots
ENVIRON=prod ./baas_controller.sh bots install

# Upgrade bots (zero downtime)
ENVIRON=prod ./baas_controller.sh bots upgrade

# Check status
ENVIRON=prod ./baas_controller.sh bots status

# View logs
ENVIRON=prod ./baas_controller.sh bots log -f

# Uninstall (causes downtime)
ENVIRON=prod ./baas_controller.sh bots uninstall

Gerenciamento do Servidor de API

# Install API server
ENVIRON=prod ./baas_controller.sh api install

# Upgrade API server
ENVIRON=prod ./baas_controller.sh api upgrade

# Check status
ENVIRON=prod ./baas_controller.sh api status

# View logs
ENVIRON=prod ./baas_controller.sh api log -f

Gerenciamento do Cluster

# Install cluster
ENVIRON=prod ./baas_controller.sh cluster install

# Access metrics
ENVIRON=prod ./baas_controller.sh cluster metrics

Requisitos de Recursos

Por Pod de Bot

  • CPU: 1,5 vCPU (requests) / 3 vCPU (limits)
  • Memória: 3GB de RAM (requests) / 6GB de RAM (limits)
  • Armazenamento: 20GB para gravações

Mínimo de Infraestrutura

  • Plano de Controle: 2 vCPU, 4GB de RAM
  • Nós de Trabalho: 16 vCPU, 32GB de RAM (suporta ~8 bots)
  • Banco de Dados: 8 vCPU, 32GB de RAM (PostgreSQL)
  • Cache: 2 vCPU, 4GB de RAM (Redis)

Variáveis de Ambiente

# Required
export ENVIRON=prod
export KUBECONFIG=/path/to/kubeconfig

# Optional
export SKIP_VALIDATION=1  # Skip confirmations

Atualizações Sem Tempo de Inatividade

# Always use upgrade, never install for running services
ENVIRON=prod ./baas_controller.sh bots upgrade
ENVIRON=prod ./baas_controller.sh api upgrade

Solução de Problemas

# Check pod status
kubectl get pods -n services

# Describe pod issues
kubectl describe pod <pod-name> -n services

# Check persistent volumes
kubectl get pvc -n services

# Test connectivity
kubectl exec -it <pod-name> -n services -- curl -I https://meet.google.com

Integração de API

# Set API endpoint
export MEETING_BAAS_API=https://your-domain.com/api
export API_KEY=your-api-key

# Test connection
curl -H "Authorization: Bearer $API_KEY" $MEETING_BAAS_API/version

Configuração de Armazenamento

Volumes Persistentes

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: bot-storage
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 20Gi
  storageClassName: sbs-15k  # High IOPS

Classes de Armazenamento

  • sbs-15k: Alto IOPS para gravações
  • sbs-default: Uso geral
  • scw-bssd: NVMe para alto desempenho

Monitoramento

# Access Grafana (if deployed)
ENVIRON=prod ./baas_controller.sh cluster metrics

# Check resource usage
kubectl top pods -n services
kubectl top nodes

Escalabilidade

# Scale bots horizontally
kubectl scale deployment meeting-bots --replicas=10 -n services

# Auto-scaling (HPA)
kubectl get hpa -n services

Segurança

Políticas de Rede

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: bot-network-policy
spec:
  podSelector:
    matchLabels:
      app: meeting-bots
  policyTypes:
    - Ingress
    - Egress
  egress:
    - to:
        - namespaceSelector: {}
      ports:
        - protocol: TCP
          port: 443

RBAC

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: services
  name: bot-role
rules:
  - apiGroups: [""]
    resources: ["pods", "services"]
    verbs: ["get", "list", "watch"]

Backup e Recuperação

# Database backup
kubectl exec -it postgres-pod -n services -- pg_dump meeting_baas > backup.sql

# Restore database
kubectl exec -i postgres-pod -n services -- psql meeting_baas < backup.sql

Limpeza

# Remove all services
ENVIRON=prod ./baas_controller.sh bots uninstall
ENVIRON=prod ./baas_controller.sh api uninstall

# Remove cluster (destructive)
ENVIRON=prod ./baas_controller.sh cluster uninstall
Similar blogsplatform