en-US/RiverMeadow.Migrate.psm1-help.xml

<?xml version="1.0" encoding="utf-8"?>
<helpItems schema="maml" xmlns="http://msh">
  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Start-RMVSphereVMBasedDifferentialMigration</command:name>
      <command:verb>Start</command:verb>
      <command:noun>RMVSphereVMBasedDifferentialMigration</command:noun>
      <maml:description>
        <maml:para>Starts a VM based differential migration.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>Starts a differential migration for the given VM based full migration ID.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Start-RMVSphereVMBasedDifferentialMigration</maml:name>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="mid">
          <maml:name>MigrationId</maml:name>
          <maml:description>
            <maml:para>Specifies the migration ID of a VM based full migration.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Guid</command:parameterValue>
          <dev:type>
            <maml:name>Guid</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="sat">
          <maml:name>ScheduledAt</maml:name>
          <maml:description>
            <maml:para>Specifies the date and time at which the differential migration should be started automatically.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="rc">
          <maml:name>RunContinuous</maml:name>
          <maml:description>
            <maml:para>Indicates whether the differential migration should be run continuously until it's finalized by the user.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="ut">
          <maml:name>UpgradeTools</maml:name>
          <maml:description>
            <maml:para>Indicates whether the VM tools should be upgraded on the target VM.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="ss">
          <maml:name>ShutdownSource</maml:name>
          <maml:description>
            <maml:para>Indicates whether the source VM should be shutdown after the differential migration has completed.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="st">
          <maml:name>ShutdownTarget</maml:name>
          <maml:description>
            <maml:para>Indicates whether the target VM should be shutdown after the differential migration has completed.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="fm">
          <maml:name>FinalizeMigration</maml:name>
          <maml:description>
            <maml:para>Indicates whether the snapshot(s) should be removed from the Target VM in preparation for a cutover, no<linebreak/>
differential migration can be run if this is set to true.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="fm">
          <maml:name>MigrationInstruction</maml:name>
          <maml:description>
            <maml:para>Specifies the special instructions for running the differential migration in the format 'key=value'.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="ive">
          <maml:name>IgnoreValidationErrors</maml:name>
          <maml:description>
            <maml:para>Indicates whether to ignore any preflight errors that may occur.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="mid">
        <maml:name>MigrationId</maml:name>
        <maml:description>
          <maml:para>Specifies the migration ID of a VM based full migration.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Guid</command:parameterValue>
        <dev:type>
          <maml:name>Guid</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="sat">
        <maml:name>ScheduledAt</maml:name>
        <maml:description>
          <maml:para>Specifies the date and time at which the differential migration should be started automatically.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="rc">
        <maml:name>RunContinuous</maml:name>
        <maml:description>
          <maml:para>Indicates whether the differential migration should be run continuously until it's finalized by the user.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="ut">
        <maml:name>UpgradeTools</maml:name>
        <maml:description>
          <maml:para>Indicates whether the VM tools should be upgraded on the target VM.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="ss">
        <maml:name>ShutdownSource</maml:name>
        <maml:description>
          <maml:para>Indicates whether the source VM should be shutdown after the differential migration has completed.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="st">
        <maml:name>ShutdownTarget</maml:name>
        <maml:description>
          <maml:para>Indicates whether the target VM should be shutdown after the differential migration has completed.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="fm">
        <maml:name>FinalizeMigration</maml:name>
        <maml:description>
            <maml:para>Indicates whether the snapshot(s) should be removed from the Target VM in preparation for a cutover, no<linebreak/>
differential migration can be run if this is set to true.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="fm">
        <maml:name>MigrationInstruction</maml:name>
        <maml:description>
          <maml:para>Specifies the special instructions for running the differential migration in the format 'key=value'.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="ive">
        <maml:name>IgnoreValidationErrors</maml:name>
        <maml:description>
          <maml:para>Indicates whether to ignore any preflight errors that may occur. Be advised that setting this parameter to 'true' entails some risk.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <maml:description>
          <maml:para>This cmdlet goes into the interactive mode when no parameters are given.</maml:para>
          <maml:para>When at least one parameter is specified, the cmdlet runs in the non-interactive mode and validates that all<linebreak/>
the required parameters are given.</maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>RMMigrationReturn Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para>This cmdlet returns a RMMigrationReturn object, which has the following attributes:</maml:para>
          <maml:para>
RMMigrationReturn
    [String] MigrationId
    RMPreflightCheck[]
        [String] Name
        [String] DisplayName
        [String] Description
        [String] Status
        RMError
        RMWarning
    [int] ReturnCode
    RMError
        [String] ErrorCode
        [String] Message
        [String] Resolution
    RMWarning
        [String] ErrorCode
        [String] Message
        [String] Resolution
    [Hashtable] OutputData
          </maml:para>
          <maml:para>
RMMigrationReturn.ReturnCode = 0, indicates migration started successfully.
RMMigrationReturn.ReturnCode = 1, indicates that there was an error in starting the migration.
RMMigrationReturn.OutputData, contains any additional data that the cmdlet can return.
          </maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
    </maml:alertSet>
    <command:examples>
      <command:example>
      <maml:title>----------Example 1: Differential migration started successfully----------</maml:title>
      <dev:code>PS C:\&gt; Start-RMVSphereVMBasedDifferentialMigration -MigrationId "23cb1201-d6ce-4a5b-9bb3-d7e94a4288a7" -UpgradeTools $true -ShutdownSource $true
Starting differential migration preflight...
Waiting for differential migration preflight to complete...
Differential migration started successfully, migration ID : a0afb96f-e050-402c-82ad-1f530c7b2608

MigrationId : a0afb96f-e050-402c-82ad-1f530c7b2608
RMPreflightCheck : {Differential migration validation}
ReturnCode : 0
RMError :
RMWarning :
OutputData :
      </dev:code>
      </command:example>
      <command:example>
      <maml:title>----------Example 2: Differential migration scheduled successfully----------</maml:title>
      <dev:code>PS C:\&gt; Start-RMVSphereVMBasedDifferentialMigration -MigrationId "23cb1201-d6ce-4a5b-9bb3-d7e94a4288a7" -ScheduledAt "04/28/2023 18:30"
Starting differential migration preflight...
Waiting for differential migration preflight to complete...
Migration scheduled successfully

MigrationId :
RMPreflightCheck : {Differential migration validation}
ReturnCode : 0
RMError :
RMWarning :
OutputData :
      </dev:code>
      </command:example>
      <command:example>
      <maml:title>----------Example 3: Differential migration started successfully with migration instructions----------</maml:title>
      <dev:code>PS C:\&gt; Start-RMVSphereVMBasedDifferentialMigration -MigrationId "23cb1201-d6ce-4a5b-9bb3-d7e94a4288a7" -MigrationInstruction "vddk_compression=SKIPZ", "vmtools_instalation_retries=5"
Starting differential migration preflight...
Waiting for differential migration preflight to complete...
Differential migration started successfully, migration ID : 1750bcab-8893-4a92-8e07-4078b5bc99e8

MigrationId : 1750bcab-8893-4a92-8e07-4078b5bc99e8
RMPreflightCheck : {Differential migration validation}
ReturnCode : 0
RMError :
RMWarning :
OutputData :
      </dev:code>
      </command:example>
      <command:example>
      <maml:title>----------Example 4: Differential migration failed to start because of preflight errors----------</maml:title>
      <dev:code>PS C:\&gt; Start-RMVSphereVMBasedDifferentialMigration -MigrationId "123a3594-b80d-49ac-9753-0fd1e2ccb2b8"
Starting differential migration preflight...
Waiting for differential migration preflight to complete...

Preflight Check Error(s)
--------------- --------
Differential migration validation Differential Migrations cannot be run because the Target VM is finalized.


MigrationId :
RMPreflightCheck : {Differential migration validation}
ReturnCode : 1
RMError : {RMError}
RMWarning :
OutputData :
      </dev:code>
      </command:example>
      <command:example>
      <maml:title>----------Example 5: Differential migration started with preflight errors ignored----------</maml:title>
      <dev:code>PS C:\&gt; Start-RMVSphereVMBasedDifferentialMigration -MigrationId "123a3594-b80d-49ac-9753-0fd1e2ccb2b8" -IgnoreValidationErrors $true
Starting differential migration preflight...
Waiting for differential migration preflight to complete...

Preflight Check Error(s)
--------------- --------
Differential migration validation Differential Migrations cannot be run because the Target VM is finalized.

Differential migration started successfully, migration ID : ed8a2eed-3dce-43f8-90a7-84c9ef37daff

MigrationId : ed8a2eed-3dce-43f8-90a7-84c9ef37daff
RMPreflightCheck : {Differential migration validation}
ReturnCode : 0
RMError : {RMError}
RMWarning :
OutputData :
      </dev:code>
      </command:example>

    </command:examples>
    <maml:relatedLinks>
      <!--Add links to related content here-->
    </maml:relatedLinks>
  </command:command>

  <command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
    <command:details>
      <command:name>Start-RMVSphereVMBasedMigration</command:name>
      <command:verb>Start</command:verb>
      <command:noun>RMVSphereVMBasedMigration</command:noun>
      <maml:description>
        <maml:para>Starts a full migration of a VM based source.</maml:para>
      </maml:description>
    </command:details>
    <maml:description>
      <maml:para>Starts a full migration of a given VM based source and the parameters of the cmdlet allows the user to provide<linebreak/>
various configuration options for the target VM.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Start-RMVSphereVMBasedMigration</maml:name>
        <command:parameter required="True" pipelineInput="False" position="Named" aliases="svmn">
          <maml:name>SourceVMName</maml:name>
          <maml:description>
            <maml:para>Specifies the VM name of the source machine to be migrated.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="sat">
          <maml:name>ScheduledAt</maml:name>
          <maml:description>
            <maml:para>Specifies the date and time at which the migration should be started automatically.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="tvmn">
          <maml:name>TargetVMName</maml:name>
          <maml:description>
            <maml:para>Specifies the VM name of the target machine.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>SourceVMName</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="sdl">
          <maml:name>SelectedDiskLabel</maml:name>
          <maml:description>
            <maml:para>Specifies the labels of the disks that you want to migrate.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>Labels of all the source disks.</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="tvmvcpuc">
          <maml:name>TargetVMVCPUCount</maml:name>
          <maml:description>
            <maml:para>Specifies the number of virtual CPUs to be assigned to the target VM.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Int</command:parameterValue>
          <dev:type>
            <maml:name>Int</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>The number of CPUs on the source machine</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="cps">
          <maml:name>CoresPerSocket</maml:name>
          <maml:description>
            <maml:para>Specifies the number of processor cores per socket.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>1</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="tvmms">
          <maml:name>TargetVMMemorySize</maml:name>
          <maml:description>
            <maml:para>Specifies the amount of memory in GiB to be allocated to the target VM.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Int</command:parameterValue>
          <dev:type>
            <maml:name>Int</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>Same as the amount of memory currently allocated to the source machine.</dev:defaultValue>
        </command:parameter>
        <command:parameter required="True" pipelineInput="False" position="Named" aliases="dcn">
          <maml:name>DatacenterName</maml:name>
          <maml:description>
            <maml:para>The name of the datacenter where the target VM will be created.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>
        <command:parameter required="False" pipelineInput="False" position="Named" aliases="pipa">
          <maml:name>PreserveIPAddress</maml:name>
          <maml:description>
            <maml:para>Indicates whether the target VM should have the same IP address as the current IP address of the source machine.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

        <command:parameter required="True" pipelineInput="False" position="Named" aliases="nicc">
          <maml:name>DestinationNICConfig</maml:name>
          <maml:description>
            <maml:para>Use this parameter to specify the network configuration for each network interface on the target VM.</maml:para>
          </maml:description>
          <command:parameterValue required="True">RMVSphereDestinationNetworkConfiguration[]</command:parameterValue>
          <dev:type>
            <maml:name>RMVSphereDestinationNetworkConfiguration[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="pmaca">
          <maml:name>PreserveMACAddress</maml:name>
          <maml:description>
            <maml:para>Indicates whether the target VM's MAC address should be same the source VM's MAC address.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="vmt">
          <maml:name>VMTag</maml:name>
          <maml:description>
            <maml:para>Specifies the vSphere VM tags that should be assigned to the target VM.</maml:para>
          </maml:description>
          <command:parameterValue required="True">RMVSphereTag[]</command:parameterValue>
          <dev:type>
            <maml:name>RMVSphereTag[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="True" pipelineInput="False" position="Named" aliases="cln">
          <maml:name>ClusterName</maml:name>
          <maml:description>
            <maml:para>Use this parameter to specify the cluster where the target VM will be created.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="rpn">
          <maml:name>ResourcePoolName</maml:name>
          <maml:description>
            <maml:para>Use this parameter to specify the resource pool that will be assigned to the target VM, the resource pool name<linebreak/>
can be the complete path with the path separator being "/"; the resource pool will be created, if it does not<linebreak/>
exist.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="fn">
          <maml:name>FolderName</maml:name>
          <maml:description>
            <maml:para>Use this parameter to specify the folder name under which the target VM will be created, the folder name can be<linebreak/>
the complete path with the path separator being the "/"; the folder will be created, if it does not exist.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="dcln">
          <maml:name>DatastoreClusterName</maml:name>
          <maml:description>
            <maml:para>Use this parameter to specify the cluster name of the datastore.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String</command:parameterValue>
          <dev:type>
            <maml:name>String</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="True" pipelineInput="False" position="Named" aliases="dsn">
          <maml:name>DatastoreName</maml:name>
          <maml:description>
          <maml:para>Use this parameter to specify one or more datastore names depending on the number of disks on the source<linebreak/>
machine, if the number of datastore names given are less than the number of disks on the source,<linebreak/>
then the last datastore name will be used for all the remaining disks of the source machine.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="spn">
          <maml:name>StoragePolicyNamePerDiskLabel</maml:name>
          <maml:description>
          <maml:para>Specifies the mapping of the disk label of a disk on the source machine to the storage policy name, this<linebreak/>
parameter works in conjunction with the parameter 'DiskProvisioningType' such that any disk that is not<linebreak/>
included in this mapping will default to a disk provisioning type of 'thin'.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Hashtable</command:parameterValue>
          <dev:type>
            <maml:name>Hashtable</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="dpt">
          <maml:name>DiskProvisioningType</maml:name>
          <maml:description>
            <maml:para>This parameter works in conjunction with the parameter "StoragePolicyNamePerDiskLabel" and specifies one or more<linebreak/>
disk provisioning types and is applied to the disks that are not included in the parameter<linebreak/>
"StoragePolicyNamePerDiskLabel" and if there are more disks than what is specified in<linebreak/>
"StoragePolicyNamePerDiskLabel" and the given disk provisioning types then the remaining disks default to<linebreak/>
disk provisioning type of 'thin'.<linebreak/>
Valid values are "thick-lazy-zeroed", "thick-eager-zeroed", "thin" </maml:para>
          </maml:description>
          <command:parameterValue required="True">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="ut">
          <maml:name>UpgradeTools</maml:name>
          <maml:description>
            <maml:para>Indicates whether the VM tools should be upgraded on the target VM.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="hv">
          <maml:name>HardwareVersion</maml:name>
          <maml:description>
          <maml:para>Use this parameter to override the VMware Hardware version that the Migration Appliance is leveraging. This<linebreak/>
option can assist in legacy migration scenarios where older VMware Hardware versions may be required.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Int</command:parameterValue>
          <dev:type>
            <maml:name>Int</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>The Hardware version that was set when creating the Migration Appliance</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="ss">
          <maml:name>ShutdownSource</maml:name>
          <maml:description>
            <maml:para>Indicates whether the source VM should be shutdown after the migration has completed.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="st">
          <maml:name>ShutdownTarget</maml:name>
          <maml:description>
            <maml:para>Indicates whether the target VM should be shutdown after the migration has completed.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="fm">
          <maml:name>FinalizeMigration</maml:name>
          <maml:description>
            <maml:para>Indicates whether the snapshot(s) should be removed from the Target VM in preparation for a cutover, no<linebreak/>
differential migration can be run if this is set to true.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="mi">
          <maml:name>MigrationInstructions</maml:name>
          <maml:description>
            <maml:para>Specifies the special instructions for running the migration in the format 'key=value'.</maml:para>
          </maml:description>
          <command:parameterValue required="True">String[]</command:parameterValue>
          <dev:type>
            <maml:name>String[]</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>None</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="ive">
          <maml:name>IgnoreValidationErrors</maml:name>
          <maml:description>
            <maml:para>Indicates whether to ignore any preflight errors that may occur. Be advised that setting this parameter to<linebreak/>
'true' entails some risk.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

        <command:parameter required="False" pipelineInput="False" position="Named" aliases="oem">
          <maml:name>OverrideExistingMigration</maml:name>
          <maml:description>
          <maml:para>Set this parameter to 'true' when you want to override an existing running migration for the given source machine.</maml:para>
          </maml:description>
          <command:parameterValue required="True">Bool</command:parameterValue>
          <dev:type>
            <maml:name>Bool</maml:name>
            <maml:uri />
          </dev:type>
          <dev:defaultValue>False</dev:defaultValue>
        </command:parameter>

      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="True" pipelineInput="False" position="Named" aliases="svmn">
        <maml:name>SourceVMName</maml:name>
        <maml:description>
          <maml:para>Specifies the VM name of the source machine to be migrated.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="sat">
        <maml:name>ScheduledAt</maml:name>
        <maml:description>
          <maml:para>Specifies the date and time at which the migration should be started automatically.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="tvmn">
        <maml:name>TargetVMName</maml:name>
        <maml:description>
          <maml:para>Specifies the VM name of the target machine.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>SourceVMName</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="sdl">
        <maml:name>SelectedDiskLabel</maml:name>
        <maml:description>
          <maml:para>Specifies the labels of the disks that you want to migrate.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>Labels of all the source disks.</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="tvmvcpuc">
        <maml:name>TargetVMVCPUCount</maml:name>
        <maml:description>
          <maml:para>Specifies the number of virtual CPUs to be assigned to the target VM.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Int</command:parameterValue>
        <dev:type>
          <maml:name>Int</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>The number of CPUs on the source machine</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="cps">
        <maml:name>CoresPerSocket</maml:name>
        <maml:description>
          <maml:para>Specifies the number of processor cores per socket.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>1</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="tvmms">
        <maml:name>TargetVMMemorySize</maml:name>
        <maml:description>
          <maml:para>Specifies the amount of memory in GiB to be allocated to the target VM.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Int</command:parameterValue>
        <dev:type>
          <maml:name>Int</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>Same as the amount of memory currently allocated to the source machine.</dev:defaultValue>
      </command:parameter>
      <command:parameter required="True" pipelineInput="False" position="Named" aliases="dcn">
        <maml:name>DatacenterName</maml:name>
        <maml:description>
          <maml:para>The name of the datacenter where the target VM will be created.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>
      <command:parameter required="False" pipelineInput="False" position="Named" aliases="pipa">
        <maml:name>PreserveIPAddress</maml:name>
        <maml:description>
          <maml:para>Indicates whether the target VM should have the same IP address as the current IP address of the source machine.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>

      <command:parameter required="True" pipelineInput="False" position="Named" aliases="nicc">
        <maml:name>DestinationNICConfig</maml:name>
        <maml:description>
          <maml:para>Use this parameter to specify the network configuration for each network interface on the target VM.</maml:para>
        </maml:description>
        <command:parameterValue required="True">RMVSphereDestinationNetworkConfiguration[]</command:parameterValue>
        <dev:type>
          <maml:name>RMVSphereDestinationNetworkConfiguration[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="pmaca">
        <maml:name>PreserveMACAddress</maml:name>
        <maml:description>
          <maml:para>Indicates whether the target VM's MAC address should be same the source VM's MAC address.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="vmt">
        <maml:name>VMTag</maml:name>
        <maml:description>
          <maml:para>Specifies the vSphere VM tags that should be assigned to the target VM.</maml:para>
        </maml:description>
        <command:parameterValue required="True">RMVSphereTag[]</command:parameterValue>
        <dev:type>
          <maml:name>RMVSphereTag[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="True" pipelineInput="False" position="Named" aliases="cln">
        <maml:name>ClusterName</maml:name>
        <maml:description>
          <maml:para>Use this parameter to specify the cluster where the target VM will be created.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="rpn">
        <maml:name>ResourcePoolName</maml:name>
        <maml:description>
            <maml:para>Use this parameter to specify the resource pool that will be assigned to the target VM, the resource pool name<linebreak/>
can be the complete path with the path separator being "/"; the resource pool will be created, if it does not<linebreak/>
exist.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="fn">
        <maml:name>FolderName</maml:name>
        <maml:description>
            <maml:para>Use this parameter to specify the folder name under which the target VM will be created, the folder name can be<linebreak/>
the complete path with the path separator being the "/"; the folder will be created, if it does not exist.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="dcln">
        <maml:name>DatastoreClusterName</maml:name>
        <maml:description>
          <maml:para>Use this parameter to specify the cluster name of the datastore.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String</command:parameterValue>
        <dev:type>
          <maml:name>String</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="True" pipelineInput="False" position="Named" aliases="dsn">
        <maml:name>DatastoreName</maml:name>
        <maml:description>
          <maml:para>Use this parameter to specify one or more datastore names depending on the number of disks on the source<linebreak/>
machine, if the number of datastore names given are less than the number of disks on the source,<linebreak/>
then the last datastore name will be used for all the remaining disks of the source machine.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="spn">
        <maml:name>StoragePolicyNamePerDiskLabel</maml:name>
        <maml:description>
          <maml:para>Specifies the mapping of the disk label of a disk on the source machine to the storage policy name, this<linebreak/>
parameter works in conjunction with the parameter 'DiskProvisioningType' such that any disk that is not<linebreak/>
included in this mapping will default to a disk provisioning type of 'thin'.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Hashtable</command:parameterValue>
        <dev:type>
          <maml:name>Hashtable</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="dpt">
        <maml:name>DiskProvisioningType</maml:name>
        <maml:description>
            <maml:para>This parameter works in conjunction with the parameter "StoragePolicyNamePerDiskLabel" and specifies one or more<linebreak/>
disk provisioning types and is applied to the disks that are not included in the parameter<linebreak/>
"StoragePolicyNamePerDiskLabel" and if there are more disks than what is specified in<linebreak/>
"StoragePolicyNamePerDiskLabel" and the given disk provisioning types then the remaining disks default to<linebreak/>
disk provisioning type of 'thin'.<linebreak/>
Valid values are "thick-lazy-zeroed", "thick-eager-zeroed", "thin" </maml:para>
        </maml:description>
        <command:parameterValue required="True">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="ut">
        <maml:name>UpgradeTools</maml:name>
        <maml:description>
          <maml:para>Indicates whether the VM tools should be upgraded on the target VM.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="hv">
        <maml:name>HardwareVersion</maml:name>
        <maml:description>
          <maml:para>Use this parameter to override the VMware Hardware version that the Migration Appliance is leveraging. This<linebreak/>
option can assist in legacy migration scenarios where older VMware Hardware versions may be required.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Int</command:parameterValue>
        <dev:type>
          <maml:name>Int</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>The Hardware version that was set when creating the Migration Appliance</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="ss">
        <maml:name>ShutdownSource</maml:name>
        <maml:description>
          <maml:para>Indicates whether the source VM should be shutdown after the migration has completed.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="st">
        <maml:name>ShutdownTarget</maml:name>
        <maml:description>
          <maml:para>Indicates whether the target VM should be shutdown after the migration has completed.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="fm">
        <maml:name>FinalizeMigration</maml:name>
        <maml:description>
            <maml:para>Indicates whether the snapshot(s) should be removed from the Target VM in preparation for a cutover, no<linebreak/>
differential migration can be run if this is set to true.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="mi">
        <maml:name>MigrationInstructions</maml:name>
        <maml:description>
          <maml:para>Specifies the special instructions for running the migration in the format 'key=value'.</maml:para>
        </maml:description>
        <command:parameterValue required="True">String[]</command:parameterValue>
        <dev:type>
          <maml:name>String[]</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>None</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="ive">
        <maml:name>IgnoreValidationErrors</maml:name>
        <maml:description>
            <maml:para>Indicates whether to ignore any preflight errors that may occur. Be advised that setting this parameter to<linebreak/>
'true' entails some risk.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>

      <command:parameter required="False" pipelineInput="False" position="Named" aliases="oem">
        <maml:name>OverrideExistingMigration</maml:name>
        <maml:description>
          <maml:para>Set this parameter to 'true' when you want to override an existing running migration for the given source machine.</maml:para>
        </maml:description>
        <command:parameterValue required="True">Bool</command:parameterValue>
        <dev:type>
          <maml:name>Bool</maml:name>
          <maml:uri />
        </dev:type>
        <dev:defaultValue>False</dev:defaultValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <maml:description>
          <maml:para>This cmdlet goes into the interactive mode when no parameters are given.</maml:para>
          <maml:para>When at least one parameter is specified, the cmdlet runs in the non-interactive mode and validates that all<linebreak/>
the required parameters are given.</maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RMVSphereDestinationNetworkConfiguration</maml:name>
        </dev:type>
        <maml:description>
          <maml:para>Provides options for specifying the network interface configuration.</maml:para>
          <maml:para>
RMVSphereDestinationNetworkConfiguration
  [String] $DestinationNetworkName
  [String] $IPType
  [String] $IPAddress
  [String] $Netmask
  [String] $DefaultGateway
  [String] $PrimaryDNS
  [String] $SecondaryDNS
RMVSphereDestinationNetworkConfiguration.DestinationNetworkName - If the network is under a Distributed Virtual<linebreak/>
(DV) switch, then the it can be specified as "DV switch name/network name", otherwise just specify the<linebreak/>
destination network name.
RMVSphereDestinationNetworkConfiguration.IPType - valid values are "static" and "DHCP".
          </maml:para>
        </maml:description>
      </command:inputType>
      <command:inputType>
        <dev:type>
          <maml:name>RMVSphereTag</maml:name>
        </dev:type>
        <maml:description>
          <maml:para>Provides options for specifying vSphere VM Tags.</maml:para>
          <maml:para>
RMVSphereTag
  [String] $Name
  [String ] $CategoryName
          </maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <maml:name>RMMigrationReturn Object</maml:name>
        </dev:type>
        <maml:description>
          <maml:para>This cmdlet returns a RMMigrationReturn object, which has the following attributes:</maml:para>
          <maml:para>
RMMigrationReturn
    [String] MigrationId
    RMPreflightCheck[]
        [String] Name
        [String] DisplayName
        [String] Description
        [String] Status
        RMError
        RMWarning
    [int] ReturnCode
    RMError
        [String] ErrorCode
        [String] Message
        [String] Resolution
    RMWarning
        [String] ErrorCode
        [String] Message
        [String] Resolution
    [Hashtable] OutputData
          </maml:para>
          <maml:para>
RMMigrationReturn.ReturnCode = 0, indicates migration started successfully.
RMMigrationReturn.ReturnCode = 1, indicates that there was an error in starting the migration.
RMMigrationReturn.OutputData, contains any additional data that the cmdlet can return.
          </maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
    </maml:alertSet>
    <command:examples>
      <command:example>
      <maml:title>----------Example 1: Full migration started successfully----------</maml:title>
      <dev:code>PS C:\&gt; $nic0 = @{DestinationNetworkName = "HP Cluster dvSwitch/VM Traffic - 3 x 1Gbit"; IPType = "dhcp"}
PS C:\&gt; $VMTag1 = [RMVSphereTag]::new("lpop-tag-single-1", "lpop-tags-category-one-tag")
PS C:\&gt; $VMTag2 = [RMVSphereTag]::new("lpop-tag-test2-single-2", "lpop-tags-category-A")

PS C:\&gt; Start-RMVSphereVMBasedMigration -SourceVMName QE-RHEL80 -TargetVMName "Demo-Target-VM" -SelectedDiskLabel "Hard disk 1", "Hard disk 2" -TargetVMVCPUCount 4 -CoresPerSocket 2 -DatacenterName "Toronto Datacenter" -DestinationNICConfig $nic0 -PreserveMACAddress $true -VMTag $VMTag1, $VMTag2 -ClusterName "HP Cluster" -FolderName RiverMeadow/Najeeb -DatastoreName hp1-lun3-raid1-1TB -StoragePolicyNamePerDiskLabel @{"Hard disk 1" = "Management Storage Policy - Large"; "Hard disk 2" = "Datastore Default"} -UpgradeTools $true -HardwareVersion 15
Starting target inventory...
Waiting for target inventory to complete...
Starting source preflight...
Waiting for source preflight to complete...
Starting migration preflight...
Waiting for migration preflight to complete...
Migration started successfully, migration ID : e184f461-a8ec-423c-b7a0-49be063795fd

MigrationId : e184f461-a8ec-423c-b7a0-49be063795fd
RMPreflightCheck : {Conflicting Migration Attempts, source_guest_customization_check, source_disks_present_check,
                   source_nics_present_check...}
ReturnCode : 0
RMError :
RMWarning :
OutputData :
      </dev:code>
      </command:example>
      <command:example>
      <maml:title>----------Example 2: Full migration scheduled successfully and using parameter aliases----------</maml:title>
      <dev:code>PS C:\&gt; $nic0 = @{DestinationNetworkName = "HP Cluster dvSwitch/VM Traffic - 3 x 1Gbit"; IPType = "dhcp"}
PS C:\&gt; $VMTag1 = [RMVSphereTag]::new("lpop-tag-single-1", "lpop-tags-category-one-tag")
PS C:\&gt; $VMTag2 = [RMVSphereTag]::new("lpop-tag-test2-single-2", "lpop-tags-category-A")

PS C:\&gt; Start-RMVSphereVMBasedMigration -svmn QE-RHEL80 -sat "05/15/2023 20:30" -tvmn "Demo-Target-VM" -sdl "Hard disk 1", "Hard disk 2" -tvmvcpuc 4 -cps 2 -dcn "Toronto Datacenter" -nicc $nic0 -pmaca $true -vmt $VMTag1, $VMTag2 -cln "HP Cluster" -fn RiverMeadow/Najeeb -dsn hp1-lun3-raid1-1TB -spn @{"Hard disk 1" = "Management Storage Policy - Large"; "Hard disk 2" = "Datastore Default"} -ut $true -hv 15
Starting target inventory...
Waiting for target inventory to complete...
Starting source preflight...
Waiting for source preflight to complete...
Starting migration preflight...
Waiting for migration preflight to complete...
Migration scheduled successfully

MigrationId :
RMPreflightCheck : {Conflicting Migration Attempts, source_guest_customization_check, source_disks_present_check,
                   source_nics_present_check...}
ReturnCode : 0
RMError :
RMWarning :
OutputData :
      </dev:code>
      </command:example>
      <command:example>
      <maml:title>----------Example 3: Full migration started with multiple network interfaces and using disk provisioning type----------</maml:title>
      <dev:code>PS C:\&gt; $nic0 = @{DestinationNetworkName = "HP Cluster dvSwitch/VM Traffic - 3 x 1Gbit"; IPType = "dhcp"}
PS C:\&gt; $nic1 = @{DestinationNetworkName = "VM Network"; IPType = "static"; IPAddress = "10.10.8.12"; Netmask = "255.255.0.0"; DefaultGateway = "10.10.0.254"; PrimaryDNS = "4.4.4.4"; SecondaryDNS = "8.8.8.8"}

PS C:\&gt; Start-RMVSphereVMBasedMigration -svmn QE-RHEL80 -tvmn "Demo-Target-VM" -sdl "Hard disk 1", "Hard disk 2" -tvmvcpuc 4 -cps 2 -dcn "Toronto Datacenter" -nicc $nic0, $nic1 -pmaca $true -cln "HP Cluster" -fn RiverMeadow/Najeeb -dsn hp1-lun3-raid1-1TB -dpt "thin" -ut $true -hv 15
Starting target inventory...
Waiting for target inventory to complete...
Starting source preflight...
Waiting for source preflight to complete...
Starting migration preflight...
Waiting for migration preflight to complete...
Migration started successfully, migration ID : 3fc1517e-bd54-4dbd-a9f0-9a0f1cba27f0

MigrationId : 3fc1517e-bd54-4dbd-a9f0-9a0f1cba27f0
RMPreflightCheck : {Conflicting Migration Attempts, source_guest_customization_check, source_disks_present_check,
                   source_nics_present_check...}
ReturnCode : 0
RMError :
RMWarning :
OutputData :
      </dev:code>
      </command:example>

      <command:example>
      <maml:title>----------Example 4: Full migration started successfully with migration instructions----------</maml:title>
      <dev:code>PS C:\&gt; $nic0 = @{DestinationNetworkName = "HP Cluster dvSwitch/VM Traffic - 3 x 1Gbit"; IPType = "dhcp"}

PS C:\&gt; Start-RMVSphereVMBasedMigration -SourceVMName QE-RHEL80 -TargetVMName "Demo-Target-VM" -SelectedDiskLabel "Hard disk 1", "Hard disk 2" -TargetVMVCPUCount 4 -CoresPerSocket 2 -DatacenterName "Toronto Datacenter" -DestinationNICConfig $nic0 -PreserveMACAddress $true -ClusterName "HP Cluster" -FolderName RiverMeadow/Najeeb -DatastoreName hp1-lun3-raid1-1TB -StoragePolicyNamePerDiskLabel @{"Hard disk 1" = "Management Storage Policy - Large"; "Hard disk 2" = "Datastore Default"} -UpgradeTools $true -HardwareVersion 15 -MigrationInstructions "vddk_compression=SKIPZ", "vmtools_instalation_retries=5"
Starting target inventory...
Waiting for target inventory to complete...
Starting source preflight...
Waiting for source preflight to complete...
Starting migration preflight...
Waiting for migration preflight to complete...
Migration started successfully, migration ID : f2a0b8f9-5e50-41bb-bf3c-d772f42486cd

MigrationId : f2a0b8f9-5e50-41bb-bf3c-d772f42486cd
RMPreflightCheck : {Conflicting Migration Attempts, source_guest_customization_check, source_disks_present_check,
                   source_nics_present_check...}
ReturnCode : 0
RMError :
RMWarning :
OutputData :
      </dev:code>
      </command:example>

      <command:example>
      <maml:title>----------Example 5: Failed to start migration because of preflight error----------</maml:title>
      <dev:code>PS C:\&gt; $nic0 = @{DestinationNetworkName = "HP Cluster dvSwitch/VM Traffic - 3 x 1Gbit"; IPType = "dhcp"}

PS C:\&gt; Start-RMVSphereVMBasedMigration -SourceVMName QE-RHEL80 -TargetVMName "Demo-Target-VM" -SelectedDiskLabel "Hard disk 1", "Hard disk 2" -TargetVMVCPUCount 4 -CoresPerSocket 2 -DatacenterName "Toronto Datacenter" -DestinationNICConfig $nic0 -ClusterName "HP Cluster" -FolderName RiverMeadow/Najeeb -DatastoreName hp1-lun3-raid1-1TB -DiskProvisioningType "thin" -UpgradeTools $true -HardwareVersion 15
Starting target inventory...
Waiting for target inventory to complete...
Starting source preflight...
Waiting for source preflight to complete...

Preflight Check Warning(s)
--------------- ----------
Conflicting Migration Attempts A previous migration attempt was detected on the Source machine. A new migration will
                               be started.

Starting migration preflight...
Waiting for migration preflight to complete...

Preflight Check Error(s)
--------------- --------
Migration readiness validation A VM named 'Demo-Target-VM' already exists in the selected destination folder.


MigrationId :
RMPreflightCheck : {Conflicting Migration Attempts, source_guest_customization_check, source_disks_present_check,
                   source_nics_present_check...}
ReturnCode : 1
RMError : {RMError}
RMWarning : {RMWarning}
OutputData :
      </dev:code>
      </command:example>
      <command:example>
      <maml:title>----------Example 6: Full migration started with preflight errors ignored----------</maml:title>
      <dev:code>PS C:\&gt; $nic0 = @{DestinationNetworkName = "HP Cluster dvSwitch/VM Traffic - 3 x 1Gbit"; IPType = "dhcp"}

PS C:\&gt; Start-RMVSphereVMBasedMigration -SourceVMName QE-RHEL80 -TargetVMName "Demo-Target-VM" -SelectedDiskLabel "Hard disk 1", "Hard disk 2" -TargetVMVCPUCount 4 -CoresPerSocket 2 -DatacenterName "Toronto Datacenter" -DestinationNICConfig $nic0 -ClusterName "HP Cluster" -FolderName RiverMeadow/Najeeb -DatastoreName hp1-lun3-raid1-1TB -DiskProvisioningType "thin" -UpgradeTools $true -HardwareVersion 15 -IgnoreValidationErrors $true
Starting target inventory...
Waiting for target inventory to complete...
Starting source preflight...
Waiting for source preflight to complete...

Preflight Check Warning(s)
--------------- ----------
Conflicting Migration Attempts A previous migration attempt was detected on the Source machine. A new migration will be started.

Starting migration preflight...
Waiting for migration preflight to complete...

Preflight Check Error(s)
--------------- --------
Migration readiness validation A VM named 'Demo-Target-VM' already exists in the selected destination folder.

Migration started successfully, migration ID : 0e401d37-0c6e-4aa5-bb3c-dd636fcbb8ba

MigrationId : 0e401d37-0c6e-4aa5-bb3c-dd636fcbb8ba
RMPreflightCheck : {Conflicting Migration Attempts, source_guest_customization_check, source_disks_present_check, source_nics_present_check...}
ReturnCode : 0
RMError : {RMError}
RMWarning : {RMWarning}
OutputData :
      </dev:code>
      </command:example>
    </command:examples>
    <maml:relatedLinks>
      <!--Add links to related content here-->
    </maml:relatedLinks>
  </command:command>
</helpItems>