Project

General

Profile

Tâche #19915

Scénario #18341: Les sauvegardes Bacula/Bareos ne doivent pas dépendre de creoled

Vérifier ce qu'il en est sur les différentes versions d'EOLE

Added by Joël Cuissinat about 3 years ago. Updated almost 3 years ago.

Status:
Fermé
Priority:
Normal
Assigned To:
Start date:
03/27/2017
Due date:
% Done:

100%

Estimated time:
4.00 h
Spent time:
Remaining (hours):
0.0

History

#1 Updated by Scrum Master about 3 years ago

  • Status changed from Nouveau to En cours

#2 Updated by Scrum Master about 3 years ago

  • Assigned To set to Daniel Dehennin

#3 Updated by Daniel Dehennin about 3 years ago

  • Dans python-pyeole
    rgrep get_creole bareos*
    bareos.py:    return u'oui' == client.get_creole('activer_bareos_sd')
    bareos.py:    return u'oui' == client.get_creole('activer_bareos_dir')
    bareos.py:    if client.get_creole('bareos_sd_local') != 'non' and \
    bareosrestore.py:    return creole_client.get_creole('bareos_db_type')
    bareosrestore.py:    return joinpath(creole_client.get_creole('bareos_db_extract_dir'), 'bareos.sql')
    bareosrestore.py:    return creole_client.get_creole('activer_bareos_dir') == 'oui'
    bareosrestore.py:    bareos_fd = creole_client.get_creole('nom_machine') + '-fd'
    bareosrestore.py:    bareos_dir_name = creole_client.get_creole('bareos_dir_name')
    bareosrestore.py:        bareos_dir_name = creole_client.get_creole('bareos_dir_name')
    
  • Dans eole-bareos
    rgrep -E 'get_creole|CreoleGet'
    bareos/restore/catalog.py:    if client.get_creole('module_instancie') == 'non':
    diagnose/153-bareos:        pass=$(CreoleGet bareos.monitor.bareos_mon_password)
    diagnose/153-bareos:        /usr/lib/nagios/plugins/check_bareos -H localhost -D $2 -K "$pass" -M bareos-$(CreoleGet nom_machine)-mon > /dev/null 2>&1
    diagnose/153-bareos:TestBareosDaemon "Bareos Director" dir "$(CreoleGet activer_bareos_dir)" 
    diagnose/153-bareos:TestBareosDaemon "Bareos Client" fd "$(CreoleGet activer_bareos_dir)" 
    diagnose/153-bareos:TestBareosDaemon "Bareos Storage" sd "$(CreoleGet activer_bareos_sd)" 
    diagnose/153-bareos:if [ "$(CreoleGet activer_bareos_sd)" = 'oui' ];then
    diagnose/153-bareos:    if [ "$(CreoleGet bareos.support.support_type)" = 'none' ];then
    diagnose/153-bareos:if [ "$(CreoleGet activer_bareos_dir)" = "oui" ]; then
    posttemplate/00-bareos:if [ "$(CreoleGet activer_bareos_dir)" = "oui" ]; then
    scripts/bareosregen.sh:    bareos_db_type=$(CreoleGet bareos_db_type)
    scripts/bareosregen.sh:    options="-uroot -p$passwd -h $(CreoleGet adresse_ip_mysql)" 
    scripts/bareosregen.sh:if [ "$noquestion" = "1" -o "$(CreoleGet activer_bareos_dir)" = "oui" ]; then
    scripts/bareosregen.sh:    mode_conteneur_actif=$(CreoleGet mode_conteneur_actif)
    scripts/bareosregen.sh:GRANT ALL PRIVILEGES ON TABLE @DB_NAME@.* TO @DB_USER@@$(CreoleGet adresse_ip_br0) @DB_PASS@;
    

#4 Updated by Daniel Dehennin almost 3 years ago

  • Status changed from En cours to Nouveau

#5 Updated by Daniel Dehennin almost 3 years ago

  • Assigned To deleted (Daniel Dehennin)

#6 Updated by Benjamin Bohard almost 3 years ago

  • Status changed from Nouveau to En cours
  • Assigned To set to Benjamin Bohard
  • Remaining (hours) changed from 4.0 to 3.67

Outre les appels à creoled listés ci-dessus, compter aussi avec les scripts lancés autour de la sauvegarde (schedule).

Appels à CreoleRun.

Nécessiterait la templatisation d’un fichier contenant les variables correspondant aux conteneurs : mode conteneur actif, chemin et ip des conteneurs.

#7 Updated by Benjamin Bohard almost 3 years ago

Une autre proposition consiste à templatiser les scripts eux-mêmes.

Dans tous les cas, cette templatisation doit intervenir au début de la phase preservice, certains scripts de cette phase faisant appel à CreoleRun.

#8 Updated by Benjamin Bohard almost 3 years ago

  • % Done changed from 0 to 60
  • Remaining (hours) changed from 3.67 to 3.17

Au final, il faudrait, pour pallier un éventuel problème de creoled, l’ensemble des variables (CreoleGet --list) et les informations complémentaires sur les conteneurs (CreoleClient().get_container_infos() et CreoleClient.get_groups()). Il faut changer l’ensemble des scripts utilisés pour schedule (dans le cadre restreint de la résolution de https://dev-eole.ac-dijon.fr/issues/19403)

#9 Updated by Benjamin Bohard almost 3 years ago

  • Status changed from En cours to Résolu
  • % Done changed from 60 to 100
  • Remaining (hours) changed from 3.17 to 0.25

Problème commun à toutes les versions maintenues utilisant Bareos.

#10 Updated by Benjamin Bohard almost 3 years ago

Sans plus judicieux de prévoir une méthode de contournement dans creole/client.py directement.

#11 Updated by Daniel Dehennin almost 3 years ago

L’étude d’impact est faite => on ferme.

#12 Updated by Daniel Dehennin almost 3 years ago

  • Status changed from Résolu to Fermé
  • Remaining (hours) changed from 0.25 to 0.0

Also available in: Atom PDF