Comment configurer un cluster Collabora Online avec plusieurs nœuds

Un cluster Collabora Online ne se résume pas à plusieurs coolwsdserveurs fonctionnels derrière un répartiteur de charge à répartition circulaire. L'édition collaborative repose sur l'envoi des requêtes relatives à un même document vers le même nœud Collabora. WOPISrcC'est pourquoi le graphique Kubernetes de Collabora documente le routage par identifiant WOPI. Ce guide utilise le graphique Helm Collabora maintenu sur Kubernetes comme exemple concret de configuration multi-nœuds et indique les modifications nécessaires pour un contrôleur d'entrée différent ou un déploiement hors Kubernetes.

Vérifié : le graphique de Collabora prend en charge plusieurs réplicas et décrit l’affinité par document WOPISrc. Dépend du déploiement : annotations d’entrée, terminaison TLS, requêtes de ressources et pertinence d’un contrôleur de session. Attention : il est déconseillé de supposer que tout équilibreur de charge ou paramètre de « session persistante » préservera l’affinité des documents. Vérifiez le comportement spécifique du contrôleur et testez-le avant de déployer les utilisateurs sur le cluster.

Ce que fait le cluster — et ce qu'il ne fait pas

Dans un déploiement multi-répliques standard, chaque nœud Collabora peut servir des documents, tandis qu'un proxy achemine les requêtes de chaque document vers un nœud. Cela répartit les documents entre les différents nœuds. Cela ne signifie pas pour autant que chaque nœud partage le même processus d'édition en direct ni qu'un document en cours d'édition peut toujours être transféré sans interruption si son nœud tombe en panne.

Collabora documente également un contrôleur COOL pour Kubernetes qui propose une approche différente de la gestion des sessions. Son routage et sa configuration diffèrent de ceux d'un pool de réplicas autonome. Cet article configure le modèle d'affinité WOPI, plus simple ; ne le combinez pas avec les paramètres de jeton de routage spécifiques au contrôleur, sauf si vous avez déployé et configuré ce dernier pour votre version.

Action : déterminez si vous avez besoin d’un service Collabora répliqué de base pour la capacité et la redondance des nœuds, ou d’une configuration gérée par un contrôleur avec prise en charge des sessions. Cette dernière comprend des composants supplémentaires et une configuration spécifique à la version. Consultez la présentation de Collabora Online Controller si vous envisagez cette option.

Avant de déployer

  • Un cluster Kubernetes fonctionnel, Helm, un DNS pour un nom d'hôte Collabora public et un proxy d'entrée ou inverse compatible TLS.
  • Une intégration WOPI telle que Nextcloud, configurée pour utiliser le nom d'hôte public unique de Collabora plutôt que des adresses de pods individuelles.
  • L'hôte ou les hôtes WOPI que Collabora est autorisé à accepter, saisis dans la collabora.aliasgroupsconfiguration du graphique.
  • Une puissance de calcul et une mémoire suffisantes pour la charge de travail liée aux documents, ainsi qu'un moyen d'inspecter l'état des pods, les journaux d'entrée et l'utilisation des ressources.
  • Une fenêtre de maintenance pour le déploiement initial et un document de test avec deux comptes utilisateurs distincts.

Un service Collabora Online dédié est différent du serveur CODE intégré de Nextcloud. Nextcloud décrit son option intégrée comme étant destinée à un usage personnel ou aux petites équipes et ne proposant pas les fonctionnalités de scalabilité avancées d'un serveur dédié. Action : si vous avez besoin d'un pool Collabora multi-nœuds, prévoyez un service dédié et vérifiez le modèle de licence et de support adapté à votre déploiement. Consultez le guide d'installation de Nextcloud Office .

Étape 1 : Choisir le modèle de routage

Le modèle autonome documenté utilise un hachage WOPISrcqui identifie le document dans les requêtes WOPI. Les requêtes concernant un même document doivent parvenir au même pod ; les requêtes concernant des documents différents peuvent être réparties entre plusieurs pods. Une règle de répartition de charge générique ne répond pas à cette exigence.

Action : utilisez une implémentation d’entrée prise en charge par la documentation du graphique, comme les exemples d’entrée NGINX ou HAProxy, ou utilisez le proxy inverse intégré au graphique si le cluster ne prend pas en charge un contrôleur d’entrée approprié. Si vous utilisez un autre proxy, vérifiez qu’il peut acheminer de manière cohérente les requêtes provenant de la source WOPI, aussi bien les requêtes HTTP classiques que les connexions WebSocket persistantes.

Étape 2 : Examinez le graphique et sélectionnez une version

Le graphique et ses valeurs évoluent avec le temps. Avant l'installation, consultez le fichier README et les valeurs officielles actuelles du graphique plutôt que de copier une configuration d'une version antérieure. Les exemples ci-dessous suivent la documentation du graphique Collabora mise à jour le 6 octobre 2026 ; considérez les notes de version et les valeurs actuelles du dépôt comme faisant foi pour votre installation.

helm repo add collabora https://collaboraonline.github.io/online/
helm repo update
helm search repo collabora/collabora-online --versions
helm show values collabora/collabora-online

Action : choisissez une version de graphique conforme à votre politique de gestion des changements et notez la version de l’image Collabora qu’elle déploie. Épinglez la version du graphique pour des mises à niveau reproductibles ; évitez d’utiliser une version flottante non validée en production. Le guide d’installation du graphique est le fichier README de Collabora Online pour Kubernetes .

Étape 3 : Préparer les valeurs pour trois répliques

Cet exemple suppose l'utilisation du contrôleur d'entrée NGINX, la terminaison TLS au niveau de l'entrée et un hôte WOPI externe cloud.example.com. Remplacez les deux noms d'hôte par les vôtres. Si la terminaison TLS se fait ailleurs ou si vous utilisez HAProxy, veuillez utiliser la configuration documentée correspondante de ce contrôleur.

replicaCount: 3

autoscaling:
  enabled: false

ingress:
  enabled: true
  className: nginx
  annotations:
    nginx.ingress.kubernetes.io/upstream-hash-by: "$arg_WOPISrc"
    nginx.ingress.kubernetes.io/proxy-body-size: "0"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
  hosts:
    - host: office.example.com
      paths:
        - path: /
          pathType: ImplementationSpecific

collabora:
  aliasgroups:
    - host: "https://cloud.example.com:443"
  extra_params: --o:ssl.enable=false --o:ssl.termination=true

Les valeurs d'annotation de hachage et de délai d'expiration ci-dessus sont illustrées dans l'exemple NGINX du graphique. Cette extra_paramsligne est pertinente uniquement lorsque le proxy inverse termine la connexion TLS et se connecte à Collabora via HTTP. Ne l'appliquez pas telle quelle si votre topologie TLS est différente. Configurez le secret TLS d'entrée et l'hôte en fonction de votre gestionnaire de certificats et des valeurs de votre graphique local ; cet extrait omet ces paramètres spécifiques au fournisseur.

Action : enregistrez ce fichier my_values.yaml, ajoutez la configuration TLS requise par votre point d’entrée et comparez chaque clé avec celle de la version du graphique sélectionnée values.yaml. Assurez-vous que le nom d’hôte public de Collabora soit cohérent dans le DNS, le TLS, l’URL Collabora de l’intégration et le routage proxy.

Étape 4 : Installez la version Collabora

Installez-le dans un espace de noms dédié. Remplacez-le <chart-version>par la version sélectionnée à l'étape 2 ; les chevrons servent ici d'espace réservé explicatif et ne doivent pas être saisis littéralement.

helm install --create-namespace   --namespace collabora   collabora-online collabora/collabora-online   --version <chart-version>   -f my_values.yaml

Pour une version existante, utilisez une mise à niveau Helm planifiée après avoir consulté les notes de migration et les modifications rendues. Évitez de déployer une image ou une mise à jour majeure de graphique en même temps que votre première modification d'échelle ; modifier une seule variable à la fois facilite l'isolement des erreurs.

Action : inspecter la version et attendre que toutes les répliques soient prêtes :

helm status collabora-online -n collabora
kubectl get pods,svc,ingress -n collabora
kubectl get events -n collabora --sort-by=.lastTimestamp

La présence de trois réplicas souhaités ne garantit pas que trois nœuds opérationnels traitent le trafic. Vérifiez l'état de disponibilité, les redémarrages récents, la planification et les points de terminaison d'entrée. Si des pods restent en attente, examinez la capacité disponible du cluster ainsi que les demandes et les limites de ressources affichées dans le graphique.

Étape 5 : Connectez l’application WOPI

Dans les paramètres d'intégration Office de la plateforme de fichiers, définissez l'URL du serveur Collabora sur le point de terminaison public, par exemple : `http:// https://office.example.comlocalhost:8080`. Ne configurez pas l'application pour qu'elle utilise l'adresse IP d'un pod ou un nom de service Kubernetes, sauf si l'intégration elle-même s'exécute au sein du cluster et que ce routage privé est explicitement pris en charge par votre architecture.

Le nom d'hôte aliasgroupsdoit identifier l'hôte WOPI qui stocke et distribue les documents ; il ne s'agit pas du nom d'hôte Collabora. Une incohérence peut entraîner des échecs de validation de l'hôte WOPI même si les pods et l'ingress Collabora fonctionnent correctement.

Action : saisissez la même URL publique Collabora dans la configuration de l’intégration, enregistrez-la et vérifiez que la connexion ou la découverte réussit. En cas d’échec, vérifiez la liste blanche WOPI de l’application, les groupes d’alias Collabora, le DNS, le TLS et les en-têtes de proxy avant de modifier le nombre de réplicas.

Étape 6 : Tester l’affinité et la collaboration entre les documents

Ouvrez un document de test et examinez les journaux d'entrée ou de proxy pour confirmer quel serveur le traite. Ouvrez ensuite ce même document depuis une seconde session utilisateur et vérifiez que les deux utilisateurs peuvent le modifier et voir les modifications de l'autre. Ouvrez un autre document et vérifiez que l'équilibreur de charge peut l'envoyer à un autre pod opérationnel. Ce test porte sur le routage et la collaboration, et non pas uniquement sur le fait que la page d'accueil renvoie un code HTTP 200.

Action : vérifiez que le hachage source WOPI est présent et appliqué de manière cohérente aux requêtes générées pour un même document, y compris lors de la mise à niveau WebSocket. Si les utilisateurs ne voient pas les modifications des autres, comparez la sélection du serveur de stockage pour un même document avant d’examiner le serveur WOPI ou le cache du navigateur.

Étape 7 : Tester la gestion de l’état et la perte de nœuds

Les contrôles de disponibilité doivent empêcher l'accès au service d'un pod défaillant ou en cours de démarrage. Le graphique inclut les paramètres de démarrage, de disponibilité et de surveillance de la disponibilité, mais le comportement et le délai exacts dépendent de la version du graphique et du cluster sélectionnés. L'indisponibilité d'un pod peut interrompre l'exécution des documents en cours sur ce pod ; un pool d'affinité de base ne doit pas être décrit comme une réplication de session en direct.

Action : dans un environnement de test, retirez un pod du service pendant une session d’édition active, observez le comportement du client et le routage du proxy, puis rouvrez le document et vérifiez qu’il atteint un pod opérationnel. N’effectuez pas ce test sur des documents de production actifs sans plan de maintenance approuvé. Pour une continuité de session plus stricte, évaluez le contrôleur COOL et sa configuration de jeton de routage spécifique à la version.

Étape 8 : Surveiller, régler et mettre à niveau de manière délibérée

Suivez les redémarrages des pods, l'utilisation du processeur et de la mémoire, les erreurs de requêtes et de WebSocket, la latence d'entrée et les rapports des utilisateurs concernant le chargement des documents ou les reconnexions. La documentation des graphiques de Collabora inclut des conseils de surveillance Kubernetes. Configurez les ressources en fonction de la charge de travail observée plutôt que de copier des exemples : la taille des documents, les sessions simultanées, les polices et les habitudes d'édition ont tous une incidence sur la capacité.

Collabora recommande d'exécuter la même version sur tous les nœuds à charge équilibrée afin que les clients reçoivent des ressources web cohérentes et spécifiques à la version. Lors des mises à niveau, utilisez la stratégie de déploiement recommandée, surveillez l'état de préparation et les journaux, et testez l'ouverture d'un document par plusieurs utilisateurs avant de déclarer la modification terminée.

Action : conservez la version du graphique, la version de l’image, le fichier de valeurs et les résultats des tests dans votre enregistrement des modifications. Planifiez les mises à niveau, vérifiez que toutes les répliques convergent vers la version cible et prévoyez un plan de restauration compatible avec le comportement de restauration pris en charge par le graphique.

Idées fausses courantes à vérifier

  • « Trois réplicas créent automatiquement un cluster fonctionnel. » Les réplicas seuls ne configurent pas l’affinité des documents. Vérifiez que les hachages d’entrée sont corrects sur la source WOPI ou que votre contrôleur assure le routage de session prévu.
  • « Les sessions persistantes basées sur l'adresse IP d'un utilisateur suffisent. » Ce n'est pas la règle décrite par le graphique de Collabora pour son pool Kubernetes autonome. Les utilisateurs collaborant sur un même document doivent se connecter au même nœud, même s'ils utilisent des appareils ou des réseaux différents. Configurez l'affinité basée sur les documents et effectuez un test avec deux utilisateurs.
  • « Une page d'accueil fonctionnelle prouve que le cluster est prêt. » Cela prouve seulement qu'une requête HTTP a abouti. Testez l'ouverture et la modification collaborative d'un document, les mises à jour WebSocket et le comportement lorsqu'un pod devient indisponible.
  • L’ajout d’un nœud garantit la continuité des sessions actives en cas de perte de nœud. Un pool d’affinité de source WOPI basique achemine un document vers un nœud ; il n’assure pas la réplication de son processus d’édition en mémoire. Vérifiez le comportement attendu en cas de reprise d’activité lors d’un test contrôlé ou évaluez les fonctionnalités de gestion de session du contrôleur.

Pour les installations non-Kubernetes, le principe d'architecture reste le même, mais les commandes des charts Kubernetes et les annotations d'entrée ne s'appliquent pas. Utilisez la configuration de proxy correspondant à votre version de Collabora et à votre équilibreur de charge, assurez-vous que les connexions WebSocket persistantes sont prises en charge et implémentez le routage par document à l'aide de la source WOPI. Le manuel du SDK Collabora Online décrit l'équilibrage de charge et les WOPISrcexigences d'affinité ; consultez la section correspondante du manuel de la version que vous utilisez.

Laisser un commentaire

Importation et exportation depuis Office Outlook 2010 : Déplacer des données avec un fichier PST

Importation et exportation depuis Office Outlook 2010 : Déplacer des données avec un fichier PST

Découvrez comment importer un fichier PST dans Outlook 2010 ou exporter vos e-mails, contacts, calendrier et tâches. Suivez les instructions dans les menus pour éviter les dossiers manquants ou les doublons.

Modifier la hauteur et la largeur du quadrillage dans Word 2010

Modifier la hauteur et la largeur du quadrillage dans Word 2010

Apprenez à ajuster la hauteur et la largeur des lignes de la grille dans Word 2010, à modifier la fréquence des lignes visibles et à définir l'espacement horizontal et vertical de la grille de dessin sous-jacente.

Récupérer un mot de passe PST Outlook avec Nucleus Kernel

Récupérer un mot de passe PST Outlook avec Nucleus Kernel

Récupérez un mot de passe Outlook PST oublié grâce aux étapes actuelles de Kernel, notamment comment identifier le bon fichier, effectuer une sauvegarde et vérifier les limites de l'outil.

Comment insérer une page web interactive dans une diapositive PowerPoint

Comment insérer une page web interactive dans une diapositive PowerPoint

Utilisez le module complémentaire LiveWeb pour placer un site web sur une diapositive PowerPoint, définir sa taille et son comportement d'actualisation, et vérifier la compatibilité avant la présentation.

Ajoutez les jours fériés nationaux à votre calendrier Outlook

Ajoutez les jours fériés nationaux à votre calendrier Outlook

Ajoutez les jours fériés spécifiques à chaque pays dans le nouvel Outlook, Outlook sur le web ou Outlook classique. Découvrez comment éviter les doublons et vérifier si des dates sont manquantes pour 2026-2027.

Contacts Outlook 2010 : Ajouter des personnes et utiliser le carnet d’adresses

Contacts Outlook 2010 : Ajouter des personnes et utiliser le carnet d’adresses

Apprenez à créer et à organiser des contacts Outlook 2010, à constituer un groupe de contacts et à choisir des personnes enregistrées dans le carnet d'adresses lors de la rédaction d'e-mails.

Comment supprimer les métadonnées et le contenu cachés d'un document Word

Comment supprimer les métadonnées et le contenu cachés d'un document Word

Utilisez l'Inspecteur de document de Word pour examiner les informations sur l'auteur, les commentaires, le suivi des modifications, le texte masqué et d'autres données avant de partager un document, et découvrez ce que l'analyse peut manquer.

Histogramme comparatif dans Excel 2010 : Créer un graphique à barres symétriques

Histogramme comparatif dans Excel 2010 : Créer un graphique à barres symétriques

Créez un histogramme comparatif dans Excel 2010 sous forme de graphique à barres symétriques. Conservez les effectifs des sources, alignez les deux groupes autour de zéro et étiquetez clairement les axes.

Access 2010 : Exporter une table de base de données vers Excel 2010

Access 2010 : Exporter une table de base de données vers Excel 2010

Exportez un tableau Access 2010 vers Excel 2010, choisissez d'inclure ou non la mise en forme, enregistrez les étapes d'exportation réutilisables et vérifiez les problèmes courants de transfert de données.

Comment ouvrir une base de données Access 2010 sur un formulaire

Comment ouvrir une base de données Access 2010 sur un formulaire

Configurez une application de base de données Access 2010 pour qu'elle s'ouvre directement sur un formulaire de saisie de données, masquez les listes d'objets, limitez les menus et vérifiez la configuration avant de la partager.