Files

1.9 KiB
Raw Permalink Blame History

Language / Язык: English | Русский

Seed profiles

Seeds replace the vSphere inventory atomically using deterministic MOIDs so labs are reproducible. Definitions live in app/vsphere/profiles.py.

make seed                          # default: large (10 hosts / 1000 VMs)
VSPHERE_PROFILE=small make seed
VSPHERE_PROFILE=big make seed

Profiles

Profile Hosts VMs Datastores Networks Folders† Content extras
minimal 3 5 1 1 8 ×1
small 3 50 2 2 8 ×1
large (default) 10 1000 4 4 10 ×2
big 20 2000 8 8 14 ×4

† Spine folders (8) plus scaled team folders for larger tiers.

demo-cluster remains an alias of big. Reset / unload loads minimal.

Examples

make seed                                   # large, 10 hosts / 1000 VMs
VSPHERE_PROFILE=small make seed
VSPHERE_PROFILE=big make seed
VSPHERE_PROFILE=large VSPHERE_HOSTS=20 VSPHERE_VMS=5000 make seed

# 100% seed ↔ live inventory dump
VSPHERE_PROFILE=big make vsphere-seed-dump

Or run the seed CLI directly with the underlying environment variables (for example from a non-make script or CI step):

SEED_VSPHERE_PROFILE=small \
  docker compose run --rm --entrypoint python simulator -m app.simulation.seed_cli

Topology shape

Every profile builds the same spine (DatacentersDatacenter → host/vm/ datastore/network folders → one ClusterComputeResource + ResourcePool), then scales hosts, datastores, port groups, and VMs. VM MOIDs are vm-{100+n}; host MOIDs are host-{10+n}.

Web UI

The DATA panel exposes three load buttons matching these tiers. Each call is POST /ui/api/vsphere/seed?profile=small|large|big (atomic reseed).

Legacy endpoints:

  • POST /ui/api/demo/loadbig
  • POST /ui/api/demo/unloadsmall