6.5 KiB
6.5 KiB
ESX / vCenter 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
esxvm-runs.mdonly when that run produced a new learning.
vCenter Access
- Address:
192.168.0.201 - Username:
administrator@qalab.cdsi.local - Password:
CDSi101! - 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.
Cluster Scope Rule
- Only work under cluster
QACL-ATVMCypressONLYunless explicitly told otherwise.
Ignore VMs
vCLS-bf0ec6f6-c7e2-4383-b11e-9c97cec7ed44vCLS-e5b3c60e-6a1c-46a6-8357-191fc0ab8e14
IP Lookup Rule
- If asked about an IP address, only check powered-on VMs.
VM Lookup Response Rule
- Unless user explicitly asks otherwise, return VM lookup/list results only from cluster
QACL-ATVMCypressONLY. - For vCenter VM lookup requests (for example name/contains filters), always report:
- VM name
- datastore name
- VM notes/annotation
- include power state and IP when available
Common VM Credentials
- Username:
root - Password:
cdsi2012
CMC Install/Uninstall Commands
Default Project Rule
- Default project:
Skidamarink - Default registration code:
BZHKABCODZLIOK6RTAJ4 - Default endpoint:
portal.gcstage.cloud.nonprod.cirrusdata.com:443 - Use a different project code only when user explicitly requests it in that run.
Skidamarink Install (Linux)
curl https://get.cirrusdata.cloud/install-cmc | bash -s -- -rgc BZHKABCODZLIOK6RTAJ4 -gce portal.gcstage.cloud.nonprod.cirrusdata.com:443 -pkg-mode PRE_RELEASE
Skidamarink Install (Windows)
iex "& { $(irm https://get.cirrusdata.cloud/install-cmc-win) } -rgc BZHKABCODZLIOK6RTAJ4 -gce portal.gcstage.cloud.nonprod.cirrusdata.com:443 -pkg-mode PRE_RELEASE"
Uninstall (Linux)
curl https://get.cirrusdata.cloud/install-cmc | bash -s -- -uninstall
Uninstall (Windows)
iex "& { $(irm https://get.cirrusdata.cloud/install-cmc-win) } -uninstall"
CMC Reinstall Fallback (RHEL 10)
- If installer-based reinstall fails due repo metadata/download errors, use cached local
mtdi-daemonandgalaxy-migrateRPMs, start services, enforcegalaxy_complete_endpoint, then manually register. - Do not continue migrateops create until source host is visible as connected in CDC.
Status Output Format (Power-Off/Revert/Power-On)
VM [vm name] was poweredOn, so I powered it off(oralready poweredOff)Snapshot rollback completedVM [vm name] powered back on successfullyCurrent IP: <ip>
VMware Compute MigrateOps Defaults
- Use
/home/aw/code/cds/cdsmcp/vmw.yamlas the starting template. - Default sequence for requested source machine:
- clean CDC state for that machine
- reinstall CMC Linux 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.
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