Procédure de Montée de version VitamUI V9.1
Attention: Veuillez appliquer les procédures spécifiques à chacune des versions précédentes en fonction de la version de départ selon la suite suivante: V7.1 -> V8.0 -> V8.1 -> V9.0 -> V9.1.
Adaptation des sources de déploiement ansible
Séparation des certificats client / serveur – Appels inter-VitamUI
Périmètre : communications mTLS entre services VitamUI (ex. api-gateway → iam, portal → archive-search, etc.)
À partir de la V9.1, les certificats utilisés pour les appels inter-services VitamUI sont explicitement séparés :
Certificat serveur : présenté par un service VitamUI lorsqu’il reçoit une connexion.
Certificat client : présenté par un service VitamUI lorsqu’il appelle un autre service VitamUI.
Chaque service VitamUI possède donc :
Un keystore serveur.
Un keystore client.
Un truststore VitamUI interne est utilisé pour établir la confiance entre services.
Nouvelle arborescence des dossiers :
Les certificats serveurs sont désormais localisés dans
environments/certs/vitamui-services/server/.Les keystores serveurs sont désormais localisés dans
environments/keystores/vitamui-services/server/.Les certificats clients sont désormais localisés dans
environments/certs/vitamui-services/clients/.Les keystores clients sont désormais localisés dans
environments/keystores/vitamui-services/clients/.
Mise à jour des certificats
À partir de la V9.1, la séparation des certificats serveur/client de VitamUI nécessite la regénération de la PKI.
Générer la nouvelle autorité de certification
vitamui-services./pki/scripts/generate_ca.sh true
Le paramètre true permet d’écraser l’autorité de certification existante.
Générer les nouveaux certificats
./pki/scripts/generate_certs.sh environments/<inventaire> true
Le paramètre true permet d’écraser les certificats existants.
Mutualisation des PKIs entre Vitam & VitamUI
Afin de permettre à VitamUI de communiquer avec Vitam, il va falloir procéder à un échanges de certificats et des autorités de certifications.
Pour ce faire, il existe un script permettant de faciliter cet échange qui prend les paramètres suivants:
./scripts/mutualize_certs_for_vitamui.sh -v ../../vitam.git/deployment/environments/certs -u ./environments/certs
Attention ! Après cette étape, il sera nécessaire de regénérer les stores de la zone Vitam, suite à l’ajout des certificats de VitamUI, et de reconfigurer Vitam en utilisant le
--tags update_vitam_certificates.Regénérer les stores de VitamUI
./generate_stores.sh true
Le paramètre true permet d’écraser les stores existants.
Déploiement de la configuration Prometheus pour les métriques VitamUI
Si vous avez déployé Prometheus sur la zone Vitam et que vous souhaitez pouvoir utiliser les nouveaux dashboards associés, vous devrez renseigner la configuration suivante.
Ajouter au fichier d’inventaire le groupe [hosts_prometheus] ainsi que les machines associées correspondantes à l’inventaire de vitam.
################################################################################
# ZONE VITAM
################################################################################
[vitam:children]
hosts_prometheus
[hosts_prometheus]
# EDIT: Optional used for deploying scraping configurations for VitamUI Components
my-vitam-prometheus-server
Le déploiement de la configuration s’effectue à l’aide du playbook: ansible-vitamui-extra/vitamui_extra.yml --tags prometheus
Procédures à exécuter AVANT la montée de version
Mise à jour des dépôts (YUM/APT)
Cette opération doit être effectuée AVANT la montée de version
Afin de pouvoir déployer la nouvelle version, vous devez mettre à jour la variable vitam_repositories sous environments/group_vars/all/repositories.yml afin de renseigner les dépôts à la version cible.
Puis exécutez le playbook suivant :
ansible-playbook -i environments/<inventaire> ansible-vitamui-extra/bootstrap.yml --ask-vault-pass
Mise à jour de MongoDB 8.0.23
Attention Cette opération doit être effectuée après avoir mis à jour les dépôts Vitam en V9.1. Cette opération est à effectuer si vous venez des versions de VitamUI suivantes: V8.1.2-, V9.0.0. Il est recommandé d’effectuer un backup de la base de données à l’aide de mongodump avant de poursuivre.
Exécutez le playbook suivant à partir de l’ansiblerie de la V9.1 :
ansible-playbook -i environments/<inventaire> ansible-vitamui-migration/migration_mongodb_80.yml --ask-vault-pass
Arrêt complet de VitamUI
Cette opération doit être effectuée AVANT la montée de version vers la V9.1.
VitamUI doit être arrêté :
ansible-playbook -i environments/<inventaire> ansible-vitamui-exploitation/stop_vitamui.yml --ask-vault-pass
Application de la montée de version
Lancement du master playbook VitamUI
Cette opération doit être effectuée avec les sources de déploiement de la V9.1.
ansible-playbook -i environments/<inventaire> ansible-vitamui/vitamui.yml --ask-vault-pass
Procédures à exécuter APRÈS la montée de version
N/A