Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: updates for VM Migration Assistant v1.0.5 #5113

Merged
merged 9 commits into from
Jan 2, 2025
Original file line number Diff line number Diff line change
Expand Up @@ -77,11 +77,12 @@ The **Details** tab has configurable settings for the provider.
The configurable settings are described in the following table. These were originally defined when you performed the
steps in [Create Source Providers](./create-source-providers.md).

| Setting | Description |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **URL** | Your vSphere / ESXi API endpoint for the SDK. You can specify a Full Qualified Domain Name (FQDN) or an IP address. For example, `https://vcenter.mycompany.com/sdk`. |
| **External web UI link** | Your vSphere / ESXi UI endpoint. You can specify a Full Qualified Domain Name (FQDN) or an IP address. For example, `https://vcenter.mycompany.com/ui`. |
| **VDDK init image** | Provide the registry URL to the VMware Virtual Disk Development Kit (VDDK) image. If providing an image, make sure you specify the registry URL without the HTTP scheme `https://` or `http://`. For example, `docker.io/myorganization/vddk:v8.0.3`. |
| Setting | Description |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **URL** | Your vSphere / ESXi API endpoint for the SDK. You can specify a Full Qualified Domain Name (FQDN) or an IP address. For example, `https://vcenter.mycompany.com/sdk`. |
benradstone marked this conversation as resolved.
Show resolved Hide resolved
| **External web UI link** | Your vSphere / ESXi UI endpoint. You can specify a Full Qualified Domain Name (FQDN) or an IP address. For example, `https://vcenter.mycompany.com/ui`. |
benradstone marked this conversation as resolved.
Show resolved Hide resolved
| **Convert Disk** | When enabled, disk conversion is handled using virt-v2v. For example, if you're migrating from VMware to Kernel Virtual Machine (KVM), virt-v2v can convert Virtual Machine Disk (VMDK) to raw or QEMU copy-on-write version 2 (qcow2) formats that are optimal for the target environment. |
benradstone marked this conversation as resolved.
Show resolved Hide resolved
| **VDDK init image** | Provide the registry URL to the VMware Virtual Disk Development Kit (VDDK) image. If providing an image, make sure you specify the registry URL without the HTTP scheme `https://` or `http://`. For example, `docker.io/myorganization/vddk:v8.0.3`. |

Perform the following steps to change a setting.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,7 @@ Follow this guide to create migration plans using the VM Migration Assistant.
qemu-guest-agent) echo "qemu-guest-agent" ;;
virtio-tools) echo "virtio-win" ;;
open-vm-tools) echo "open-vm-tools" ;;
cloud-init) echo "cloud-init" ;;
*) echo "$generic_name" ;;
esac
;;
Expand All @@ -187,6 +188,7 @@ Follow this guide to create migration plans using the VM Migration Assistant.
qemu-guest-agent) echo "qemu-guest-agent" ;;
virtio-tools) echo "virtio-win" ;;
open-vm-tools) echo "open-vm-tools" ;;
cloud-init) echo "cloud-init" ;;
*) echo "$generic_name" ;;
esac
;;
Expand All @@ -195,6 +197,7 @@ Follow this guide to create migration plans using the VM Migration Assistant.
qemu-guest-agent) echo "qemu-guest-agent" ;;
virtio-tools) echo "virtio-drivers" ;;
open-vm-tools) echo "open-vm-tools" ;;
cloud-init) echo "cloud-init" ;;
*) echo "$generic_name" ;;
esac
;;
Expand All @@ -203,6 +206,7 @@ Follow this guide to create migration plans using the VM Migration Assistant.
qemu-guest-agent) echo "qemu-guest-agent" ;;
virtio-tools) echo "linux-virtio" ;;
open-vm-tools) echo "open-vm-tools" ;;
cloud-init) echo "cloud-init" ;;
*) echo "$generic_name" ;;
esac
;;
Expand Down Expand Up @@ -319,6 +323,34 @@ Follow this guide to create migration plans using the VM Migration Assistant.
fi
}

# Function to handle Cloud-init
handle_cloud_init() {
local package=$(get_package_name "cloud-init")
if is_installed "$package"; then
log "Cloud-init is already installed."
if [ "$DRYRUN" = false ]; then
if systemctl is-active --quiet cloud-init; then
log "Cloud-init service is running."
else
log "Starting Cloud-init service..."
systemctl start cloud-init || log "Failed to start Cloud-init service"
fi
else
log "Dry run: Would check and potentially start Cloud-init service"
fi
else
log "Cloud-init is not installed. Installing..."
if install_package "$package"; then
if [ "$DRYRUN" = false ]; then
log "Starting Cloud-init service..."
systemctl start cloud-init || log "Failed to start Cloud-init service"
else
log "Dry run: Would start Cloud-init service"
fi
fi
fi
}

# Function to check if running in a virtual environment
check_virtual_env() {
if [ -d /proc/vz ]; then
Expand Down Expand Up @@ -400,6 +432,9 @@ Follow this guide to create migration plans using the VM Migration Assistant.
log "Handling VMware Tools daemon (vmtoolsd)..."
handle_vmtoolsd

log "Handling Cloud-init..."
handle_cloud_init

log "All tasks completed."
}

Expand Down Expand Up @@ -508,13 +543,14 @@ Follow this guide to create migration plans using the VM Migration Assistant.

8. Fill in the migration plan details.

| Setting | Description | Example |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
| **Plan name** | A unique name for your migration plan. | `myMigrationPlan` |
| **Target provider** | Select the target provider from the drop-down Menu. By default, this will be your host cluster. | `host` |
| **Target namespace** | Select the target namespace for the VM migration from the drop-down Menu. | `myVmMigrationNamespace` |
| **Network map** | A storage map defines the mapping of source storage domains to target storage classes or datastores, ensuring VM disks are correctly placed in the destination environment. Adjust the mapping, or leave the default mapping in place. | `VM Network` / `Pod Networking` |
| **Storage map** | A network map defines the mapping of source networks to target networks, ensuring VM network interfaces are correctly connected in the destination environment. Adjust the mapping, or leave the default mapping in place. | `vsanDatastore` / `spectro-storage-class` |
| Setting | Description | Example |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
| **Plan name** | A unique name for your migration plan. | `myMigrationPlan` |
| **Target provider** | Select the target provider from the drop-down Menu. By default, this will be your host cluster. | `host` |
benradstone marked this conversation as resolved.
Show resolved Hide resolved
| **Target namespace** | Select the target namespace for the VM migration from the drop-down Menu. | `myVmMigrationNamespace` |
benradstone marked this conversation as resolved.
Show resolved Hide resolved
| **Network map** | A storage map defines the mapping of source storage domains to target storage classes or datastores, ensuring VM disks are correctly placed in the destination environment. Adjust the mapping, or leave the default mapping in place. | `VM Network` / `Pod Networking` |
benradstone marked this conversation as resolved.
Show resolved Hide resolved
| **Storage map** | A network map defines the mapping of source networks to target networks, ensuring VM network interfaces are correctly connected in the destination environment. Adjust the mapping, or leave the default mapping in place. | `vsanDatastore` / `spectro-storage-class` |
benradstone marked this conversation as resolved.
Show resolved Hide resolved
| **Preserve static IPs** | Choose whether to preserve the static IPs of the VMs migrated from vSphere. | :white_check_mark: |

9. Click **Create migration plan**. The **Details** tab for the plan is then displayed.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,7 @@ Machines (VMs) that need to be migrated.
| **Password** | Your vSphere / ESXi account password. |
| **Skip certificate validation** | Enabling this option bypasses x509 CA verification. In production environments, do not enable if you are using a custom registry with self-signed SSL certificates, as the certificate can be provided in the next setting. |
| **CA certificate** | Upload or drag and drop the CA certificate for your vSphere / ESXi. You can also use the **Fetch certificate from URL** option if your CA certificate is not third party or self-managed. |
| **Convert Disk** | When enabled, disk conversion is handled using virt-v2v. For example, if you're migrating from VMware to Kernel Virtual Machine (KVM), virt-v2v can convert Virtual Machine Disk (VMDK) to raw or QEMU copy-on-write version 2 (qcow2) formats that are optimal for the target environment. |
benradstone marked this conversation as resolved.
Show resolved Hide resolved

7. Click **Create Provider**. The provider details are then shown.

Expand Down
Loading