- Apr 17, 2025
Migration Postgresql avec Veeam Backup & Replication
La migration des bases de données
Un nouveau client utilise Veeam Backup & Replication version 12 est son moteur de base de données est Microsoft SQL. Il n'a pas encore procédé à la migration, comme le propose le guide de l'éditeur.
La limite technique de la taille des bases de Microsoft SQL (express) est de 10GB, tandis que le coût d'achat d'une licence Microsoft SQL sont des éléments importants et historiques de la solution. Avec la version 12, il est désormais possible de migrer vers Postgresql afin de s'affranchir de ses limitations. C'est un moteur robuste et open-source, celui-ci est désormais privilégié par l'éditeur.
Lors de notre migration vers Postgresql, nous avons rencontré un problème qui n'est pas évoqué dans la documentation. L'erreur suivant apparait : "Unable to check for active orchestrated tasks. Access denied." Voici notre retour d'expérience à ce sujet.
Les pré-requis avant migration
Le guide recommande les étapes suivantes :
Utiliser un compte avec les permissions "administrateur"
Désactiver l'ensemble des jobs du serveur Veeam Backup & Replication
Désactiver le MFA avant la migration vers Postgresql
Sauvegarder la configuration du serveur Veeam Backup & Replication
La migration vers Postgresql
Migrer depuis la console Veeam, rubrique : "Configuration Backup"
Sélectionner l'option "Migrate"
Focus sur l'étape 6 "Specify Target Database"
Il est important de ne pas ajouter le nom du serveur (hostname) mais localhost, car si vous utilisez le nom d’hôte du serveur pour la connexion PostgreSQL alors Windows se connectera avec sa propre adresse IP. PostgreSQL n’autorise pas cette connexion par défaut sans modifier le fichier pg_hba.conf.
Résolution des anomalies
Assurer vous que le service postgresql soit exécuté sur le serveur
Il est possible d'utiliser Test-NetworkConnection :
PS C:\Users\Administrator> tnc VEEAMSERVER -port 5432
WARNING: TCP connect to (fe80::xxx:xxx:xxx:xxxxxx : 5432) failed
WARNING: TCP connect to (10.xxx.xxx.xxx : 5432) failed
ComputerName : VEEAMSERVER
RemoteAddress : fe80::xxx:xxx:xxx:xxxxxx
RemotePort : 5432
InterfaceAlias : Ethernet0
SourceAddress : fe80::xxx:xxx:xxx:xxxxxx
PingSucceeded : True
PingReplyDetails (RTT) : 0 ms
TcpTestSucceeded : FalseVérifier vos règles de pare-feux locaux utilisées en cas d'anomalie
En cas d'investigation, vous avez accès aux journaux de postgresql dans l'emplacement par défaut :
C:\Program Files\PostgreSQL\15\data\log-
Les deux fichiers importants qui peuvent être modifiés, généralement avec le support veeam en cas de nécessité sont :
C:\Program Files\PostgreSQL\15\data\pg_ident.conf
C:\Program Files\PostgreSQL\15\data\pg_hba.conf
-
Si après la migration, la console affiche le message "Failed to connect to Veeam Backup & Replication server: Access denied." il est nécessaire d'utiliser la cli postgres ou installer pgadmin. Exécuter ensuite la commande du KB pour désactiver le MFA :
UPDATE public.Options set value = 'False' where name = 'GlobalMFA' Si les jobs ne fonctionnent pas après réactivation, alors il est nécessaire de vérifier l'inventaire, les proxies et les repositories, le scan des repositories est important pour la mise à jour de la database.
N'oubliez pas d'exécuter le scheduler "security and compliance Analyzer" pour vérifier que les valeurs sur le fichier de configuration : postgresql.conf sont conformes.
Conclusion
Une fois les étapes ci-dessus réalisées, un test de sauvegarde du serveur Veeam et des backup jobs devrait être concluant.
Il vous suffira par la suite de supprimer votre serveur MSSQL et le client SSCM si celui-ci est présent. La documentation et les KB de l'éditeur sont relativement bien écrits tandis que le support de l'éditeur est généralement d'une aide précieuse en cas de problème.