Table of Contents
- Prerequisites
- VM Specifications
- Provisioning the VM
- Software Installation
- Cluster Configuration
- Download Resources
Prerequisites
- Azure CLI ≥ 2.20 or GCP SDK
- Vagrant & VirtualBox (for local testing)
- Basic Linux shell proficiency
VM Specifications
| Specification | Details |
|---|---|
| Operating System | Ubuntu 20.04 LTS |
| vCPUs | 4 |
| Memory | 16 GB RAM |
| Ingress Firewall | All traffic (demo only) |
The firewall rule allowing all inbound traffic is for demonstration only. Do not use such permissive settings in production environments.

Provisioning the VM
Azure Resource Manager Template
Use the provided ARM template and parameters:Google Cloud Platform (gcloud) Commands
Or spin up a GCP instance:Local VirtualBox Deployment (Vagrant)
For local testing with Vagrant:Software Installation
SSH into your VM and run the installer:Installation Breakdown
| Component | Version | Purpose |
|---|---|---|
| Docker CE | Latest | Container runtime |
| kubeadm, kubelet, kubectl | v1.21.x | Kubernetes cluster tools |
| OpenJDK | 8 | Jenkins runtime |
| Maven | 3.6.x | Java build automation |
| Jenkins LTS | 2.xx.x | Continuous Integration server |
The
install.sh script updates packages, installs Docker CE, sets up Kubernetes tools, initializes a single-node cluster, and deploys Jenkins.