Skip to content
Snippets Groups Projects
To learn more about this project, read the wiki.
README.rst 6.13 KiB

Déploiement VITAM-UI

Préparation

Inventaire

Dans environments, créer un inventaire depuis hosts.example

Adaptation des group_vars

Sous environments/group_vars/all, éditer les fichiers au besoin:

Fichier ansible_options.yml

Permet de gérer le nombre de tentatives d'installation de packages, ainsi que le délai entre chaque tentative. Les valeurs par défaut devraient être suffisantes.

Fichier consul_vars.yml

Permet de gérer le paramétrage de Consul. Le paramètre utile est network: "ip_admin", par défaut donc, relié sur le réseau identifié par les host_vars "ip_admin".

Si consul vitam-ui doit être rattaché à consul vitam, décommenter la fin du fichier et paramétrer "à la vitam".

Fichier elasticsearch_log_vars.yml

Ce fichier permet la configuration du cluster Elasticsearch sur lequel logstash envoie les données. Fichier infra.yml ~~~~~~~~~~~~~~~~~~~~~

Ce fichier décrit l'acèès à des services d'infrastructure :

  • accès à un serveur d'envoi de mail (smtp)
  • plate-forme d'enoi de SMS (pour désactive cette section, passer à enabled: false)

Fichier kibana_vars.yml

Paramérage vitam-like pour kibana (semble inutile)

Fichier logstash_vars.yml

Paramétrage du composant vitamui-logstash :

  • nom du package
  • nom du service
  • ports d'écoute
  • gestion des log (rétention, tailles max, ...)

Fichier mongo_express_vars.yml

Paramétrage du composant mongo-express :

  • nom du package
  • nom du service
  • port découte
  • base URI

Fichier mongodb_vars.yml

Paramétrage de MongoDB :

  • nom du package
  • nom du service
  • port d'écoute
  • fréquence du check consul associé
  • niveau de verbosité de mongoDB
  • nom du réplicatset (fonction du paramètre d'inventaire mongo_shard_id)
  • timeout de connexion pour les applications clientes

Fichier repositories.yml

Permet, par un playbook ansible, de configurer les repositories à utiliser pour déployer vitam-ui. Renseigner les URL conformément à votre infrastructure.

Fichier reverse_proxy_conf.yml

Permet de choisir le reverse proxy frontal. Par défaut, apache.

Les valeurs acceptées sont : * apache * nginx

Fichier vault_consul.yml

Warning

Pour le moment, ce fichier n'est pas encrypté par ansible-vault

Permet de gérer l'encryption des messages consul.

Fichier vault_mongo_express.yml

Permet de gérer une basic auth au niveau de l'accès à mongo-express. Laisser vide n'active pas la basic auth.

Fichier vault_mongodb.yml

Warning

Pour le moment, ce fichier n'est pas encrypté par ansible-vault

gestion de la passphrase mongoDB. Gestion des utilisteurs et de leurs droits associés

Fichier vault-keystores.yml

Note

Fichier encrypté par ansible-vault.

Se baser sur le fichier vault-keystore.yml.example

Sont contenus les mots de passe des différents stores au format JKS gérés par la PKI.

Fichier vault-vitamui.yml

Warning

Pour le moment, ce fichier n'est pas encrypté par ansible-vault

Contient le nginx_cert_key_password

Fichier vitam_vars.yml

Fichier à paramétrer avec les informations de VITAM, en particulier les changements de ports par rapport à une installation "par défaut".

La section vitam_certs contient les informations des certificats pour connecter vitam-ui à vitam. Les fichiers *.p12 associés doivent être stockés dans environments/certs_vitam.

Fichier vitamui_vars.yml

"A la vitam", permet le paramétrage des différents composants de vitam-ui.

La section vitamui_platform_informations permet de définir une première entité, ainsi que quelques comptes "administrateur".

Surcharge

Editer le fichier vitamui_extra_vars.yml pour surcharger les variables de group_vas/all si nécessaire.

Mise en place

Playbook bootstrap.yml

Une fois le paramétrage des group_vars/all et éventuels extra vars effectué, il est possible de bootstraper les VM déclarées dans l'inventaire pour pointer sur les repositories de binaire de vitam-ui :

Playbook

ansible-playbook -i <inventaire> bootstrap.yml --vault-password-file vault_pass.txt (-e extra_vars, si nécessaire)

PKI

Depuis le répertoire deployment, lancer les scripts suivants

./pki/scripts/generate_ca.sh
./pki/certs/generate_certs.sh <inventaire>
./generate_stores.sh <inventaire>

Cette PKI, fournie à vocation de tests, permet de créer CA, certificats et stores conformément aux besoins de vitam-ui et en se basant sur les informations renseignées dans group_vars/all et l'inventaire.

Création des host_vars

Le script suivant permet de définir, pour les VM déclarées dans l'inventaire, des host_vars. Ces informations peuvent être mordiées ensuite.

Playbook

ansible-playbook -i <inventaire> generate_hostvars_for_1_network_interface.yml --vault-password-file vault_pass.txt (-e extra_vars)

Création des repositories

ansible-playbook --become -i <inventaire> bootstrap.yml --vault-password-file vault_pass.txt [ --extra-vars=@./environments/vitamui_extra_vars.yml ]

Déploiement

Playbook

ansible-playbook -i <inventaire> vitamui.yml --vault-password-file vault_pass.txt [ --extra-vars=@./environments/vitamui_extra_vars.yml ]

Désinstallation

Playbook

ansible-playbook -i <inventaire> uninstall.yml --vault-password-file vault_pass.txt [ --extra-vars=@./environments/vitamui_extra_vars.yml ]