Meeting-BaaS On-Premises : Déployez Votre Propre Infrastructure de Bots de Réunion

LLazare Rossillon

Déployez Meeting-BaaS sur votre propre infrastructure avec un contrôle total des données et une sécurité de niveau entreprise. Obtenez le coût réel de 0,066 $/heure par bot avec des mises à jour automatiques, des déploiements sans interruption et des capacités de personnalisation complètes.

Meeting-BaaS On-Premises : Déployez Votre Propre Infrastructure de Bots de Réunion
August 7, 2025

Démarrage Rapide Meeting-BaaS On-Premises

En utilisant nos images Docker pré-construites, vous pouvez facilement faire fonctionner votre propre infrastructure Meeting BaaS. Cet article montre comment c'est possible, ce dont vous aurez besoin, et surtout, combien cela devrait vous coûter.

Vous obtiendrez un contrôle total sur vos données, des capacités de personnalisation complètes et une sécurité de niveau entreprise tout en conservant la même fonctionnalité API que la version hébergée.

Plus important encore, ce déploiement vous permet de payer le prix réel pour les bots de réunion (0,066 $/heure) tout en ayant la stabilité d'un produit commercial maintenu, avec un accord de niveau de service.

Construisez des assistants IA pour les réunions, des flux de travail de transcription automatisés, la diffusion audio en temps réel, l'analyse des réunions, le suivi des interactions clients, la surveillance de la conformité et la synthèse intelligente des réunions avec une souveraineté complète des données.

Évaluation des Prix

Nous estimons que la configuration de base vous coûtera environ 5 500 $/mois au total, répartis comme suit :

Coûts de Configuration de Base :

  • Nos honoraires de conseil : 10 000 $/mois (inclut la configuration, la maintenance, le support et le SLA)
  • Coûts d'infrastructure : 1 500 $/mois (inclut 8 bots fonctionnant en permanence)

Exemple : 20 000 heures par mois

  • Configuration de base : 5 500 $/mois (inclut 1 408 heures - 8 heures/jour × 8 bots × 22 jours ouvrables)
  • Heures supplémentaires : 18 592 heures × 0,066 $ = 1 227 $
  • Total : 6 727 $/mois (0,336 $/heure)

L'efficacité des coûts s'améliore avec l'échelle :

  • 50 000 heures/mois : ~8 700 $/mois (0,174 $/heure)
  • 100 000 heures/mois : ~12 100 $/mois (0,121 $/heure)

Prérequis

  • Cluster Kubernetes (1.20+)
  • Une base de données PostgreSQL
  • Une instance Redis
  • Stockage compatible S3
  • Une file d'attente SQS
  • kubectl configuré
  • Runtime Docker/conteneur
  • 16 Go+ de RAM, 8+ vCPU minimum
  • Accès Internet sortant pour les plateformes de réunion

Comment ça fonctionne ?

Notre déploiement on-premises utilise l'automatisation CI/CD de niveau entreprise pour maintenir votre infrastructure synchronisée avec nos dernières améliorations.

Mises à Jour Automatiques via CI/CD

Synchronisation Transparente :

  • Intégration GitHub : Notre pipeline CI/CD construit et pousse automatiquement de nouvelles images Docker lorsque nous mettons à jour notre codebase
  • Mises à Jour en Temps Réel : Votre backend local et vos bots récupèrent automatiquement les dernières versions de notre registre
  • Aucune Intervention Manuelle : Pas besoin de vérifier manuellement les mises à jour - tout se fait automatiquement

Comment Fonctionne le Processus de Mise à Jour :

  1. Changements de Code : Notre workflow GitHub Actions construit automatiquement de nouvelles images Docker avec des hachages de commit git et les pousse vers notre Scaleway Container Registry

  2. Détection Automatique : Votre cluster Kubernetes surveille notre registre et utilise des mises à jour progressives pour des déploiements sans interruption

  3. Déploiement Sans Interruption : Le système remplace les pods un par un, en s'assurant que les nouveaux pods sont sains avant de terminer les anciens

Avantages Clés :

  • Toujours à Jour : Dernières fonctionnalités, corrections de bugs et correctifs de sécurité automatiques
  • Zéro Interruption : Mises à jour transparentes sans interruption de service
  • Suivi des Versions : Pistes d'audit complètes avec des hachages de commit git
  • Fiabilité Entreprise : Même pipeline CI/CD que notre environnement de production

Vous obtenez un contrôle total sur votre infrastructure avec une synchronisation automatique vers nos dernières améliorations.

Configuration Rapide

1. Cloner la Configuration Kubernetes

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

2. Installer BaaS CLI

./baas_controller.sh install

3. Définir l'Environnement

export ENVIRON=prod  # ou preprod pour le staging

4. Déployer les Services

# Déployer les bots (utilise les images Docker pré-construites)
ENVIRON=prod ./baas_controller.sh bots install

# Vérifier le statut
ENVIRON=prod ./baas_controller.sh bots status

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

Commandes Principales

Gestion des Bots

# Installer les bots
ENVIRON=prod ./baas_controller.sh bots install

# Mettre à niveau les bots (sans interruption)
ENVIRON=prod ./baas_controller.sh bots upgrade

# Vérifier le statut
ENVIRON=prod ./baas_controller.sh bots status

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

# Désinstaller (cause une interruption)
ENVIRON=prod ./baas_controller.sh bots uninstall

Gestion du Serveur API

# Installer le serveur API
ENVIRON=prod ./baas_controller.sh api install

# Mettre à niveau le serveur API
ENVIRON=prod ./baas_controller.sh api upgrade

# Vérifier le statut
ENVIRON=prod ./baas_controller.sh api status

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

Gestion du Cluster

# Installer le cluster
ENVIRON=prod ./baas_controller.sh cluster install

# Accéder aux métriques
ENVIRON=prod ./baas_controller.sh cluster metrics

Exigences en Ressources

Par Pod de Bot

  • CPU : 1,5 vCPU (demandes) / 3 vCPU (limites)
  • Mémoire : 3 Go de RAM (demandes) / 6 Go de RAM (limites)
  • Stockage : 20 Go pour les enregistrements

Minimum d'Infrastructure

  • Plan de Contrôle : 2 vCPU, 4 Go de RAM
  • Nœuds Workers : 16 vCPU, 32 Go de RAM (supporte ~8 bots)
  • Base de Données : 8 vCPU, 32 Go de RAM (PostgreSQL)
  • Cache : 2 vCPU, 4 Go de RAM (Redis)

Variables d'Environnement

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

# Optionnel
export SKIP_VALIDATION=1  # Ignorer les confirmations

Mises à Jour Sans Interruption

# Toujours utiliser upgrade, jamais install pour les services en cours d'exécution
ENVIRON=prod ./baas_controller.sh bots upgrade
ENVIRON=prod ./baas_controller.sh api upgrade

Dépannage

# Vérifier le statut des pods
kubectl get pods -n services

# Décrire les problèmes de pods
kubectl describe pod <pod-name> -n services

# Vérifier les volumes persistants
kubectl get pvc -n services

# Tester la connectivité
kubectl exec -it <pod-name> -n services -- curl -I https://meet.google.com

Intégration API

# Définir le point de terminaison API
export MEETING_BAAS_API=https://your-domain.com/api
export API_KEY=your-api-key

# Tester la connexion
curl -H "Authorization: Bearer $API_KEY" $MEETING_BAAS_API/version

Configuration du Stockage

Volumes Persistants

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

Classes de Stockage

  • sbs-15k : High IOPS pour les enregistrements
  • sbs-default : Usage général
  • scw-bssd : NVMe pour haute performance

Surveillance

# Accéder à Grafana (si déployé)
ENVIRON=prod ./baas_controller.sh cluster metrics

# Vérifier l'utilisation des ressources
kubectl top pods -n services
kubectl top nodes

Mise à l'Échelle

# Mettre à l'échelle les bots horizontalement
kubectl scale deployment meeting-bots --replicas=10 -n services

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

Sécurité

Politiques Réseau

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"]

Sauvegarde et Récupération

# Sauvegarde de la base de données
kubectl exec -it postgres-pod -n services -- pg_dump meeting_baas > backup.sql

# Restaurer la base de données
kubectl exec -i postgres-pod -n services -- psql meeting_baas < backup.sql

Nettoyage

# Supprimer tous les services
ENVIRON=prod ./baas_controller.sh bots uninstall
ENVIRON=prod ./baas_controller.sh api uninstall

# Supprimer le cluster (destructif)
ENVIRON=prod ./baas_controller.sh cluster uninstall
Blogs similairesplatform