serveurs:installation:bkp-srv:install-instance-backup-script

Installation du script de transfert des sauvegardes des instances des serveurs

L'objectif est de mettre en place un script se chargeant de transférer les dernières sauvegardes des instances "db-srv" et "web-srv" présentes sur le datacenter de Gravelines vers celui de Londres. Il se lancera automatiquement tous les jours.

  • Se connecter à l'instance "bkp-srv" en tant que "backups" : ssh backups@bkp-<region>-sinp
  • Installer l'environnement virtuel spécifique à openstack client (OCS) : virtualenv --python=python3 osc-env
  • Activer l'environnement : source osc-env/bin/activate
  • S'il s'avère nécessaire de mettre à jour Pip :
    • Vérifier la présence de Pip : pip --version
    • Mettre à jour Pip vers sa dernière version : pip install --upgrade pip
    • Vérifier la version de Pip: pip --version
  • Installer le client OpenStack avec Pip :
    • Installer le client OpenStack : pip install python-openstackclient
    • Vérifier la bonne installation du client : openstack --help
    • Installer son auto-complétion sous Bash : openstack complete | sudo tee /etc/bash_completion.d/osc.bash_completion > /dev/null
    • Ré-ouvrir un terminal pour activer l'auto-complétion
  • Créer un dossier ~/bin avec : mkdir ~/bin
  • Modifier le fichier ~/.bashrc afin d'autoriser l'accès aux exécutable du dossier ~/bin lors d'un accès par SSH avec : vi ~/.bashrc
    • Ajouter au début du fichier avant le commentaire « # If not running interactively, don't do anything » le code :
      # Set PATH here to include user's private bin for SSH login
      # It's necessary for using OpenStack Client !
      if [[ -d "${HOME}bin" && ":$PATH:" != *":${HOME}bin:"* ]] ; then
          PATH="${HOME}bin:${PATH}"
      fi
  • Recharger l'environnement : source ~/.bashrc
  • Ajouter le lien symbolique vers l’exécutable d'OSC : ln -s ~/osc-env/bin/openstack ~/bin/openstack
  • Vérifier que l'environnement virtuelle est bien désactivé : deactivate
  • Tester avec la version d'OSC : openstack --version

Le script backup_instance.sh sera utilisé par l'utilisateur "backups" de l'instance "bkp-srv" pour exécuter le transfert des sauvegardes des instances du datacenter de Gravelines (GRA7) vers le datacenter de Londres (UK-1). De façon temporaire, les instances sont stockées sur le volume "bkp-storage" dans le dossier /data/srv-img-bkp/GRA7.

  • Se connecter à l'instance "bkp-srv" en tant qu'utilisateur "backups" : ssh backups@bkp-<region>-sinp
    • Créer un dossier ~/bin/ s'il n'existe pas déjà : mkdir ~/bin
    • Modifier le fichier ~/.bashrc pour prendre en compte les scripts présents dans le dossier ~/bin/. Si le code suivant n'est pas déjà présent ajouter le :
      # Set PATH so it includes user's private bin if it exists and not already set
      if [[ -d "${HOME}bin" && ":$PATH:" != *":${HOME}bin:"* ]] ; then
          PATH="${HOME}bin:${PATH}"
      fi
  • En local sur votre machine placer vous à la racine de votre dépôt sinp-<region>-srv : cd ~/workspace/sinp-<region>-srv/
    • À l'aide de Rsync uploader le scripts de sauvegarde des instances et les fichiers qui lui sont associé :
       rsync -av bkp-srv/home/backups/bin/ backups@bkp-<region>-sinp:/home/backups/bin/ --dry-run 

      (si tout est ok, supprimer l'option --dry-run)

    • À l'aide de Rsync uploader le cron :
      rsync -av bkp-srv/etc/crond.d/ admin@bkp-<region>-sinp:/home/admin/dwl/ --dry-run

      (si tout est ok, supprimer l'option --dry-run

  • Si ce n'est pas déjà fait, créer un utilisateur OpenStack (de type Administrateur) en suivant ce guide : OVH - Créer un utilisateur OpenStack
  • Se connecter à nouveau à l'instance "bkp-srv" en tant qu'utilisateur "backups" : ssh backups@bkp-<region>-sinp
    • Se rendre dans le dossier ~/bin/ : cd ~/bin
    • Créer le fichier de config settings.ini : cp settings.defaut.ini settings.ini ; chmod 600 settings.ini
    • Supprimer les lignes des variables qui ne nécessitent pas d'être surchargées dans le fichier settings.ini.
    • Récupérer les infos nécessaires pour le fichier settings.ini depuis le fichier openrc.sh téléchargeable de la façon indiquée dans ce guide.
  • Se connecter à l'instance "bkp-srv" en tant qu'utilisateur "admin" : ssh admin@bkp-<region>-sinp
    • Copier le fichier de cron dans le dossier cron.d : sudo mv ~/dwl/backup_instance.cron /etc/cron.d/backup_instance
  • Accéder à l'aide du script avec : ./backup_instance.sh -h
  • Le script stocke des logs dans /home/backups/tmp/log/bkp_srv_instance.log
  • Le script envoie un email avec le contenu du log à l'email configuré dans la variable bsi_email_to du fichier ~/bin/settings.default.ini (ou settings.ini).
  • Pour l'utiliser manuellement se connecter en tant que "backups"
  • Se placer dans le dossier ~/bin avec : cd ~/bin
  • Charger les paramètres nécessaires dans les variables d'environnement : source settings.default.ini; source settings.ini
    • À tout moment pour voir les variables d'env d'OSC : printenv | grep OS_
    • Pour change de région (= de datacenter) : export OS_REGION_NAME="UK1" ou export OS_REGION_NAME="GRA7"
  • Lister les images : openstack image list
  • Voir le détail d'une image : openstack image show <image-id>
  • serveurs/installation/bkp-srv/install-instance-backup-script.txt
  • Dernière modification : 2024/01/23 16:38
  • de jpmilcent