[Netbox] Migration v2.x vers 3.x

 

Article original Publié le : 18 février 2022
Mise à jour le :

Contexte

Je dois mettre à jour un serveur Netbox en V2.6.6 sous Debian 9, Python 3.5.3, Redis-server 3.2.6 et Postgresql 9.6.

Les prérequis pour la v3 sont
Python 3.7
PostgreSQL 10
Redis 4.0

Suite à une installation et différente migration je préfère repartir from scratch depuis une Debian 11 par palier en migrant vers la 2.9.9 puis la 2.11.9 et enfin la 3.1.8

 

 

Prérequis

  • Dump de la db

 

  • Maintenir à jour le système

 

  • Quelques paquets utiles

 

Postgresql

  • Installation de Postgresql, vérifier le status du service et le rendre permanent

 

  • Se connecter au shell Postgres puis créer db/user/mdp

 

  • Revenir a son shell puis tester la connexion au user/db

 

  • Restaurer la base de données

 

 

Redis

  • Installation de Redis, vérifier le status du service et le rendre permanent

 

Tester la connexion au service

 

 

Netbox

  • Installation de paquets requis

 

  • Récupérer l’archive 2.9.9

 

  • Création d’un user/group pour les services WSGI et HTTP et le répertoire multimédia

 

  • Générer une secret key (ou récupérer l’existante)

 

  • Créer et configurer le fichier configuration.py avec au minimum les infos db, hosts et secret key

 

  • Lancement du script d’upgrade, il crée son virtual env pour y installer ces paquets et dépendances, une petite vidéo pour le fun

 

  • Si le script d’upgrade n’a pas généré d’erreur, on peut maintenant appliquer les requires et installer napalm

 

  • On peut déjà tester le site, vérifier son comportement, si on récupère bien le compte admin, les utilisateurs puis les objets.

 

 

Migration vers v2.11.9

  • Récupérer l’archive 2.11.9

 

  • Copier le fichier de configuration et le répertoire multimédia, même si celui-ci n’est pas encore utilisé, cela permet de récupérer les attributs.

 

  • Relancer le script d’upgrade

 

  • La encore si pas d’erreur, on applique les requires

 

  • On relance le serveur, on check la version en bas à gauche, l’authentification, la modification/création d’un objet…

 

 

Migration vers v3.1.8

  • Récupérer l’archive 3.1.8

 

  • Copier le fichier de configuration et le répertoire multimédia, même si celui-ci n’est pas encore utilisé, cela permet de récupérer les attributs.

 

  • Relancer le script d’upgrade

  • Quelques warnings a la fin qui n’ont pas d’effet et qui peuvent être enlevé du fichier de conf, ces paramètres n’existent plus en v3

 

  • Éditer puis commenter ces 2 lignes

 

  • Ne pas oublier de repasser les requires

 

  • Tester la connexion au site et refaire un check

La v3 change beaucoup visuellement

 

 

Gunicorn et service Netbox

  • Copier le template vers le répertoire Netbox

 

  • Copier les services dans leur répertoire et reloader le démon

 

  • Démarrer les services, les rendre permanents puis vérifier leur status

 

 

Nginx

  • Installation du paquet

 

  • Commencer par supprimer le vhost par défaut et copier le template tout prêt, puis le customiser, server_name, certificat…

 

  • Copier ces certificats, tester là conf et si tout est ok on restart

 

Tout est UP

Restauré les fichiers si disponibles dans le répertoire /opt/netbox/netbox/media/

 

 

Sources et articles

-https://netbox.readthedocs.io/en/stable/installation/

-https://github.com/netbox-community/netbox/discussions?discussions_q=migration

-https://memos.nadus.fr/debian-10-installation-ipam-netbox/

 

 

POC et article rédigé avec Santi & Tuğçe, The Chronic, Shadows et du Funk Soul Classics

 

 

No votes yet.
Please wait...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.