- update the Windows CMC install reference to require CDC project cleanup before reinstall when stale host state may exist - update the VMware MigrateOps guide so the cleanup-first CMC preparation rule applies to both Linux and Windows sources - document that Windows reinstall must be followed by a fresh CDC reconnect check before creating migration sessions - update CDS MCP AGENTS guidance so Windows sources do not skip the standard CDC cleanup plus reinstall sequence
6.2 KiB
6.2 KiB
VMware Compute MigrateOps Guide
This file is for workflow guidance only. Do not add specific run examples here.
Update Rule
- After every run, update this file only when a workflow rule/checklist/default behavior changed.
- Add run-specific examples and evidence to
run-learnings.mdonly when that run produced a new learning.
vCenter Access
- Address:
192.168.0.201 - Source
/home/aw/code/cds/.env.credentials.localand useVCENTER_USERplusVCENTER_PASSWORD - Standard CLI path:
/home/aw/.local/bin/govc - Use only this standard vCenter login for vCenter actions unless explicitly instructed otherwise.
- Do not use
192.168.3.190for vCenter actions; that machine is reserved for Cypress ATVM automation.
IP And Power-State Policy (Mandatory)
- Before finding guest IP or attempting SSH, confirm VM power state in vCenter and power on if needed.
- Treat only these as stable references:
192.168.0.201for vCenter login only192.168.3.190for ATVM Cypress automation only192.168.3.191as default ATVM target reference- Any other VM IP must be obtained live from vCenter for that run only.
- Do not carry forward ad-hoc VM IPs from previous runs in runbooks.
- When the operator refers to
192.168.3.191, assume ATVM target SSH access should ignore host key mismatch by default with-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null. - When the operator refers to
192.168.3.191for Linux SSH access, source/home/aw/code/cds/.env.credentials.localand useATVM_TARGET_USERplusATVM_TARGET_PASSWORDunless the operator explicitly overrides them. - When the operator refers to
192.168.3.191for Windows guest access, source/home/aw/code/cds/.env.credentials.localand useATVM_WINDOWS_TARGET_USERplusATVM_WINDOWS_TARGET_PASSWORDunless the operator explicitly overrides them. - For Windows guest command execution, prefer SSH + PowerShell on the guest instead of VMware guest operations unless the operator explicitly requests otherwise.
Related References
- VM lookup, datastore reporting, and FC/disk assignment:
vm-lookup-and-assignment.md
- CMC install, uninstall, and reinstall fallback:
cmc-install-reference.md
VMware Compute MigrateOps Defaults
- Use
/home/aw/code/cds/cdsmcp/templates/vmw.yamlas the starting template. - Default sequence for requested source machine:
- clean CDC state for that machine
- reinstall CMC on that machine
- perform migration preflight and operation create
- If user provides a client name, replace consistently:
config.system_namemigrateops_vmware_compute.compute.vm_name- operation
name - Validate
integration_nameis active in target project before create. - Default access node:
atvm-linux-h2h(must be powered on in vCenter and connected in CDC). - Always discover
source_nicfrom live source host networking.
Approval and Monitoring Defaults
- Auto-approve cutover by default.
- Start monitoring immediately after operation create.
- Approve as soon as
final-synchronizationrequests input. - Skip auto-approval only if user explicitly asks for manual approval.
- Patience rule:
- if heartbeat/progress is advancing, keep waiting
- allow longer waits for helper deployment/registration steps
- intervene only for terminal failure, confirmed blocker, or prolonged no-progress
Preflight Checklist
- Source host connected in CDC.
- Integration exists and is active in same project.
atvm-linux-h2hpowered on in vCenter.atvm-linux-h2hconnected in same CDC project.- Destination VM name does not already exist in vCenter.
- Destination datastore/host/network resolve in vCenter.
source_nicdiscovered via SSH from source host.
CMC Preparation Rule
- For Linux sources, use the Linux SSH credential path and the Linux install/uninstall reference.
- For Windows sources, use SSH to the guest with
ATVM_WINDOWS_TARGET_USERandATVM_WINDOWS_TARGET_PASSWORD. - For both Linux and Windows, clean stale CDC project state for that machine before reinstalling CMC unless the operator explicitly wants to reuse the existing registration.
- For Windows sources, check whether CMC is already installed before install.
- If Windows CMC is already present, uninstall first and then reinstall using the Windows PowerShell installer command.
- After reinstall on Windows, confirm the host reconnects in the CDC project as expected before creating local or remote migration sessions.
- Do not treat VMware guest operations as the default Windows execution path.
Post-Migration Validation and Cleanup Pattern
- Validate destination login before cleanup:
- get destination guest IP from vCenter
- verify SSH/login works
- if guest IP empty, keep polling and do not skip validation
- do not mark run complete before validation result is recorded
- Before deleting destination VM:
- always prompt user for explicit confirmation
- never delete destination VM without that confirmation in the same run
- For delete path:
- resolve source VM ID and destination VM ID separately
- abort if IDs match
- power off destination if needed
- delete destination by explicit VM ID
- verify destination removed and source still exists
- Always run project cleanup after terminal migration state:
- archive completed operation
- run global offline-host cleanup
- cleanup must target source VM named in current request only
- if source/helper entries still connected, force-disconnect conditions and rerun cleanup
- if stale connected state persists after VM removal/power-off, wait heartbeat timeout and rerun cleanup until removed
- verify helper entry from this run (
migrateops-<opid>-<source-system-name>) is removed - Completion gate:
- do not report run complete until archive + cleanup verification are done
- always provide read-only final listing for source, destination, access node, helper:
- CDC status (
presentorcleaned up) - vCenter status (
presentorcleaned up, and if present include power state + IP)
Default Behavior Contract
- Perform automatically on every VMware compute run:
- destination login validation
- operation archive
- offline-host cleanup and source/helper stale verification
- Still require explicit user confirmation before destination delete:
- always prompt
- if no confirmation, keep destination and record
deletion skipped by user