6. Procédure de Montée de version VitamUI V8.0

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: V6 -> V7.0 -> V7.1.

6.1. Adaptation des sources de déploiement ansible

6.1.1. Mise à jour des certificats

Cette opération doit être effectuée en cas de mise à jour mineure depuis une version v7.1.2- (v7.1.2 ou inférieure) vers une version v8.0.1+ (v8.0.1 ou supérieure). Cette opération doit être effectuée avec les sources de déploiement de la V8.0.1+.

Il est fortement recommandé de re-générer la PKI pour corriger le nom de domaine des certificats (Common Name / Subject Alternative Name) des services VitamUI afin qu’ils soient conformes au domaine consul associé.

En particulier, si les certificats sont générés via une PKI de production, il faudra veiller à bien les préfixer par vitamui- (exemple vitamui-iam-external.service.consul et vitamui-iam-external.service.site1.consul, au lieu de iam-external.service.consul et iam-external.service.site1.consul)

Si vous utilisez la PKI d’exemple de VitamUI, vous pouvez procéder à la re-génération des nouveaux certificats comme suit :

  • 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.

  • Re-générer les stores de VitamUI

    ./generate_stores.sh true
    

    Le paramètre true permet d’écraser les stores existants.

Important : La mise à jour des certificats est fortement recommandée. Dans le cas où vous ne souhaitez pas la réaliser, il faudra alors désactiver les contrôles de certificats via la clé vitamui_defaults.services.ssl_hostname_verification.

6.1.2. Configuration des jetons de communication interne CAS

Cette opération doit être effectuée en cas de mise à jour majeure depuis une version v7.1.2- (version 7.1.2 ou inférieure) vers une version v8.0.1+ (version 8.0.1 ou supérieure).

Une nouvelle clé vitamui.cas_server.secret_token doit être éditée dans le fichier de configuration environments/group_vars/all/vault-vitamui.yml. Elle permet de sécuriser les appels d’API entre le CAS Server et IAM.

ansible-vault edit --vault-password-file vault_pass.txt environments/group_vars/all/vault-vitamui.yml

Attention, la clé devrait être configurée avec une clé alphanumérique longue et sans caractères spéciaux.


6.2. Procédures à exécuter AVANT la montée de version

6.2.1. 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

6.2.2. Réinitialisation des certificats en bdd

En cas de re-génération des certificats, ils doivent être mis à jour en base de données.

ansible-playbook -i environments/<inventaire> ansible-vitamui-exploitation/reinit_security_certificates.yml --ask-vault-pass

6.2.3. Arrêt complet de VitamUI

Cette opération doit être effectuée AVANT la montée de version vers la V8.0. Cette opération doit être effectuée avec les sources de déploiement de l’ancienne version.

VitamUI doit être arrêté :

ansible-playbook -i environments/<inventaire> ansible-vitamui-exploitation/stop_vitamui.yml --ask-vault-pass

6.3. Application de la montée de version

6.3.1. Lancement du master playbook vitamui

Cette opération doit être effectuée avec les sources de déploiement de la V8.0.

ansible-playbook -i environments/<inventaire> ansible-vitamui/vitamui.yml --ask-vault-pass

6.4. Procédures à exécuter APRÈS la montée de version

N/A