Restructure the cdsmcp folder to separate operator guidance, reusable templates, and runtime artifacts into clearer top-level areas. Move the VMware migration guide and run learnings into docs/, move vmw.yaml into templates/, move the existing log into artifacts/logs/, replace the old index file with a README, and split the former monolithic guide into focused documents for VMware MigrateOps workflow, VM lookup and FC/disk assignment, and CMC install reference. Update internal references so the reorganized layout remains coherent without changing the underlying operational guidance.
110 lines
5.8 KiB
YAML
110 lines
5.8 KiB
YAML
#
|
|
# VMware Compute MigrateOps template
|
|
# Rules:
|
|
# 1) Replace all client references consistently:
|
|
# - config.system_name
|
|
# - migrateops_vmware_compute.compute.vm_name
|
|
# - operations[].name
|
|
# - cleanup targeting must use the source VM from the current user request only
|
|
# 1a) Default CMC migration sequence for any specified machine:
|
|
# - clean up CDC project state for that machine (remove stale/offline registration context)
|
|
# - reinstall CMC Linux on that machine
|
|
# - then perform migration setup/create
|
|
# 2) Verify integration_name is valid in the target CDC project before creating operation.
|
|
# 3) Default access node is "atvm-linux-h2h":
|
|
# - VM must be powered on in vCenter
|
|
# - CMC must be installed/connected in the same CDC project
|
|
# 4) Source NIC must be discovered from the source client (do not assume ens192).
|
|
# 5) Preflight checks before create:
|
|
# - confirm source VM power state in vCenter first; power on before IP discovery/SSH steps
|
|
# - destination vm_name must not already exist
|
|
# - datastore/host/network names must resolve in vCenter
|
|
# - source client + access node must both be connected in same CDC project
|
|
# - use only standard vCenter credentials/session for vCenter actions
|
|
# (do not use 192.168.3.190 for vCenter actions; reserved for Cypress ATVM automation)
|
|
# - IP handling policy:
|
|
# * 192.168.0.201 is vCenter only
|
|
# * 192.168.3.190 is ATVM automation only
|
|
# * 192.168.3.191 is default ATVM target reference
|
|
# * any other VM IP must be read live from vCenter for the current run only
|
|
# and must not be retained/reused as a future default
|
|
# 6) Post-submit approval behavior (default):
|
|
# - start monitoring as soon as operation create succeeds
|
|
# - auto-approve cutover immediately when final-synchronization requests approval
|
|
# - only use manual approval if explicitly requested by user
|
|
# - patience rule while monitoring:
|
|
# * if heartbeat/progress is advancing, keep waiting and do not intervene
|
|
# * allow longer wait windows for helper VM deploy/registration-related steps
|
|
# * intervene only on terminal failure, confirmed blocker, or prolonged no-progress
|
|
# 7) Post-migration validation and cleanup behavior (default):
|
|
# - verify SSH login to the newly migrated VM first (using vCenter guest IP)
|
|
# - if vCenter guest IP is initially empty, keep polling until available; do not skip login validation
|
|
# - never report run completion before destination login validation is recorded
|
|
# - only target the newly migrated VM for cleanup, never the source VM
|
|
# - resolve and compare source/destination VM IDs; abort cleanup if IDs match
|
|
# - prompt user for confirmation before power-off + delete of migrated VM
|
|
# - prompt user even if they did not explicitly ask for deletion in same request
|
|
# - never delete destination VM without explicit user confirmation in that run
|
|
# - archive the completed MigrateOps operation after migration reaches terminal state
|
|
# - mandatory: run global offline-host cleanup at end of successful runbook
|
|
# even if source host is offline (remove all offline CMC host records)
|
|
# - if source/helper entries are still connected in CDC, disconnect first
|
|
# (for example uninstall CMC on source/helper or power off/delete helper VM),
|
|
# then rerun offline-host cleanup until source/helper entries are removed
|
|
# - if CDC still shows source/helper as connected but last_checkin is stale after
|
|
# source/helper are already powered off/deleted, wait for heartbeat timeout and
|
|
# rerun offline-host cleanup in a loop until those entries are removed
|
|
# - verify source host + helper host stale/offline duplicates from this run are removed
|
|
# - verify helper CMC host entries from the run are removed
|
|
# (e.g. migrateops-<operation-id>-<source-system-name>)
|
|
# - if helper entry remains, ensure helper VM is absent/powered off and rerun offline cleanup
|
|
# - mandatory: remove the source VM from the current request from CDC host list during cleanup
|
|
# (do not reuse source VM names from prior runs)
|
|
# - mandatory post-run reporting: always include a read-only status listing for
|
|
# source VM, destination VM, access node, and helper VM across both CDC and vCenter
|
|
# with explicit present/cleaned-up state
|
|
# - do not report run completion until cleanup verification is done and destination VM
|
|
# deletion is either completed or explicitly skipped by user decision
|
|
# - default autonomous behavior for every run:
|
|
# * always perform login validation + archive + offline-host cleanup automatically
|
|
# * always prompt user before deleting destination VM and record explicit keep/delete decision
|
|
#
|
|
operations:
|
|
- recipe: "MIGRATEOPS_VMWARE_COMPUTE"
|
|
config:
|
|
migrateops_vmware_compute:
|
|
access_node:
|
|
system_name: "atvm-linux-h2h"
|
|
compute:
|
|
datastore: "AutomatedTest-VMBootImgComputeMigration-Gold"
|
|
host: "192.168.1.165"
|
|
datacenter: "CDSHQ-Eng"
|
|
vm_name: "atvm-codextest-vm-migrated"
|
|
migration:
|
|
qos_level: "RELENTLESS"
|
|
auto_resync_interval: "600s"
|
|
cmchelper:
|
|
network: "VM Network"
|
|
ip_config:
|
|
use_static_ip: true
|
|
address: "192.168.3.195/22"
|
|
dns_servers:
|
|
- "8.8.8.8"
|
|
gateway: "192.168.0.1"
|
|
content_library: "vc-cmchelper"
|
|
template_name: "vc-cmchelper-vm"
|
|
install_via_access_node: true
|
|
network:
|
|
adapters:
|
|
- network: "VM Network"
|
|
# Must be discovered from source host via SSH before create.
|
|
source_nic: "REPLACE_WITH_SOURCE_NIC"
|
|
transfer_ip: true
|
|
transfer_mac: false
|
|
adapter_type: "VMXNET3"
|
|
keep_source_powered_on: false
|
|
system_name: "atvm-codextest-vm"
|
|
integration_name: "vCenter201"
|
|
name: "atvm-codextest-vm"
|
|
notes: ""
|