Ceci est une ancienne révision du document !
Installation du script de transfert des sauvegardes des instances des serveurs
Mettre en place l'environnement
Commencer par mettre en place l'environnement sur l'instance "bkp-srv" :
Installation d'OpenStack Client (OCS)
- 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 ocs-env
- Activer l'environnement :
source ocs-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
Accéder à OCS sans activer l'environnement virtuel
- Créer un dossier ~/bin avec :
mdkir ~/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'OCS :
ln -s ~/ocs-env/bin/openstack ~/bin/openstack
- Vérifier que l'environnement virtuelle est bien désactivé :
deactivate
- Tester avec la version d'OCS :
openstack --version
Mise en place du volume "bkp-storage" (Block Storage)
- Commande un volume Block Storage dans le Public Cloud en le nommant : "bkp-storage"
- Suivre les indications concernant la commande du volume "bkp-storage" et son attachement au serveur "bkp-srv"
- Puis suivre les indications de configuration et montage du volume
- Il n'est pas nécessaire de mettre en place de sauvegarde du volume "bkp-storage" car il contient lui même des sauvegardes…
- Créer le dossier qui contiendra les images des serveurs :
mkdir /data/srv-img-bkp ; chown backups: /data/srv-img-bkp/
Installation des scripts de backup des instances
- 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/ <code> * À l'aide de //Rsync// uploader le scripts de sauvegarde des instances et les fichiers qui lui sont associé : <code bash>rsync -av bkp-srv/home/admin/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
- 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 à 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 fichieropenrc.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
- Notes:
- le script stocke des logs dans
/home/backups/tmp/log/
- le cron envoie un email contenant le récapitulatif de l’exécution du script