Skip to content

Version 0.1.0-beta.1: Basic Kubernetes Cluster Deployment with kubeadm

Pre-release
Pre-release

Choose a tag to compare

@csning1998 csning1998 released this 16 Aug 17:33
· 18 commits to main since this release
250430a

Summary

This beta release establishes a foundational, end-to-end workflow for deploying a Kubernetes cluster using a combination of Packer, Terraform, and Ansible. Key improvements include migrating the virtualization platform to VMware Workstation, refactoring the entire Ansible configuration into a role-based structure for better scalability, and resolving a critical networking issue where cloned VMs would receive duplicate IP addresses. The base Kubernetes components are now pre-baked into the Packer image, significantly speeding up the VM cloning and provisioning stages.

Changes

Screenshot_20250816_140619

Added

  • Implemented a complete automation script (entry.sh) to provision a basic Kubernetes cluster with kubeadm.
  • Added VM lifecycle management commands (status, start, stop, delete) for easier control.

Changed

  • Platform Migration: Migrated the virtualization platform from VirtualBox to VMware Workstation to improve performance and automation stability.
  • Ansible Refactoring: All Ansible playbooks were refactored into a standardized, role-based structure for better maintainability and scalability.

Fixed

  • Networking: Resolved a critical issue where cloned VMs would receive duplicate NAT IP addresses by implementing a script to reset the machine-id during provisioning.
  • Configuration: Improved SSH configuration management to prevent ~/.ssh/config from being overwritten or deleted during terraform destroy.

Included Pull Requests

  • Refactor ( infra ) : Overhaul and Stabilize the VBox VM Automation Workflow by @csning1998 in #1
  • Refactored: Migrated from Oracle VirtualBox to VMWare Workstation by @csning1998 in #2
  • Experimental: Terraform to Ansible without using Provider by @csning1998 in #3
  • Basic Kubernetes Cluster Deployment with kubeadm by @csning1998 in #4

Full Changelog: https://github.com/csning1998/iac-kubeadm-deployment/commits/v0.1.0-beta.1