On Срд, 25 чэр 2025, Oron Peled wrote:
Hi,I've played with LDIF export/import years before IPA, but there's still big knowledge gap. A SOHO installation is not rare and we need a detailed howto for in-place migration (with obvious downtime) This documentation is more critical because upstream (RHEL) doesn't support this path. Example stuff: * Checking used backend (like was provided in this mail thread) * Listing which services should be down (i.e: ldif offline export, or online DS with other IPA parts down) * LDIF authentication -- is it just usual kinit? or some DS specific parameter/command? * What's the path of the database? (only for DS-offline export if that's the recommended path) * Precise commands with parameters and options for export and import * Sanity checks before/after migration Also: * This howto should be published well before migration (so it's indexed by search engines before people start searching in amok after instances get broken) * Most of this information is very useful for general backup/recovery in any SOHO installation Therefore it's best to prepare it as such and use DB switchover as an example use-case * A link to a preliminary draft may be published here, so we can carefully try it and provide feedback and improvements. (e.g: someone on this thread had an issue with finding the instance name...) Thank you all for the hard work, it's fully understood that such a switchover isn't trivial upgrade.
I just migrated my Fedora 42 deployment that was running since 2013 from bdb to mdb backend by using a single command, as described in the Change itself: # systemctl stop dirsrv@INSTANCE-NAME # dsctl INSTANCE-NAME dblib bdb2mdb cleanup dbmapdir=/var/lib/dirsrv/slapd-INSTANCE-NAME/db dbhome=/dev/shm/slapd-INSTANCE-NAME dblib=bdb Required space for LDIF files is about 6.7 MB Required space for DBMAP files is about 109.3 MB Required number of dbi is 256 Backends exportation 0.000000% (changelog) ldiffile: /var/lib/dirsrv/slapd-INSTANCE-NAME/ldif/__dblib-changelog.ldif Backends exportation 0.205885% (ipaca) ldiffile: /var/lib/dirsrv/slapd-INSTANCE-NAME/ldif/__dblib-ipaca.ldif Exporting changelog /var/lib/dirsrv/slapd-INSTANCE-NAME/db/ipaca/replication_changelog.db to /var/lib/dirsrv/slapd-INSTANCE-NAME/ldif/__dblib-ipaca.cl5.dbtxt Backends exportation 28.257699% (userroot) ldiffile: /var/lib/dirsrv/slapd-INSTANCE-NAME/ldif/__dblib-userroot.ldif Exporting changelog /var/lib/dirsrv/slapd-INSTANCE-NAME/db/userRoot/replication_changelog.db to /var/lib/dirsrv/slapd-INSTANCE-NAME/ldif/__dblib-userroot.cl5.dbtxt Backends exportation 100% Updating dse.ldif file Backends importation 0.000000% (changelog) Backends importation 0.205885% (ipaca) Importing changelog /var/lib/dirsrv/slapd-INSTANCE-NAME/db/ipaca/replication_changelog.db from /var/lib/dirsrv/slapd-INSTANCE-NAME/ldif/__dblib-ipaca.cl5.dbtxt Backends importation 28.257699% (userroot) Importing changelog /var/lib/dirsrv/slapd-INSTANCE-NAME/db/userRoot/replication_changelog.db from /var/lib/dirsrv/slapd-INSTANCE-NAME/ldif/__dblib-userroot.cl5.dbtxt Backends importation 100% Migration from Berkeley database to lmdb is done. # systemctl start dirsrv@INSTANCE-NAME We cannot really automate it as export of the database will require enough space to handle it. You can adjust optiosn to bdb2mdb subcommand to specify a temporary location for that but the command needs to be run by the administrators manually. -- / Alexander Bokovoy Sr. Principal Software Engineer Security / Identity Management Engineering Red Hat Limited, Finland -- _______________________________________________ devel mailing list -- [email protected] To unsubscribe send an email to [email protected] Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/[email protected] Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
