VMware Kubernetes Service (VKS) lab environment — infrastructure-as-documentation for a home lab running vSphere with Tanzu.
| Document | Description | |
|---|---|---|
| Conceptual Design | Purpose, objectives, and high-level architecture | |
| Logical Design | Architecture overview and service topology | |
| Physical Design | VLANs, subnets, and hardware layout | |
| Delivery Guide | Step-by-step deployment instructions | |
| Operations Guide | Standard operating procedures and troubleshooting |
Ansible roles and playbooks automate all 6 deployment phases. Runs from the operator's laptop via SSH ProxyJump through the gateway, with secrets from 1Password.
# Install collections
ansible-galaxy collection install -r ansible/collections/requirements.yml
# Run full deployment (all 6 phases)
ansible-playbook -i ansible/inventory/hosts.yml ansible/playbooks/site.yml
# Run a single phase
ansible-playbook -i ansible/inventory/hosts.yml ansible/playbooks/phase2_esxi.yml
# Dry run
ansible-playbook -i ansible/inventory/hosts.yml ansible/playbooks/phase2_esxi.yml --checkSee ansible/ for roles, custom VCF modules, and inventory configuration.
Start with the Delivery Guide for deployment instructions.
Requires Pandoc with XeLaTeX and the Eisvogel template:
docker run --rm -v "$(pwd):/data" pandoc/extra:latest \
docs/markdown/conceptual-design.md -o docs/pdf/conceptual-design.pdf \
--template eisvogel --pdf-engine=xelatex --toc --toc-depth=3 --number-sections \
--metadata-file=docs/markdown/metadata/design.yamlPDFs are also generated automatically by CI on every push to main and committed back to the repo.