Skip to main content

A cli to install simple and complex kubernetese cluster

Project description

🚀 Kubernetes Cluster Setup with Proxmox Integration (Python)

Welcome to k8s-proxmox-cluster, a streamlined solution for setting up Kubernetes clusters – whether simple or complex – with ease. This package automates the deployment process, starting from cloning virtual machines on a Proxmox server to bootstrapping a fully functional Kubernetes cluster. It's your go-to tool for quickly spinning up clusters for testing, development, or production environments. Whether you're a DevOps enthusiast or a systems engineer, this package handles the heavy lifting, so you can focus on what matters most: building and scaling your infrastructure.

✨ What does this package do?


With this package, you can automate the entire process of setting up Kubernetes clusters. It leverages Proxmox Virtual Environment as the virtualization platform and requires an Ubuntu 24.04 template to clone virtual machines.

Here’s what happens step by step:

  • Clone Virtual Machines from your Proxmox server.
  • Automatically install and configure all necessary components.
  • Bootstrap your cluster – ready to go, whether it's a simple or complex setup.

🎯 Prerequisites


Before using this package, ensure you have the following:

  • A Proxmox server with a configured Ubuntu 24.04 VM template (If you do not have one, check out my ProxmoxTemplates pkg, here you can creat one easily).
  • A JSON configuration file containing Proxmox connection details (e.g., hostname, API token).
  • A cluster setup configuration file:
  • For simple setups: basic VM settings like name, CPU, and memory.
  • For complex setups: additional details to tailor your Kubernetes environment.

🛠️ Simple vs. Complex Cluster Setups


With KubeCluster-Proxmox, you can choose between a simple or complex Kubernetes cluster setup depending on your needs.

Simple Cluster: A straightforward configuration with one master node and multiple worker nodes.

  • Example configuration: vm-simple-conf-example.json Complex Cluster: A high-availability (HA) setup featuring multiple master nodes and two load balancers configured with HAProxy and Keepalived to ensure redundancy and failover.
  • Example configuration: vm-complex-conf-example.json In both cases, a Proxmox connection configuration file (proxmox-conf-example.json) is required to interact with your
  • Proxmox environment. Simply fill out the provided example with your values.

📦 Installation


Install the package with pip:

pip install k8s-proxmox-cluster

🚀 Usage


for a simple setup:

simple-cluster-setup --proxmox-config <PATH_TO_YOUR_CONF_FILE> --vm-config <PATH_TO_YOUR_CONF_FILE>

for a complex setup:

complex-cluster-setup --proxmox-config <PATH_TO_YOUR_CONF_FILE> --vm-config <PATH_TO_YOUR_CONF_FILE>

🧹 Cleanup


If you need to delete the entire cluster, including all virtual machines, use the following command with the same configuration files:

cluster-cleanup --proxmox-config <PATH_TO_YOUR_CONF_FILE> --vm-config <PATH_TO_YOUR_CONF_FILE>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

k8s_proxmox_cluster-0.1.70.tar.gz (158.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

k8s_proxmox_cluster-0.1.70-py3-none-any.whl (175.3 kB view details)

Uploaded Python 3

File details

Details for the file k8s_proxmox_cluster-0.1.70.tar.gz.

File metadata

  • Download URL: k8s_proxmox_cluster-0.1.70.tar.gz
  • Upload date:
  • Size: 158.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for k8s_proxmox_cluster-0.1.70.tar.gz
Algorithm Hash digest
SHA256 8a24c3dfb04788603926558f0b3b4778ad5757baea54d8a9f3677cb853242c44
MD5 e0b776622adfa2d951f162cc3c512667
BLAKE2b-256 ce881adcfc47a2d3fc502640586dc8af9234457845e5c60481b1a9626bb98e5a

See more details on using hashes here.

File details

Details for the file k8s_proxmox_cluster-0.1.70-py3-none-any.whl.

File metadata

File hashes

Hashes for k8s_proxmox_cluster-0.1.70-py3-none-any.whl
Algorithm Hash digest
SHA256 ba93dd560381e97f5c96a51126a98c4b2fee3f69eea373496be0e73c65c636ff
MD5 fbf33ebe33971a06f10be93416ae4074
BLAKE2b-256 8beef9588f600a8066346db33f680312c58d329a591aec3985fa4336e9b02543

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page