Meeting-BaaS On-Premises : Déployez Votre Propre Infrastructure de Bots de Réunion
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.
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 :
-
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
-
Détection Automatique : Votre cluster Kubernetes surveille notre registre et utilise des mises à jour progressives pour des déploiements sans interruption
-
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-config2. Installer BaaS CLI
./baas_controller.sh install3. Définir l'Environnement
export ENVIRON=prod # ou preprod pour le staging4. 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 -fCommandes 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 uninstallGestion 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 -fGestion du Cluster
# Installer le cluster
ENVIRON=prod ./baas_controller.sh cluster install
# Accéder aux métriques
ENVIRON=prod ./baas_controller.sh cluster metricsExigences 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 confirmationsMises à 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 upgradeDé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.comInté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/versionConfiguration du Stockage
Volumes Persistants
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: bot-storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
storageClassName: sbs-15k # High IOPSClasses de Stockage
sbs-15k: High IOPS pour les enregistrementssbs-default: Usage généralscw-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 nodesMise à l'Échelle
# Mettre à l'échelle les bots horizontalement
kubectl scale deployment meeting-bots --replicas=10 -n services
# Auto-scaling (HPA)
kubectl get hpa -n servicesSé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: 443RBAC
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.sqlNettoyage
# 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