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: 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ê precisará e, mais importante, quanto isso deverá 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 ainda, este deployment permite que você pague o preço real pelos meeting bots ($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álise de reuniões, rastreamento de interações com clientes, monitoramento de conformidade e sumarização inteligente de reuniões com soberania total dos dados.
Avaliação de Preços
Estimamos que a configuração básica custará cerca de $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 custos melhora com 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
- Mínimo de 16GB+ de RAM e 8+ vCPUs
- Acesso à internet de saída para plataformas de reunião
Como funciona?
Nosso deployment on-premises usa automação CI/CD de nível empresarial para manter sua infraestrutura sincronizada com nossas melhorias mais recentes.

Builds de Imagem via CI/CD, Deployments ao Seu Comando
Como funciona:
- Integração com GitHub: Nosso pipeline de CI/CD constrói e publica automaticamente novas imagens Docker quando atualizamos nosso código
- Você Controla o Rollout: O Kubernetes não monitora um registry e não faz deploy automaticamente por conta própria — uma nova imagem no nosso registry não toca seu cluster até você autorizar. Execute o comando
baas_controller.sh upgrade(ou configure seu próprio image-watcher, como Flux ou ArgoCD Image Updater, se preferir automatização) para obter uma nova tag.
Como Funciona o Processo de Atualização:
-
Alterações de Código: Nosso workflow do GitHub Actions constrói automaticamente novas imagens Docker com hashes de commit git e as publica em nosso Scaleway Container Registry
-
Você Aciona o Deploy: Execute o comando de atualização com a nova tag de imagem quando estiver pronto — isso não é automático a menos que você configure seu próprio controller de monitoramento de registry
-
Deployment Sem Tempo de Inatividade: Uma vez acionado, o Kubernetes substitui os pods um por um, garantindo que os novos pods estejam saudáveis antes de encerrar os antigos
Principais Benefícios:
- ✅ Você Decide Quando: Incorpore funcionalidades, correções e patches de segurança em seu próprio cronograma, não no nosso
- ✅ Zero Downtime: Atualizações contínuas sem interrupção de serviço após acionamento
- ✅ Rastreamento de Versões: Trilhas de auditoria completas com hashes de commit git
- ✅ Confiabilidade Empresarial: Mesmo pipeline de CI/CD do nosso ambiente de produção
Você tem controle total sobre sua infraestrutura, incorporando nossas melhorias mais recentes sempre que executar o comando de atualização.
Configuração Rápida
1. Clonar Configuração do Kubernetes
git clone https://github.com/Meeting-BaaS/kubernetes-config.git
cd kubernetes-config2. Instalar o BaaS CLI
./baas_controller.sh install3. Configurar o Ambiente
export ENVIRON=prod # or preprod for staging4. Implantar 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 -fComandos Principais
Gerenciamento de Bot
# 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 uninstallGerenciamento 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 -fGerenciamento do Cluster
# Install cluster
ENVIRON=prod ./baas_controller.sh cluster install
# Access metrics
ENVIRON=prod ./baas_controller.sh cluster metricsRequisitos de Recursos
Por Pod de Bot
- CPU: 1,5 vCPU (requests) / 3 vCPU (limits)
- Memória: 3GB RAM (requests) / 6GB RAM (limits)
- Armazenamento: 20GB para gravações
Mínimo de Infraestrutura
- Plano de Controle: 2 vCPU, 4GB RAM
- Nós de Trabalho: 16 vCPU, 32GB RAM (suporta ~8 bots)
- Banco de Dados: 8 vCPU, 32GB RAM (PostgreSQL)
- Cache: 2 vCPU, 4GB RAM (Redis)
Variáveis de Ambiente
# Required
export ENVIRON=prod
export KUBECONFIG=/path/to/kubeconfig
# Optional
export SKIP_VALIDATION=1 # Skip confirmationsAtualizaçõ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 upgradeSoluçã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.comIntegração com 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/versionConfiguração de Armazenamento
Volumes Persistentes
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: bot-storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
storageClassName: sbs-15k # High IOPSClasses de Armazenamento
sbs-15k: Alto IOPS para gravaçõessbs-default: Uso geralscw-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 nodesEscalabilidade
# Scale bots horizontally
kubectl scale deployment meeting-bots --replicas=10 -n services
# Auto-scaling (HPA)
kubectl get hpa -n servicesSeguranç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: 443RBAC
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.sqlLimpeza
# 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