Skip to content

Migrate User Guide

Dieter Schelkens edited this page Apr 23, 2019 · 1 revision

Prerequisites

This module requires the Lithnet module. If Lithnet is not installed the module will start an installation of Lithnet. If you want to install Lithnet yourself, the installer can be found at the Lithnet installation guide. For more information about Lithnet visit Lithnet on GitHub.

User story example

An example of how to use this migrate module can be found at Migrate User Story.

In this example a user exports all resources and imports these resources in a target MIM-Setup.

Exporting the MIM configuration

Exporting all configurations

To export all resources from a MIM-Setup environment, call Export-MIMSetup with flag -ExportAll. This will retrieve all objects from every object type that are found in the MIM-Setup. All objects from every specific object type that were found are serialized to CliXml and written to a xml file. Every xml file gets its own custom name, depending on what object type was retrieved.

Example: AttributeTypeDescription objects are written to a ConfigAttributes.xml file in a CliXml format.

Exporting certain configurations

If you only want to export a certain configuration you can call the Export-MimConfig with the correct flag(s).

Export-MIMSetup -ExportSchema # Will only export the Schema resources
Export-MIMSetup -ExportPolicy # Will export the Policy resources AND Schema resources (references)
Export-MIMSetup -ExportPortal # Will only export the Portal resources

Be aware that only the found resources in xml files will be used with Start-Migration to compare and import resources. Any references that objects have towards other objects (that have not been exported) can be missing!

Comparing and importing

Required: Xml files that contain resources from a MIM-Setup environment.

Comparing and creating a delta configuration file

Before an import can start a delta configuration file has to be created. This file is created by calling Start-Migration with the correct flag. The -All flag will compare all resources from xml files with all resources from the target MIM-Setup. If differences are found or objects from the source are not found in the target setup, the (new or different) objects get written to a ConfigurationDelta.xml file.

Start-Migration -All

The other flags that are available are -CompareSchema, -ComparePortal and -ComparePolicy, if the user wishes to only compare a certain configuration. Every time a compare is called (for all, schema, portal or policy) all the differences are added to the ConfigurationDelta.xml file. (Duplicates can occur when using multiple compares, but Import-RmConfig from Lithnet will only import new objects or differences to existing objects in the target MIM-Setup)

Start-Migration -CompareSchema -ComparePortal

The user can then continue using the Start-Migration function with the -ImportDelta flag (or use Start-FimDelta to choose which objects will be imported and call the Import-Delta function themselfs).

Importing the delta configuration file

Start-Migration -ImportDelta

When calling Start-Migration with ImportDelta, Start-Migration will search if a ConfigurationDelta.xml file exists. This file can only be created by either calling Start-Migration with -All or with -CompareSchema, -ComparePolicy and/or -ComparePortal. If the file exists the FimDelta.exe will start (called from Start-FimDelta) where the user can choose which resources will be imported into the target MIM-Setup. If the user cancels or closes FimDelta.exe the ConfigurationDelta.xml will be used and all the found differences will be imported. If the user saves the chosen resources, a ConfigurationDelta2.xml is created and will be used instead for importing.

If you want to alter or view the created ConfigurationDelta.xml file yourself you can call the function Start-FimDelta and select the folder where ConfigurationDelta.xml is saved. When you call Import-Delta after the Start-fimDelta, the ConfigurationDelta2.xml file (that contains chosen resources) will instead be imported.

Clone this wiki locally