Identity Panel persists all data in one of three locations:
- Database – This is the primary data-store and resides in MongoDB
- Search – Identity Panel stores full-text index data in Elastic search. This store does NOT need to be backed up as it can be fully regenerated from the database by running WebAgent.exe --reindex
- Version Control – A backup should include Identity Panel's version control history which is stored as a git repository in a file folder or share
To backup your database locate where MongoDB is installed and where your database files reside.
- Open Windows Services and find you MongoDB database service
- View properties of the service. This will show where your MongoDB binaries and config file are located:
- Open the file referenced by --config to see where your data files are located
Method 1: File System Backup (outage required)
One backup method is to make a file system copy of the data folder. If using virtualization software you may make a snapshot of this folder and use that as a backup. Otherwise you must stop the MongoDB service, copy the folder, and then start the service again.
Method 2: Mongodump
Open a command prompt and cd in to the MongoDB \bin folder. Run e.g.:
mongodump.exe --out C:\Backup\Database
NOTE: This will backup all databases with a default connection string. If you have configured high availability or customized port and host bindings you will need additional parameters to specify connection details.
Method 3: PanelSetup
The Identity Panel installer self-extracting executable contains a utility called PanelSetup.exe You can run this tool and choose the Backup option from the menu. This utility provides a wrapper around Method 3 and allows you to navigate to MongoDB and backup locations graphically.
Backup Version Control
The version control folder is usually located at C:\Program Files\SoftwareIDM\IdentityPanelWeb\VersionControl. Because version control uses a git repository, simply making a complete copy of the directory will suffice as a backup. If desired this copy may be compressed as a zip folder as the contents are quite compressible.
Compress-Archive -Path "C:\Program Files\SoftwareIDM\IdentityPanelWeb\VersionControl\*" -DestinationPath "C:\Backup\VersionControl.zip"
Because version control uses a git repository you may configure the git repository to track a remote origin. The actual git repository is located in the folder with an on-premise tenant Id (VersionControl\f98fcc9e-30bd-4b2d-8f83-c6663492457b).
See the following link for information about configuring git with a remote origin:
When using a remote origin you should configure a git hook to push when new commits are made.