• Apr 17, 2025

Migration Postgresql avec Veeam Backup & Replication

Avec la version 12 de Veeam Backup & Replication, il est désormais possible de migrer vers Postgresql afin de s'affranchir des limitations de Microsoft SQL Server.

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 :

  1. Utiliser un compte avec les permissions "administrateur"

  2. Désactiver l'ensemble des jobs du serveur Veeam Backup & Replication

  3. Désactiver le MFA avant la migration vers Postgresql

  4. Sauvegarder la configuration du serveur Veeam Backup & Replication

La migration vers Postgresql

  1. Migrer depuis la console Veeam, rubrique : "Configuration Backup"

  2. Sélectionner l'option "Migrate"

  3. 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

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       : False
  • Vé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.