Aller au contenu

Mise à jour de Canopsis

Cette procédure décrit la mise à jour d'une instance mono-nœud de Canopsis.

Lisez l'ensemble de ce document avant de procéder à toute manipulation.

Important

Les environnements n'ayant pas été installés en suivant l'une des méthodes d'installation officielles de Canopsis, notamment les environnements de type Docker Swarm ou en paquets multi-nœuds, ne sont pas pris en charge par cette procédure.

Procédure de mise à jour

Vous devez tout d'abord lire chacune des notes de version publiée entre votre version actuelle et celle que vous ciblez. En savoir plus sur les numéros de version de Canopsis.

Par exemple, si vous effectuez une mise à jour de Canopsis 3.38.0 à 3.40.0, vous devez :

  • consulter et appliquer toute procédure donnée dans les notes de version de Canopsis 3.39.0,
  • puis celles de Canopsis 3.39.1,
  • puis celles de Canopsis 3.40.0,
  • puis suivre le reste de cette procédure, selon votre méthode d'installation (paquets ou Docker Compose).

Si vous bénéficiez d'un développement spécifique (modules ou add-ons ayant été spécifiquement développés pour votre installation), assurez-vous de suivre toute procédure complémentaire vous ayant été communiquée.

Attention

La mise à jour causera une interruption de service de Canopsis et des composants qui lui sont associés, durant son déroulement.

Vous pouvez notamment utiliser la fonctionnalité de diffusion de messages afin de prévenir vos utilisateurs en amont.

Mise à jour en installation par paquets

Les commandes suivantes doivent être réalisées avec l'utilisateur root.

Appliquez la mise à jour des paquets Canopsis :

yum --disablerepo="*" --enablerepo="canopsis*" update

Vous devez ensuite finaliser la mise à jour avec les commandes suivantes, fonction de votre édition de Canopsis (Community ou Pro) :

su - canopsis -c "canopsinit --canopsis-edition core"
su - canopsis -c "canopsinit --canopsis-edition cat"

Puis, après avoir pris en compte toute éventuelle remarque des notes de version au sujet du fichier canopsis.toml, appliquez les changements de configuration :

set -o allexport ; source /opt/canopsis/etc/go-engines-vars.conf
/opt/canopsis/bin/canopsis-reconfigure -migrate-postgres=true -postgres-migration-mode=up -postgres-migration-directory=/opt/canopsis/share/migrations/postgres

Puis, redémarrez l'ensemble des moteurs Canopsis :

systemctl daemon-reload
canoctl restart

Ne pas oublier d'appliquer toute éventuelle procédure supplémentaire décrite dans chacune des notes de version qui vous concerne.

Mise à jour en environnement Docker Compose

Après avoir suivi les notes de version, resynchronisez l'ensemble de vos fichiers Docker Compose avec les fichiers de référence correspondant à la version voulue :

Puis, exécutez la commande suivante :

docker-compose up -d

Ne pas oublier d'appliquer toute éventuelle procédure supplémentaire décrite dans chacune des notes de version qui vous concerne, y commpris toute éventuelle remarque des notes de version au sujet du fichier canopsis.toml.

Après la mise à jour

Durant le temps de coupure des services Canopsis, RabbitMQ se sera chargé de mettre en attente vos évènements. Ils seront alors « dépilés » et traités normalement par les moteurs Canopsis, dès leur redémarrage.

Cette accumulation d'évènements en attente peut, néanmoins, provoquer une latence des traitements, ou une augmentation de la consommation des ressources, en raison du rattrapage à effectuer. Cette incidence reste temporaire. Nous vous conseillons de surveiller l'interface d'administration de RabbitMQ juste avant, durant et après la mise à jour, afin de mesurer l'état de « retour à la normale » de votre plateforme lors d'une période de maintenance de l'outil.

En revanche, tout appel fait aux API Canopsis durant cette période de maintenance n'aura pas été temporisé et devra donc être renouvelé s'il a échoué.

Une fois que le service est rétabli, vous pouvez vous connecter à nouveau sur l'interface Canopsis pour valider que tout fonctionne correctement.


Dernière mise à jour: 2022-02-18