Version 5.0

REST Resource: projects.locations.sources.migratingVms

Resource: MigratingVm

MigratingVm describes the VM that will be migrated from a Source environment and its replication state.

JSON representation
{
  "name": string,
  "sourceVmId": string,
  "displayName": string,
  "description": string,
  "targetDefaults": {
    object (TargetVMDetails)
  },
  "policy": {
    object (SchedulePolicy)
  },
  "createTime": string,
  "updateTime": string,
  "lastSync": {
    object (ReplicationSync)
  },
  "state": enum (State),
  "stateTime": string,
  "currentSyncInfo": {
    object (ReplicationCycle)
  },
  "group": string,
  "labels": {
    string: string,
    ...
  },
  "recentCloneJobs": [
    {
      object (CloneJob)
    }
  ],
  "error": {
    object (Status)
  },
  "recentCutoverJobs": [
    {
      object (CutoverJob)
    }
  ],
  "computeEngineVmDefaults": {
    object (TargetVMDetails)
  },
  "computeEngineTargetDefaults": {
    object (ComputeEngineTargetDefaults)
  }
}
Fields
name

string

Output only. The identifier of the MigratingVm.

sourceVmId

string

The unique ID of the VM in the source. The VM's name in vSphere can be changed, so this is not the VM's name but rather its moRef id. This id is of the form vm-.

displayName

string

The display name attached to the MigratingVm by the user.

description

string

The description attached to the migrating VM by the user.

targetDefaults
(deprecated)

object (TargetVMDetails)

The default configuration of the target VM that will be created in GCP as a result of the migration. Deprecated: Use computeEngineTargetDefaults instead.

policy

object (SchedulePolicy)

The replication schedule policy.

createTime

string (Timestamp format)

Output only. The time the migrating VM was created (this refers to this resource and not to the time it was installed in the source).

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Output only. The last time the migrating VM resource was updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

lastSync

object (ReplicationSync)

Output only. The most updated snapshot created time in the source that finished replication.

state

enum (State)

Output only. State of the MigratingVm.

stateTime

string (Timestamp format)

Output only. The last time the migrating VM state was updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

currentSyncInfo

object (ReplicationCycle)

Output only. The percentage progress of the current running replication cycle.

group

string

Output only. The group this migrating vm is included in, if any. The group is represented by the full path of the appropriate Group resource.

labels

map (key: string, value: string)

The labels of the migrating VM.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

recentCloneJobs[]

object (CloneJob)

Output only. The recent clone jobs performed on the migrating VM. This field holds the vm's last completed clone job and the vm's running clone job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.

error

object (Status)

Output only. Provides details on the state of the Migrating VM in case of an error in replication.

recentCutoverJobs[]

object (CutoverJob)

Output only. The recent cutover jobs performed on the migrating VM. This field holds the vm's last completed cutover job and the vm's running cutover job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.

computeEngineVmDefaults
(deprecated)

object (TargetVMDetails)

Details of the VM in Compute Engine. Deprecated: Use computeEngineTargetDefaults instead.

computeEngineTargetDefaults

object (ComputeEngineTargetDefaults)

Details of the target VM in Compute Engine.

ComputeEngineTargetDefaults

ComputeEngineTargetDefaults is a collection of details for creating a VM in a target Compute Engine project.

JSON representation
{
  "vmName": string,
  "targetProject": string,
  "zone": string,
  "machineTypeSeries": string,
  "machineType": string,
  "networkTags": [
    string
  ],
  "networkInterfaces": [
    {
      object (NetworkInterface)
    }
  ],
  "serviceAccount": string,
  "diskType": enum (ComputeEngineDiskType),
  "labels": {
    string: string,
    ...
  },
  "licenseType": enum (ComputeEngineLicenseType),
  "appliedLicense": {
    object (AppliedLicense)
  },
  "computeScheduling": {
    object (ComputeScheduling)
  },
  "secureBoot": boolean,
  "bootOption": enum (ComputeEngineBootOption),
  "metadata": {
    string: string,
    ...
  }
}
Fields
vmName

string

The name of the VM to create.

targetProject

string

The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.

zone

string

The zone in which to create the VM.

machineTypeSeries

string

The machine type series to create the VM with.

machineType

string

The machine type to create the VM with.

networkTags[]

string

A map of network tags to associate with the VM.

networkInterfaces[]

object (NetworkInterface)

List of NICs connected to this VM.

serviceAccount

string

The service account to associate the VM with.

diskType

enum (ComputeEngineDiskType)

The disk type to use in the VM.

labels

map (key: string, value: string)

A map of labels to associate with the VM.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

licenseType

enum (ComputeEngineLicenseType)

The license type to use in OS adaptation.

appliedLicense

object (AppliedLicense)

Output only. The OS license returned from the adaptation module report.

computeScheduling

object (ComputeScheduling)

Compute instance scheduling information (if empty default is used).

secureBoot

boolean

Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.

bootOption

enum (ComputeEngineBootOption)

Output only. The VM Boot Option, as set in the source vm.

metadata

map (key: string, value: string)

The metadata key/value pairs to assign to the VM.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

SchedulePolicy

A policy for scheduling replications.

JSON representation
{
  "idleDuration": string,
  "skipOsAdaptation": boolean
}
Fields
idleDuration

string (Duration format)

The idle duration between replication stages.

A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

skipOsAdaptation

boolean

A flag to indicate whether to skip OS adaptation during the replication sync. OS adaptation is a process where the VM's operating system undergoes changes and adaptations to fully function on Compute Engine.

ReplicationSync

ReplicationSync contain information about the last replica sync to the cloud.

JSON representation
{
  "lastSyncTime": string
}
Fields
lastSyncTime

string (Timestamp format)

The most updated snapshot created time in the source that finished replication.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

State

The possible values of the state/health of source VM.

Enums
STATE_UNSPECIFIED The state was not sampled by the health checks yet.
PENDING The VM in the source is being verified.
READY The source VM was verified, and it's ready to start replication.
FIRST_SYNC Migration is going through the first sync cycle.
ACTIVE The replication is active, and it's running or scheduled to run.
CUTTING_OVER The source VM is being turned off, and a final replication is currently running.
CUTOVER The source VM was stopped and replicated. The replication is currently paused.
FINAL_SYNC A cutover job is active and replication cycle is running the final sync.
PAUSED The replication was paused by the user and no cycles are scheduled to run.
FINALIZING The migrating VM is being finalized and migration resources are being removed.
FINALIZED The replication process is done. The migrating VM is finalized and no longer consumes billable resources.
ERROR The replication process encountered an unrecoverable error and was aborted.

ReplicationCycle

ReplicationCycle contains information about the current replication cycle status.

JSON representation
{
  "startTime": string,
  "progress": integer,
  "progressPercent": integer
}
Fields
startTime

string (Timestamp format)

The time the replication cycle has started.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

progress
(deprecated)

integer

The current progress in percentage of this cycle.

progressPercent

integer

The current progress in percentage of this cycle.

Methods

create

Creates a new MigratingVm in a given Source.

delete

Deletes a single MigratingVm.

finalizeMigration

Marks a migration as completed, deleting migration resources that are no longer being used.

get

Gets details of a single MigratingVm.

list

Lists MigratingVms in a given Source.

patch

Updates the parameters of a single MigratingVm.

pauseMigration

Pauses a migration for a VM.

resumeMigration

Resumes a migration for a VM.

startMigration

Starts migration for a VM.