This repository offers a comprehensive setup for practicing for the CKA, CKAD, CKS exams using Vagrant. It automates the deployment of a Kubernetes cluster, closely mirroring the Killer.sh environment, and is designed for ease of maintenance and compatibility with various systems. For use with Kubernetes CKS Killer.sh Course
- Automated Kubernetes Cluster Setup: Utilize Kubeadm to automate the creation of a Kubernetes cluster for CKA, CKAD, and CKS exam practice.
- Platform Compatibility: Supports both x86_AMD64 with VirtualBox or Apple Silicon (M-series) with VMware Fusion.
- Customizable Cluster Versions: Easily deploy clusters with the latest or specific previous versions of Kubernetes.
- Resource Management: Includes Vagrant Disksize plugin support for adjusting VM disk sizes as needed.
- Practice-Oriented Configuration: Tailored configurations and security settings for realistic CKA, CKAD, CKS exams practice.
- Vagrant installed and up-to-date.
- Vagrant Disksize plugin for disk size adjustments.
- Apple Silicon
- VMware Fusion
- Vagrant VMware Utility for Apple Silicon support.
- x86_AMD64
- Installation:
- Install Brew
- Run
brew updateto refresh the list of available packages - Install Vagrant Run
brew tap hashicorp/tap && brew install hashicorp/tap/hashicorp-vagrant - Vagrant Disksize plugin. Run
vagrant plugin install vagrant-disksize - Apple Silicon
- Install VMware Fusion (Download manually as the Homebrew cask is no longer available).
- Install Vagrant VMware Utility. Run
brew install vagrant-vmware-utility - Install Vagrant VMware Desktop plugin. Run
vagrant plugin install vagrant-vmware-desktop
- x86_AMD64
- Install VirtualBox. Run
brew install --cask virtualbox
- Install VirtualBox. Run
- Deployment:
- Use the provided script to deploy the Kubernetes cluster, run
./deploy-latest.sh.
- Use the provided script to deploy the Kubernetes cluster, run
- Clean Up:
- To remove all VMs and resources, run
./cleanup.shafter practice sessions.
- To remove all VMs and resources, run
- Deploy Latest Kubernetes Cluster:
./deploy-latest.sh - Deploy Previous Version Kubernetes Cluster:
./deploy-previous.sh - Clean Up Resources:
./cleanup.sh
- x86_AMD64 (VirtualBox)
- Apple Silicon (M-series with VMware Fusion)
This project is licensed under the MIT License. See LICENSE.md for more details.